X-Git-Url: https://git.wh0rd.org/?a=blobdiff_plain;f=restore%2Fsymtab.c;h=2e157f4ab4814903bf1f044bdcafc46ca625234f;hb=86fab47e75fc141db053271654a2570fddcd0f46;hp=a72b1cbb2cab05b0f686bbd5947293218d4730c2;hpb=d6967896bc4e18f9b4359a2ef5be5c0f1bcc456a;p=dump.git diff --git a/restore/symtab.c b/restore/symtab.c index a72b1cb..2e157f4 100644 --- a/restore/symtab.c +++ b/restore/symtab.c @@ -41,7 +41,7 @@ #ifndef lint static const char rcsid[] = - "$Id: symtab.c,v 1.12 2000/12/21 11:14:54 stelian Exp $"; + "$Id: symtab.c,v 1.15 2001/05/12 11:36:12 stelian Exp $"; #endif /* not lint */ /* @@ -59,6 +59,7 @@ static const char rcsid[] = #ifdef __linux__ #include +#include #include #include #else /* __linux__ */ @@ -91,7 +92,7 @@ static const char rcsid[] = static struct entry **entry; static long entrytblsize; -static void addino __P((ino_t, struct entry *)); +static void addino __P((dump_ino_t, struct entry *)); static struct entry *lookupparent __P((char *)); static void removeentry __P((struct entry *)); @@ -99,7 +100,7 @@ static void removeentry __P((struct entry *)); * Look up an entry by inode number */ struct entry * -lookupino(ino_t inum) +lookupino(dump_ino_t inum) { register struct entry *ep; @@ -115,7 +116,7 @@ lookupino(ino_t inum) * Add an entry into the entry table */ static void -addino(ino_t inum, struct entry *np) +addino(dump_ino_t inum, struct entry *np) { struct entry **epp; @@ -135,7 +136,7 @@ addino(ino_t inum, struct entry *np) * Delete an entry from the entry table */ void -deleteino(ino_t inum) +deleteino(dump_ino_t inum) { register struct entry *next; struct entry **prev; @@ -236,7 +237,7 @@ static struct entry *freelist = NULL; * add an entry to the symbol table */ struct entry * -addentry(char *name, ino_t inum, int type) +addentry(char *name, dump_ino_t inum, int type) { register struct entry *np, *ep; @@ -287,7 +288,7 @@ void freeentry(struct entry *ep) { register struct entry *np; - ino_t inum; + dump_ino_t inum; if (ep->e_flags != REMOVED) badentry(ep, "not marked REMOVED"); @@ -446,8 +447,9 @@ struct symtableheader { int32_t entrytblsize; time_t dumptime; time_t dumpdate; - ino_t maxino; + dump_ino_t maxino; int32_t ntrec; + int32_t zflag; }; /* @@ -457,7 +459,7 @@ void dumpsymtable(char *filename, long checkpt) { register struct entry *ep, *tep; - register ino_t i; + register dump_ino_t i; struct entry temp, *tentry; long mynum = 1, stroff = 0; FILE *fd; @@ -526,6 +528,7 @@ dumpsymtable(char *filename, long checkpt) hdr.dumptime = dumptime; hdr.dumpdate = dumpdate; hdr.ntrec = ntrec; + hdr.zflag = zflag; (void) fwrite((char *)&hdr, sizeof(struct symtableheader), 1, fd); if (ferror(fd)) { warn("fwrite"); @@ -595,6 +598,7 @@ initsymtable(char *filename) curfile.action = SKIP; dumptime = hdr.dumptime; dumpdate = hdr.dumpdate; + zflag = hdr.zflag; if (!bflag) newtapebuf(hdr.ntrec); getvol(hdr.volno);