]> git.wh0rd.org - dump.git/blobdiff - dump/itime.c
Check for the e2fsprogs header <ext2fs/ext2_fs.h> instead of the kernel header if...
[dump.git] / dump / itime.c
index 3fed4dc4d4180df5f4c5c066238519eca2447e31..cc92bb5b9e1e2a08ea111e95e8379d39bebcd51e 100644 (file)
 
 #ifndef lint
 static const char rcsid[] =
-       "$Id: itime.c,v 1.13 2000/12/04 15:43:16 stelian Exp $";
+       "$Id: itime.c,v 1.19 2001/06/18 10:58:28 stelian Exp $";
 #endif /* not lint */
 
+#include <config.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <stdio.h>
+#ifdef __STDC__
+#include <stdlib.h>
+#include <string.h>
+#endif
+
 #include <sys/param.h>
 #include <sys/time.h>
 #ifdef __linux__
+#ifdef HAVE_EXT2FS_EXT2_FS_H
+#include <ext2fs/ext2_fs.h>
+#else
 #include <linux/ext2_fs.h>
+#endif
+#include <ext2fs/ext2fs.h>
+#include <time.h>
 #include <bsdcompat.h>
 #include <sys/file.h>
 #include <unistd.h>
-#else
-#ifdef sunos
+#elif defined sunos
 #include <sys/vnode.h>
 
 #include <ufs/fsdir.h>
@@ -61,22 +75,9 @@ static const char rcsid[] =
 #else
 #include <ufs/ufs/dinode.h>
 #endif
-#endif
 
 #include <protocols/dumprestore.h>
 
-#include <errno.h>
-#include <fcntl.h>
-#include <stdio.h>
-#ifdef __STDC__
-#include <stdlib.h>
-#include <string.h>
-#endif
-
-#ifdef __linux__
-#include <ext2fs/ext2fs.h>
-#endif
-
 #include "dump.h"
 
 struct dumpdates **ddatev;
@@ -159,12 +160,10 @@ getdumptime(int createdumpdates)
 {
        register struct dumpdates *ddp;
        register int i;
-       char *fname;
 
-       fname = disk;
 #ifdef FDEBUG
        msg("Looking for name %s in dumpdates = %s for level = %c\n",
-               fname, dumpdates, level);
+               disk, dumpdates, level);
 #endif
        spcl.c_ddate = 0;
        lastlevel = '0';
@@ -183,15 +182,11 @@ getdumptime(int createdumpdates)
         *      and older date
         */
        ITITERATE(i, ddp) {
-               if (strncmp(fname, ddp->dd_name, sizeof (ddp->dd_name)) != 0)
+               if (strncmp(disk, ddp->dd_name, sizeof (ddp->dd_name)) != 0)
                        continue;
                if (ddp->dd_level >= level)
                        continue;
-#ifdef __linux__
                if (ddp->dd_ddate <= (time_t)spcl.c_ddate)
-#else
-               if (ddp->dd_ddate <= spcl.c_ddate)
-#endif
                        continue;
                spcl.c_ddate = ddp->dd_ddate;
                lastlevel = ddp->dd_level;
@@ -205,7 +200,6 @@ putdumptime(void)
        register struct dumpdates *dtwalk;
        register int i;
        int fd;
-       char *fname;
 
        if(uflag == 0)
                return;
@@ -213,7 +207,6 @@ putdumptime(void)
                quit("cannot rewrite %s: %s\n", dumpdates, strerror(errno));
        fd = fileno(df);
        (void) flock(fd, LOCK_EX);
-       fname = disk;
        free((char *)ddatev);
        ddatev = 0;
        nddates = 0;
@@ -224,7 +217,7 @@ putdumptime(void)
                quit("fseek: %s\n", strerror(errno));
        spcl.c_ddate = 0;
        ITITERATE(i, dtwalk) {
-               if (strncmp(fname, dtwalk->dd_name,
+               if (strncmp(disk, dtwalk->dd_name,
                                sizeof (dtwalk->dd_name)) != 0)
                        continue;
                if (dtwalk->dd_level != level)
@@ -239,7 +232,7 @@ putdumptime(void)
                (struct dumpdates *)calloc(1, sizeof (struct dumpdates));
        nddates += 1;
   found:
-       (void) strncpy(dtwalk->dd_name, fname, sizeof (dtwalk->dd_name));
+       (void) strncpy(dtwalk->dd_name, disk, sizeof (dtwalk->dd_name));
        dtwalk->dd_level = level;
        dtwalk->dd_ddate = spcl.c_date;
 
@@ -251,12 +244,6 @@ putdumptime(void)
        if (ftruncate(fd, ftell(df)))
                quit("ftruncate (%s): %s\n", dumpdates, strerror(errno));
        (void) fclose(df);
-       msg("level %c dump on %s", level,
-#ifdef __linux__
-               spcl.c_date == 0 ? "the epoch\n" : ctime4(&spcl.c_date));
-#else
-               spcl.c_date == 0 ? "the epoch\n" : ctime(&spcl.c_date));
-#endif
 }
 
 static void