X-Git-Url: https://git.wh0rd.org/?a=blobdiff_plain;f=restore%2Fsymtab.c;h=5bd5e67c45b8b43958f674ffdf2422fe900c7cc0;hb=83a6b4df0b7b7aecc0d3940549d0d480adff35a6;hp=9eb9dc093545a453bf56d976c017063ec44754e0;hpb=11856e771fadee7ddb9b5a613c91f562bf363da7;p=dump.git diff --git a/restore/symtab.c b/restore/symtab.c index 9eb9dc0..5bd5e67 100644 --- a/restore/symtab.c +++ b/restore/symtab.c @@ -18,11 +18,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * @@ -41,7 +37,7 @@ #ifndef lint static const char rcsid[] = - "$Id: symtab.c,v 1.17 2002/01/16 09:32:14 stelian Exp $"; + "$Id: symtab.c,v 1.21 2003/03/30 15:40:40 stelian Exp $"; #endif /* not lint */ /* @@ -106,7 +102,7 @@ static void removeentry __P((struct entry *)); struct entry * lookupino(dump_ino_t inum) { - register struct entry *ep; + struct entry *ep; if (inum < WINO || inum >= maxino) return (NULL); @@ -142,7 +138,7 @@ addino(dump_ino_t inum, struct entry *np) void deleteino(dump_ino_t inum) { - register struct entry *next; + struct entry *next; struct entry **prev; if (inum < WINO || inum >= maxino) @@ -165,8 +161,8 @@ deleteino(dump_ino_t inum) struct entry * lookupname(char *name) { - register struct entry *ep; - register char *np, *cp; + struct entry *ep; + char *np, *cp; char buf[MAXPATHLEN]; cp = name; @@ -216,7 +212,7 @@ lookupparent(char *name) char * myname(struct entry *ep) { - register char *cp; + char *cp; static char namebuf[MAXPATHLEN]; for (cp = &namebuf[MAXPATHLEN - 2]; cp > &namebuf[ep->e_namlen]; ) { @@ -243,7 +239,7 @@ static struct entry *freelist = NULL; struct entry * addentry(char *name, dump_ino_t inum, int type) { - register struct entry *np, *ep; + struct entry *np, *ep; if (freelist != NULL) { np = freelist; @@ -291,7 +287,7 @@ addentry(char *name, dump_ino_t inum, int type) void freeentry(struct entry *ep) { - register struct entry *np; + struct entry *np; dump_ino_t inum; if (ep->e_flags != REMOVED) @@ -362,7 +358,7 @@ moveentry(struct entry *ep, char *newname) static void removeentry(struct entry *ep) { - register struct entry *np; + struct entry *np; np = ep->e_parent; if (np->e_entries == ep) { @@ -462,8 +458,8 @@ struct symtableheader { void dumpsymtable(char *filename, long checkpt) { - register struct entry *ep, *tep; - register dump_ino_t i; + struct entry *ep, *tep; + dump_ino_t i; struct entry temp, *tentry; long mynum = 1, stroff = 0; FILE *fd; @@ -518,7 +514,7 @@ dumpsymtable(char *filename, long checkpt) /* * Convert entry pointers to indexes, and output */ - for (i = 0; i < entrytblsize; i++) { + for (i = 0; (long)i < entrytblsize; i++) { if (entry[i] == NULL) tentry = NULL; else @@ -550,11 +546,11 @@ initsymtable(char *filename) { char *base; long tblsize; - register struct entry *ep; + struct entry *ep; struct entry *baseep, *lep; struct symtableheader hdr; struct stat stbuf; - register long i; + long i; int fd; Vprintf(stdout, "Initialize symbol table.\n"); @@ -611,6 +607,7 @@ initsymtable(char *filename) panic("initsymtable called from command %c\n", command); break; } + resizemaps(maxino, hdr.maxino); maxino = hdr.maxino; entrytblsize = hdr.entrytblsize; entry = (struct entry **)