X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;ds=sidebyside;f=snap.c;h=7c16d2e870b8e4e918a1486ab801bf31f1344c47;hb=a198e29fee618785fc63ca18fc73add379678991;hp=d1caf56ed442a0eed2d1f9d0a80b90262162f717;hpb=b28495993eef26688c998650d0e2bf944082704e;p=dss.git diff --git a/snap.c b/snap.c index d1caf56..7c16d2e 100644 --- a/snap.c +++ b/snap.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2008-2010 Andre Noll + * Copyright (C) 2008-2010 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -14,11 +14,11 @@ #include #include "gcc-compat.h" -#include "error.h" +#include "err.h" #include "snap.h" -#include "string.h" -#include "time.h" -#include "fd.h" +#include "str.h" +#include "tv.h" +#include "file.h" /** * Wrapper for isdigit. @@ -75,7 +75,6 @@ static int is_snapshot(const char *dirname, int64_t now, int unit_interval, if (num > now) return 0; s->creation_time = num; - //DSS_DEBUG_LOG("%s start time: %lli\n", dirname, (long long)s->creation_time); s->interval = (long long) ((now - s->creation_time) / unit_interval / 24 / 3600); if (!strcmp(dash + 1, "incomplete")) { @@ -146,8 +145,8 @@ static int add_snapshot(const char *dirname, void *private) static int compare_snapshots(const void *a, const void *b) { - struct snapshot *s1 = *(struct snapshot **)a; - struct snapshot *s2 = *(struct snapshot **)b; + struct snapshot *s1 = *(struct snapshot * const *)a; + struct snapshot *s2 = *(struct snapshot * const *)b; return NUM_COMPARE(s2->creation_time, s1->creation_time); } @@ -233,3 +232,13 @@ __malloc char *name_of_newest_complete_snapshot(struct snapshot_list *sl) return name; } +int num_complete_snapshots(struct snapshot_list *sl) +{ + struct snapshot *s; + int i, ret = 0; + + FOR_EACH_SNAPSHOT(s, i, sl) + if (s->flags & SS_COMPLETE) + ret++; + return ret; +}