sbin/fsck_ext2fs/dir.c
151
dirscan(struct inodesc *idesc)
sbin/fsck_ext2fs/dir.c
162
if (idesc->id_type != DATA)
sbin/fsck_ext2fs/dir.c
163
errexit("wrong type to dirscan %d", idesc->id_type);
sbin/fsck_ext2fs/dir.c
164
if (idesc->id_entryno == 0 &&
sbin/fsck_ext2fs/dir.c
165
(idesc->id_filesize & (sblock.e2fs_bsize - 1)) != 0)
sbin/fsck_ext2fs/dir.c
166
idesc->id_filesize = roundup(idesc->id_filesize, sblock.e2fs_bsize);
sbin/fsck_ext2fs/dir.c
167
blksiz = idesc->id_numfrags * sblock.e2fs_bsize;
sbin/fsck_ext2fs/dir.c
168
if (chkrange(idesc->id_blkno, idesc->id_numfrags)) {
sbin/fsck_ext2fs/dir.c
169
idesc->id_filesize -= blksiz;
sbin/fsck_ext2fs/dir.c
173
idesc->id_loc = 0;
sbin/fsck_ext2fs/dir.c
174
for (dp = fsck_readdir(idesc); dp != NULL; dp = fsck_readdir(idesc)) {
sbin/fsck_ext2fs/dir.c
177
idesc->id_dirp = (struct ext2fs_direct *)dbuf;
sbin/fsck_ext2fs/dir.c
178
if ((n = (*idesc->id_func)(idesc)) & ALTERED) {
sbin/fsck_ext2fs/dir.c
179
bp = getdirblk(idesc->id_blkno, blksiz);
sbin/fsck_ext2fs/dir.c
180
memcpy(bp->b_un.b_buf + idesc->id_loc - dsize, dbuf,
sbin/fsck_ext2fs/dir.c
191
return (idesc->id_filesize > 0 ? KEEPON : STOP);
sbin/fsck_ext2fs/dir.c
198
fsck_readdir(struct inodesc *idesc)
sbin/fsck_ext2fs/dir.c
204
blksiz = idesc->id_numfrags * sblock.e2fs_bsize;
sbin/fsck_ext2fs/dir.c
205
bp = getdirblk(idesc->id_blkno, blksiz);
sbin/fsck_ext2fs/dir.c
206
if (idesc->id_loc % sblock.e2fs_bsize == 0 && idesc->id_filesize > 0 &&
sbin/fsck_ext2fs/dir.c
207
idesc->id_loc < blksiz) {
sbin/fsck_ext2fs/dir.c
208
dp = (struct ext2fs_direct *)(bp->b_un.b_buf + idesc->id_loc);
sbin/fsck_ext2fs/dir.c
209
if (dircheck(idesc, dp))
sbin/fsck_ext2fs/dir.c
211
if (idesc->id_fix == IGNORE)
sbin/fsck_ext2fs/dir.c
213
fix = dofix(idesc, "DIRECTORY CORRUPTED");
sbin/fsck_ext2fs/dir.c
214
bp = getdirblk(idesc->id_blkno, blksiz);
sbin/fsck_ext2fs/dir.c
215
dp = (struct ext2fs_direct *)(bp->b_un.b_buf + idesc->id_loc);
sbin/fsck_ext2fs/dir.c
223
idesc->id_loc += sblock.e2fs_bsize;
sbin/fsck_ext2fs/dir.c
224
idesc->id_filesize -= sblock.e2fs_bsize;
sbin/fsck_ext2fs/dir.c
228
if (idesc->id_filesize <= 0 || idesc->id_loc >= blksiz)
sbin/fsck_ext2fs/dir.c
230
dploc = idesc->id_loc;
sbin/fsck_ext2fs/dir.c
232
idesc->id_loc += fs2h16(dp->e2d_reclen);
sbin/fsck_ext2fs/dir.c
233
idesc->id_filesize -= fs2h16(dp->e2d_reclen);
sbin/fsck_ext2fs/dir.c
234
if ((idesc->id_loc % sblock.e2fs_bsize) == 0)
sbin/fsck_ext2fs/dir.c
236
ndp = (struct ext2fs_direct *)(bp->b_un.b_buf + idesc->id_loc);
sbin/fsck_ext2fs/dir.c
237
if (idesc->id_loc < blksiz && idesc->id_filesize > 0 &&
sbin/fsck_ext2fs/dir.c
238
dircheck(idesc, ndp) == 0) {
sbin/fsck_ext2fs/dir.c
239
size = sblock.e2fs_bsize - (idesc->id_loc % sblock.e2fs_bsize);
sbin/fsck_ext2fs/dir.c
240
idesc->id_loc += size;
sbin/fsck_ext2fs/dir.c
241
idesc->id_filesize -= size;
sbin/fsck_ext2fs/dir.c
242
if (idesc->id_fix == IGNORE)
sbin/fsck_ext2fs/dir.c
244
fix = dofix(idesc, "DIRECTORY CORRUPTED");
sbin/fsck_ext2fs/dir.c
245
bp = getdirblk(idesc->id_blkno, blksiz);
sbin/fsck_ext2fs/dir.c
259
dircheck(struct inodesc *idesc, struct ext2fs_direct *dp)
sbin/fsck_ext2fs/dir.c
266
spaceleft = sblock.e2fs_bsize - (idesc->id_loc % sblock.e2fs_bsize);
sbin/fsck_ext2fs/dir.c
280
idesc->id_filesize < size /* ||
sbin/fsck_ext2fs/dir.c
319
adjust(struct inodesc *idesc, short lcnt)
sbin/fsck_ext2fs/dir.c
323
dp = ginode(idesc->id_number);
sbin/fsck_ext2fs/dir.c
325
if (linkup(idesc->id_number, (ino_t)0) == 0)
sbin/fsck_ext2fs/dir.c
326
clri(idesc, "UNREF", 0);
sbin/fsck_ext2fs/dir.c
328
pwarn("LINK COUNT %s", (lfdir == idesc->id_number) ? lfname :
sbin/fsck_ext2fs/dir.c
330
pinode(idesc->id_number);
sbin/fsck_ext2fs/dir.c
348
mkentry(struct inodesc *idesc)
sbin/fsck_ext2fs/dir.c
350
struct ext2fs_direct *dirp = idesc->id_dirp;
sbin/fsck_ext2fs/dir.c
355
newent.e2d_namlen = strlen(idesc->id_name);
sbin/fsck_ext2fs/dir.c
358
newent.e2d_type = inot2ext2dt(typemap[idesc->id_parent]);
sbin/fsck_ext2fs/dir.c
369
dirp->e2d_ino = h2fs32(idesc->id_parent); /* ino to be entered is in id_parent */
sbin/fsck_ext2fs/dir.c
373
memcpy(dirp->e2d_name, idesc->id_name, (size_t)(dirp->e2d_namlen));
sbin/fsck_ext2fs/dir.c
378
chgino(struct inodesc *idesc)
sbin/fsck_ext2fs/dir.c
380
struct ext2fs_direct *dirp = idesc->id_dirp;
sbin/fsck_ext2fs/dir.c
383
if (strlen(idesc->id_name) != namlen ||
sbin/fsck_ext2fs/dir.c
384
strncmp(dirp->e2d_name, idesc->id_name, (int)namlen))
sbin/fsck_ext2fs/dir.c
386
dirp->e2d_ino = h2fs32(idesc->id_parent);
sbin/fsck_ext2fs/dir.c
389
dirp->e2d_type = inot2ext2dt(typemap[idesc->id_parent]);
sbin/fsck_ext2fs/dir.c
401
struct inodesc idesc;
sbin/fsck_ext2fs/dir.c
404
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ext2fs/dir.c
418
idesc.id_name = lfname;
sbin/fsck_ext2fs/dir.c
419
idesc.id_type = DATA;
sbin/fsck_ext2fs/dir.c
420
idesc.id_func = findino;
sbin/fsck_ext2fs/dir.c
421
idesc.id_number = EXT2_ROOTINO;
sbin/fsck_ext2fs/dir.c
422
if ((ckinode(dp, &idesc) & FOUND) != 0) {
sbin/fsck_ext2fs/dir.c
423
lfdir = idesc.id_parent;
sbin/fsck_ext2fs/dir.c
462
idesc.id_type = ADDR;
sbin/fsck_ext2fs/dir.c
463
idesc.id_func = pass4check;
sbin/fsck_ext2fs/dir.c
464
idesc.id_number = oldlfdir;
sbin/fsck_ext2fs/dir.c
465
adjust(&idesc, lncntp[oldlfdir] + 1);
sbin/fsck_ext2fs/dir.c
504
struct inodesc idesc;
sbin/fsck_ext2fs/dir.c
506
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ext2fs/dir.c
507
idesc.id_type = DATA;
sbin/fsck_ext2fs/dir.c
508
idesc.id_func = chgino;
sbin/fsck_ext2fs/dir.c
509
idesc.id_number = dir;
sbin/fsck_ext2fs/dir.c
510
idesc.id_fix = DONTKNOW;
sbin/fsck_ext2fs/dir.c
511
idesc.id_name = name;
sbin/fsck_ext2fs/dir.c
512
idesc.id_parent = newnum; /* new value for name */
sbin/fsck_ext2fs/dir.c
513
return (ckinode(ginode(dir), &idesc));
sbin/fsck_ext2fs/dir.c
523
struct inodesc idesc;
sbin/fsck_ext2fs/dir.c
530
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ext2fs/dir.c
531
idesc.id_type = DATA;
sbin/fsck_ext2fs/dir.c
532
idesc.id_func = mkentry;
sbin/fsck_ext2fs/dir.c
533
idesc.id_number = parent;
sbin/fsck_ext2fs/dir.c
534
idesc.id_parent = ino; /* this is the inode to enter */
sbin/fsck_ext2fs/dir.c
535
idesc.id_fix = DONTKNOW;
sbin/fsck_ext2fs/dir.c
536
idesc.id_name = name;
sbin/fsck_ext2fs/dir.c
542
if ((ckinode(dp, &idesc) & ALTERED) != 0)
sbin/fsck_ext2fs/dir.c
548
return (ckinode(dp, &idesc) & ALTERED);
sbin/fsck_ext2fs/inode.c
167
ckinode(struct ext2fs_dinode *dp, struct inodesc *idesc)
sbin/fsck_ext2fs/inode.c
176
if (idesc->id_fix != IGNORE)
sbin/fsck_ext2fs/inode.c
177
idesc->id_fix = DONTKNOW;
sbin/fsck_ext2fs/inode.c
178
idesc->id_entryno = 0;
sbin/fsck_ext2fs/inode.c
179
idesc->id_filesize = inosize(dp);
sbin/fsck_ext2fs/inode.c
188
idesc->id_numfrags = 1;
sbin/fsck_ext2fs/inode.c
190
if (idesc->id_type == DATA && ndb > 0) {
sbin/fsck_ext2fs/inode.c
193
idesc->id_number, idesc->id_number);
sbin/fsck_ext2fs/inode.c
197
dp = ginode(idesc->id_number);
sbin/fsck_ext2fs/inode.c
209
idesc->id_blkno = fs2h32(*ap);
sbin/fsck_ext2fs/inode.c
210
if (idesc->id_type == ADDR)
sbin/fsck_ext2fs/inode.c
211
ret = (*idesc->id_func)(idesc);
sbin/fsck_ext2fs/inode.c
213
ret = dirscan(idesc);
sbin/fsck_ext2fs/inode.c
217
idesc->id_numfrags = 1;
sbin/fsck_ext2fs/inode.c
222
idesc->id_blkno = fs2h32(*ap);
sbin/fsck_ext2fs/inode.c
223
ret = iblock(idesc, n, remsize);
sbin/fsck_ext2fs/inode.c
227
if (idesc->id_type == DATA && remsize > 0) {
sbin/fsck_ext2fs/inode.c
230
idesc->id_number, idesc->id_number);
sbin/fsck_ext2fs/inode.c
234
dp = ginode(idesc->id_number);
sbin/fsck_ext2fs/inode.c
252
iblock(struct inodesc *idesc, long ilevel, u_int64_t isize)
sbin/fsck_ext2fs/inode.c
265
if (idesc->id_type == ADDR) {
sbin/fsck_ext2fs/inode.c
266
func = idesc->id_func;
sbin/fsck_ext2fs/inode.c
267
if (((n = (*func)(idesc)) & KEEPON) == 0)
sbin/fsck_ext2fs/inode.c
271
if (chkrange(idesc->id_blkno, idesc->id_numfrags))
sbin/fsck_ext2fs/inode.c
273
bp = getdatablk(idesc->id_blkno, sblock.e2fs_bsize);
sbin/fsck_ext2fs/inode.c
281
if (idesc->id_func == pass1check &&
sbin/fsck_ext2fs/inode.c
289
(unsigned long long)idesc->id_number);
sbin/fsck_ext2fs/inode.c
290
if (dofix(idesc, buf)) {
sbin/fsck_ext2fs/inode.c
300
idesc->id_blkno = fs2h32(*ap);
sbin/fsck_ext2fs/inode.c
302
n = (*func)(idesc);
sbin/fsck_ext2fs/inode.c
304
n = iblock(idesc, ilevel, isize);
sbin/fsck_ext2fs/inode.c
310
if (idesc->id_type == DATA && isize > 0) {
sbin/fsck_ext2fs/inode.c
313
idesc->id_number, idesc->id_number);
sbin/fsck_ext2fs/inode.c
317
dp = ginode(idesc->id_number);
sbin/fsck_ext2fs/inode.c
574
clri(struct inodesc *idesc, const char *type, int flag)
sbin/fsck_ext2fs/inode.c
578
dp = ginode(idesc->id_number);
sbin/fsck_ext2fs/inode.c
582
pinode(idesc->id_number);
sbin/fsck_ext2fs/inode.c
588
(void)ckinode(dp, idesc);
sbin/fsck_ext2fs/inode.c
590
statemap[idesc->id_number] = USTATE;
sbin/fsck_ext2fs/inode.c
596
findname(struct inodesc *idesc)
sbin/fsck_ext2fs/inode.c
598
struct ext2fs_direct *dirp = idesc->id_dirp;
sbin/fsck_ext2fs/inode.c
601
char *buf = __UNCONST(idesc->id_name);
sbin/fsck_ext2fs/inode.c
607
if (fs2h32(dirp->e2d_ino) != idesc->id_parent)
sbin/fsck_ext2fs/inode.c
615
findino(struct inodesc *idesc)
sbin/fsck_ext2fs/inode.c
617
struct ext2fs_direct *dirp = idesc->id_dirp;
sbin/fsck_ext2fs/inode.c
622
if (strcmp(dirp->e2d_name, idesc->id_name) == 0 &&
sbin/fsck_ext2fs/inode.c
625
idesc->id_parent = ino;
sbin/fsck_ext2fs/inode.c
743
struct inodesc idesc;
sbin/fsck_ext2fs/inode.c
746
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ext2fs/inode.c
747
idesc.id_type = ADDR;
sbin/fsck_ext2fs/inode.c
748
idesc.id_func = pass4check;
sbin/fsck_ext2fs/inode.c
749
idesc.id_number = ino;
sbin/fsck_ext2fs/inode.c
751
(void)ckinode(dp, &idesc);
sbin/fsck_ext2fs/pass1.c
136
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ext2fs/pass1.c
137
idesc.id_type = ADDR;
sbin/fsck_ext2fs/pass1.c
138
idesc.id_func = pass1check;
sbin/fsck_ext2fs/pass1.c
148
checkinode(inumber, &idesc);
sbin/fsck_ext2fs/pass1.c
155
checkinode(ino_t inumber, struct inodesc *idesc)
sbin/fsck_ext2fs/pass1.c
302
idesc->id_number = inumber;
sbin/fsck_ext2fs/pass1.c
303
(void)ckinode(dp, idesc);
sbin/fsck_ext2fs/pass1.c
304
idesc->id_entryno *= btodb(sblock.e2fs_bsize);
sbin/fsck_ext2fs/pass1.c
305
if (inonblock(dp) != (uint32_t)idesc->id_entryno) {
sbin/fsck_ext2fs/pass1.c
309
idesc->id_entryno);
sbin/fsck_ext2fs/pass1.c
315
inosnblock(dp, idesc->id_entryno);
sbin/fsck_ext2fs/pass1.c
331
pass1check(struct inodesc *idesc)
sbin/fsck_ext2fs/pass1.c
335
daddr_t blkno = idesc->id_blkno;
sbin/fsck_ext2fs/pass1.c
339
if ((anyout = chkrange(blkno, idesc->id_numfrags)) != 0) {
sbin/fsck_ext2fs/pass1.c
340
blkerror(idesc->id_number, "BAD", blkno);
sbin/fsck_ext2fs/pass1.c
343
(unsigned long long)idesc->id_number);
sbin/fsck_ext2fs/pass1.c
351
for (nfrags = idesc->id_numfrags; nfrags > 0; blkno++, nfrags--) {
sbin/fsck_ext2fs/pass1.c
358
blkerror(idesc->id_number, "DUP", blkno);
sbin/fsck_ext2fs/pass1.c
361
(unsigned long long)idesc->id_number);
sbin/fsck_ext2fs/pass1.c
392
idesc->id_entryno++;
sbin/fsck_ext2fs/pass1.c
94
struct inodesc idesc;
sbin/fsck_ext2fs/pass1b.c
100
(ckinode(dp, &idesc) & STOP))
sbin/fsck_ext2fs/pass1b.c
107
pass1bcheck(struct inodesc *idesc)
sbin/fsck_ext2fs/pass1b.c
111
daddr_t blkno = idesc->id_blkno;
sbin/fsck_ext2fs/pass1b.c
113
for (nfrags = idesc->id_numfrags; nfrags > 0; blkno++, nfrags--) {
sbin/fsck_ext2fs/pass1b.c
118
blkerror(idesc->id_number, "DUP", blkno);
sbin/fsck_ext2fs/pass1b.c
83
struct inodesc idesc;
sbin/fsck_ext2fs/pass1b.c
86
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ext2fs/pass1b.c
87
idesc.id_type = ADDR;
sbin/fsck_ext2fs/pass1b.c
88
idesc.id_func = pass1bcheck;
sbin/fsck_ext2fs/pass1b.c
98
idesc.id_number = inumber;
sbin/fsck_ext2fs/pass2.c
223
pass2check(struct inodesc *idesc)
sbin/fsck_ext2fs/pass2.c
225
struct ext2fs_direct *dirp = idesc->id_dirp;
sbin/fsck_ext2fs/pass2.c
237
if (idesc->id_entryno != 0)
sbin/fsck_ext2fs/pass2.c
241
if (fs2h32(dirp->e2d_ino) != idesc->id_number) {
sbin/fsck_ext2fs/pass2.c
242
direrror(idesc->id_number, "BAD INODE NUMBER FOR '.'");
sbin/fsck_ext2fs/pass2.c
243
dirp->e2d_ino = h2fs32(idesc->id_number);
sbin/fsck_ext2fs/pass2.c
250
direrror(idesc->id_number, "BAD TYPE VALUE FOR '.'");
sbin/fsck_ext2fs/pass2.c
257
direrror(idesc->id_number, "MISSING '.'");
sbin/fsck_ext2fs/pass2.c
258
proto.e2d_ino = h2fs32(idesc->id_number);
sbin/fsck_ext2fs/pass2.c
281
idesc->id_entryno++;
sbin/fsck_ext2fs/pass2.c
290
if (idesc->id_entryno > 1)
sbin/fsck_ext2fs/pass2.c
292
inp = getinoinfo(idesc->id_number);
sbin/fsck_ext2fs/pass2.c
302
if (idesc->id_entryno == 0) {
sbin/fsck_ext2fs/pass2.c
308
idesc->id_entryno++;
sbin/fsck_ext2fs/pass2.c
321
direrror(idesc->id_number, "BAD TYPE VALUE FOR '..'");
sbin/fsck_ext2fs/pass2.c
331
fileerror(inp->i_parent, idesc->id_number, "MISSING '..'");
sbin/fsck_ext2fs/pass2.c
336
fileerror(inp->i_parent, idesc->id_number, "MISSING '..'");
sbin/fsck_ext2fs/pass2.c
344
fileerror(inp->i_parent, idesc->id_number, "MISSING '..'");
sbin/fsck_ext2fs/pass2.c
350
idesc->id_entryno++;
sbin/fsck_ext2fs/pass2.c
359
idesc->id_entryno >= 2) {
sbin/fsck_ext2fs/pass2.c
361
direrror(idesc->id_number, "EXTRA '.' ENTRY");
sbin/fsck_ext2fs/pass2.c
368
direrror(idesc->id_number, "EXTRA '..' ENTRY");
sbin/fsck_ext2fs/pass2.c
375
idesc->id_entryno++;
sbin/fsck_ext2fs/pass2.c
380
fileerror(idesc->id_number, fs2h32(dirp->e2d_ino), "I OUT OF RANGE");
sbin/fsck_ext2fs/pass2.c
386
if (idesc->id_entryno <= 2)
sbin/fsck_ext2fs/pass2.c
388
fileerror(idesc->id_number, fs2h32(dirp->e2d_ino), "UNALLOCATED");
sbin/fsck_ext2fs/pass2.c
394
if (idesc->id_entryno <= 2)
sbin/fsck_ext2fs/pass2.c
404
fileerror(idesc->id_number, fs2h32(dirp->e2d_ino), errmsg);
sbin/fsck_ext2fs/pass2.c
416
if (inp->i_parent != 0 && idesc->id_entryno > 2) {
sbin/fsck_ext2fs/pass2.c
418
idesc->id_number, idesc->id_number);
sbin/fsck_ext2fs/pass2.c
430
if (idesc->id_entryno > 2)
sbin/fsck_ext2fs/pass2.c
431
inp->i_parent = idesc->id_number;
sbin/fsck_ext2fs/pass2.c
442
fileerror(idesc->id_number,
sbin/fsck_ext2fs/pass4.c
106
clri(&idesc, "UNREF", 1);
sbin/fsck_ext2fs/pass4.c
113
clri(&idesc, "UNREF", 1);
sbin/fsck_ext2fs/pass4.c
119
clri(&idesc, "ZERO LENGTH", 1);
sbin/fsck_ext2fs/pass4.c
124
clri(&idesc, "BAD/DUP", 1);
sbin/fsck_ext2fs/pass4.c
138
pass4check(struct inodesc *idesc)
sbin/fsck_ext2fs/pass4.c
142
daddr_t blkno = idesc->id_blkno;
sbin/fsck_ext2fs/pass4.c
144
for (nfrags = idesc->id_numfrags; nfrags > 0; blkno++, nfrags--) {
sbin/fsck_ext2fs/pass4.c
82
struct inodesc idesc;
sbin/fsck_ext2fs/pass4.c
85
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ext2fs/pass4.c
86
idesc.id_type = ADDR;
sbin/fsck_ext2fs/pass4.c
87
idesc.id_func = pass4check;
sbin/fsck_ext2fs/pass4.c
91
idesc.id_number = inumber;
sbin/fsck_ext2fs/pass4.c
98
adjust(&idesc, (short)n);
sbin/fsck_ext2fs/pass5.c
131
memset(&idesc[0], 0, sizeof idesc);
sbin/fsck_ext2fs/pass5.c
133
idesc[i].id_type = ADDR;
sbin/fsck_ext2fs/pass5.c
212
dofix(&idesc[0], msg)) {
sbin/fsck_ext2fs/pass5.c
229
dofix(&idesc[1], msg)) {
sbin/fsck_ext2fs/pass5.c
242
dofix(&idesc[1], msg)) {
sbin/fsck_ext2fs/pass5.c
256
&& dofix(&idesc[0], "SUPERBLK SUMMARY INFORMATION BAD")) {
sbin/fsck_ext2fs/pass5.c
90
struct inodesc idesc[3];
sbin/fsck_ext2fs/utilities.c
398
struct inodesc idesc;
sbin/fsck_ext2fs/utilities.c
400
idesc.id_blkno = blkno;
sbin/fsck_ext2fs/utilities.c
401
idesc.id_numfrags = 1;
sbin/fsck_ext2fs/utilities.c
402
(void)pass4check(&idesc);
sbin/fsck_ext2fs/utilities.c
413
struct inodesc idesc;
sbin/fsck_ext2fs/utilities.c
426
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ext2fs/utilities.c
427
idesc.id_type = DATA;
sbin/fsck_ext2fs/utilities.c
428
idesc.id_fix = IGNORE;
sbin/fsck_ext2fs/utilities.c
432
idesc.id_parent = curdir;
sbin/fsck_ext2fs/utilities.c
436
idesc.id_number = ino;
sbin/fsck_ext2fs/utilities.c
437
idesc.id_func = findino;
sbin/fsck_ext2fs/utilities.c
438
idesc.id_name = "..";
sbin/fsck_ext2fs/utilities.c
439
if ((ckinode(ginode(ino), &idesc) & FOUND) == 0)
sbin/fsck_ext2fs/utilities.c
442
idesc.id_number = idesc.id_parent;
sbin/fsck_ext2fs/utilities.c
443
idesc.id_parent = ino;
sbin/fsck_ext2fs/utilities.c
444
idesc.id_func = findname;
sbin/fsck_ext2fs/utilities.c
445
idesc.id_name = namebuf;
sbin/fsck_ext2fs/utilities.c
446
if ((ckinode(ginode(idesc.id_number), &idesc)&FOUND) == 0)
sbin/fsck_ext2fs/utilities.c
454
ino = idesc.id_number;
sbin/fsck_ext2fs/utilities.c
466
dofix(struct inodesc *idesc, const char *msg)
sbin/fsck_ext2fs/utilities.c
469
switch (idesc->id_fix) {
sbin/fsck_ext2fs/utilities.c
472
if (idesc->id_type == DATA)
sbin/fsck_ext2fs/utilities.c
473
direrror(idesc->id_number, msg);
sbin/fsck_ext2fs/utilities.c
478
idesc->id_fix = FIX;
sbin/fsck_ext2fs/utilities.c
482
idesc->id_fix = NOFIX;
sbin/fsck_ext2fs/utilities.c
485
idesc->id_fix = FIX;
sbin/fsck_ext2fs/utilities.c
496
errexit("UNKNOWN INODESC FIX MODE %d", idesc->id_fix);
sbin/fsck_ffs/dir.c
168
dirscan(struct inodesc *idesc)
sbin/fsck_ffs/dir.c
180
if (idesc->id_type != DATA)
sbin/fsck_ffs/dir.c
181
errexit("wrong type to dirscan %d", idesc->id_type);
sbin/fsck_ffs/dir.c
182
if (idesc->id_entryno == 0 &&
sbin/fsck_ffs/dir.c
183
(idesc->id_filesize & (dirblksiz - 1)) != 0)
sbin/fsck_ffs/dir.c
184
idesc->id_filesize = roundup(idesc->id_filesize, dirblksiz);
sbin/fsck_ffs/dir.c
185
blksiz = idesc->id_numfrags * sblock->fs_fsize;
sbin/fsck_ffs/dir.c
186
if (chkrange(idesc->id_blkno, idesc->id_numfrags)) {
sbin/fsck_ffs/dir.c
187
idesc->id_filesize -= blksiz;
sbin/fsck_ffs/dir.c
197
bp = getdirblk(idesc->id_blkno, blksiz);
sbin/fsck_ffs/dir.c
211
idesc->id_filesize -= blksiz;
sbin/fsck_ffs/dir.c
212
return (idesc->id_filesize > 0 ? KEEPON : STOP);
sbin/fsck_ffs/dir.c
215
idesc->id_loc = 0;
sbin/fsck_ffs/dir.c
216
for (dp = fsck_readdir(idesc); dp != NULL; dp = fsck_readdir(idesc)) {
sbin/fsck_ffs/dir.c
223
idesc->id_dirp = (struct direct *)dbuf;
sbin/fsck_ffs/dir.c
224
if ((n = (*idesc->id_func)(idesc)) & ALTERED) {
sbin/fsck_ffs/dir.c
227
bp = getdirblk(idesc->id_blkno, blksiz);
sbin/fsck_ffs/dir.c
228
memmove(bp->b_un.b_buf + idesc->id_loc - dsize, dbuf,
sbin/fsck_ffs/dir.c
236
return (idesc->id_filesize > 0 ? KEEPON : STOP);
sbin/fsck_ffs/dir.c
243
fsck_readdir(struct inodesc *idesc)
sbin/fsck_ffs/dir.c
249
blksiz = idesc->id_numfrags * sblock->fs_fsize;
sbin/fsck_ffs/dir.c
250
bp = getdirblk(idesc->id_blkno, blksiz);
sbin/fsck_ffs/dir.c
251
if (idesc->id_loc % dirblksiz == 0 && idesc->id_filesize > 0 &&
sbin/fsck_ffs/dir.c
252
idesc->id_loc < blksiz) {
sbin/fsck_ffs/dir.c
253
dp = (struct direct *)(bp->b_un.b_buf + idesc->id_loc);
sbin/fsck_ffs/dir.c
254
if (dircheck(idesc, dp, bp))
sbin/fsck_ffs/dir.c
256
if (idesc->id_fix == IGNORE)
sbin/fsck_ffs/dir.c
258
fix = dofix(idesc, "DIRECTORY CORRUPTED");
sbin/fsck_ffs/dir.c
259
bp = getdirblk(idesc->id_blkno, blksiz);
sbin/fsck_ffs/dir.c
260
dp = (struct direct *)(bp->b_un.b_buf + idesc->id_loc);
sbin/fsck_ffs/dir.c
270
idesc->id_loc += dirblksiz;
sbin/fsck_ffs/dir.c
271
idesc->id_filesize -= dirblksiz;
sbin/fsck_ffs/dir.c
275
if (idesc->id_filesize <= 0 || idesc->id_loc >= blksiz)
sbin/fsck_ffs/dir.c
277
dploc = idesc->id_loc;
sbin/fsck_ffs/dir.c
279
idesc->id_loc += iswap16(dp->d_reclen);
sbin/fsck_ffs/dir.c
280
idesc->id_filesize -= iswap16(dp->d_reclen);
sbin/fsck_ffs/dir.c
281
if ((idesc->id_loc % dirblksiz) == 0)
sbin/fsck_ffs/dir.c
283
ndp = (struct direct *)(bp->b_un.b_buf + idesc->id_loc);
sbin/fsck_ffs/dir.c
284
if (idesc->id_loc < blksiz && idesc->id_filesize > 0 &&
sbin/fsck_ffs/dir.c
285
dircheck(idesc, ndp, bp) == 0) {
sbin/fsck_ffs/dir.c
286
size = dirblksiz - (idesc->id_loc % dirblksiz);
sbin/fsck_ffs/dir.c
287
idesc->id_loc += size;
sbin/fsck_ffs/dir.c
288
idesc->id_filesize -= size;
sbin/fsck_ffs/dir.c
289
if (idesc->id_fix == IGNORE)
sbin/fsck_ffs/dir.c
291
fix = dofix(idesc, "DIRECTORY CORRUPTED");
sbin/fsck_ffs/dir.c
292
bp = getdirblk(idesc->id_blkno, blksiz);
sbin/fsck_ffs/dir.c
311
dircheck(struct inodesc *idesc, struct direct *dp, struct bufarea *bp)
sbin/fsck_ffs/dir.c
320
spaceleft = dirblksiz - (idesc->id_loc % dirblksiz);
sbin/fsck_ffs/dir.c
365
if (reclen < size || idesc->id_filesize < size ||
sbin/fsck_ffs/dir.c
445
adjust(struct inodesc *idesc, int lcnt)
sbin/fsck_ffs/dir.c
451
dp = ginode(idesc->id_number);
sbin/fsck_ffs/dir.c
460
clri(idesc, "UNREF", 1);
sbin/fsck_ffs/dir.c
470
if (linkup(idesc->id_number, (ino_t)0, NULL) == 0) {
sbin/fsck_ffs/dir.c
472
clri(idesc, "UNREF", 0);
sbin/fsck_ffs/dir.c
478
dp = ginode(idesc->id_number);
sbin/fsck_ffs/dir.c
483
pwarn("LINK COUNT %s", (lfdir == idesc->id_number) ? lfname :
sbin/fsck_ffs/dir.c
486
pinode(idesc->id_number);
sbin/fsck_ffs/dir.c
506
mkentry(struct inodesc *idesc)
sbin/fsck_ffs/dir.c
508
struct direct *dirp = idesc->id_dirp;
sbin/fsck_ffs/dir.c
512
newent.d_namlen = strlen(idesc->id_name);
sbin/fsck_ffs/dir.c
524
dirp->d_ino = iswap32(idesc->id_parent);
sbin/fsck_ffs/dir.c
527
dirp->d_type = inoinfo(idesc->id_parent)->ino_type;
sbin/fsck_ffs/dir.c
531
memmove(dirp->d_name, idesc->id_name, (size_t)newent.d_namlen + 1);
sbin/fsck_ffs/dir.c
544
chgino(struct inodesc *idesc)
sbin/fsck_ffs/dir.c
546
struct direct *dirp = idesc->id_dirp;
sbin/fsck_ffs/dir.c
548
if (memcmp(dirp->d_name, idesc->id_name, (int)dirp->d_namlen + 1))
sbin/fsck_ffs/dir.c
550
dirp->d_ino = iswap32(idesc->id_parent);
sbin/fsck_ffs/dir.c
552
dirp->d_type = inoinfo(idesc->id_parent)->ino_type;
sbin/fsck_ffs/dir.c
564
struct inodesc idesc;
sbin/fsck_ffs/dir.c
569
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ffs/dir.c
589
idesc.id_name = lfname;
sbin/fsck_ffs/dir.c
590
idesc.id_type = DATA;
sbin/fsck_ffs/dir.c
591
idesc.id_func = findino;
sbin/fsck_ffs/dir.c
592
idesc.id_number = UFS_ROOTINO;
sbin/fsck_ffs/dir.c
593
idesc.id_uid = iswap32(DIP(dp, uid));
sbin/fsck_ffs/dir.c
594
idesc.id_gid = iswap32(DIP(dp, gid));
sbin/fsck_ffs/dir.c
595
if ((ckinode(dp, &idesc) & FOUND) != 0) {
sbin/fsck_ffs/dir.c
596
lfdir = idesc.id_parent;
sbin/fsck_ffs/dir.c
647
idesc.id_type = ADDR;
sbin/fsck_ffs/dir.c
648
idesc.id_func = pass4check;
sbin/fsck_ffs/dir.c
649
idesc.id_number = oldlfdir;
sbin/fsck_ffs/dir.c
650
adjust(&idesc, inoinfo(oldlfdir)->ino_linkcnt + 1);
sbin/fsck_ffs/dir.c
693
struct inodesc idesc;
sbin/fsck_ffs/dir.c
697
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ffs/dir.c
698
idesc.id_type = DATA;
sbin/fsck_ffs/dir.c
699
idesc.id_func = chgino;
sbin/fsck_ffs/dir.c
700
idesc.id_number = dir;
sbin/fsck_ffs/dir.c
701
idesc.id_fix = DONTKNOW;
sbin/fsck_ffs/dir.c
702
idesc.id_name = name;
sbin/fsck_ffs/dir.c
703
idesc.id_parent = newnum; /* new value for name */
sbin/fsck_ffs/dir.c
704
idesc.id_uid = iswap32(DIP(dp, uid));
sbin/fsck_ffs/dir.c
705
idesc.id_gid = iswap32(DIP(dp, gid));
sbin/fsck_ffs/dir.c
706
return (ckinode(dp, &idesc));
sbin/fsck_ffs/dir.c
716
struct inodesc idesc;
sbin/fsck_ffs/dir.c
723
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ffs/dir.c
724
idesc.id_type = DATA;
sbin/fsck_ffs/dir.c
725
idesc.id_func = mkentry;
sbin/fsck_ffs/dir.c
726
idesc.id_number = parent;
sbin/fsck_ffs/dir.c
727
idesc.id_parent = ino; /* this is the inode to enter */
sbin/fsck_ffs/dir.c
728
idesc.id_fix = DONTKNOW;
sbin/fsck_ffs/dir.c
729
idesc.id_name = name;
sbin/fsck_ffs/dir.c
730
idesc.id_uid = iswap32(DIP(dp, uid));
sbin/fsck_ffs/dir.c
731
idesc.id_gid = iswap32(DIP(dp, gid));
sbin/fsck_ffs/dir.c
737
if ((ckinode(dp, &idesc) & ALTERED) != 0)
sbin/fsck_ffs/dir.c
743
update_uquot(idesc.id_number, idesc.id_uid, idesc.id_gid,
sbin/fsck_ffs/dir.c
745
return (ckinode(dp, &idesc) & ALTERED);
sbin/fsck_ffs/inode.c
101
idesc->id_numfrags =
sbin/fsck_ffs/inode.c
104
idesc->id_numfrags = sblock->fs_frag;
sbin/fsck_ffs/inode.c
106
if (idesc->id_type == DATA && ndb >= 0) {
sbin/fsck_ffs/inode.c
110
idesc->id_number, idesc->id_number);
sbin/fsck_ffs/inode.c
114
dp = ginode(idesc->id_number);
sbin/fsck_ffs/inode.c
126
idesc->id_blkno = iswap64(dino.dp2.di_db[i]);
sbin/fsck_ffs/inode.c
128
idesc->id_blkno = iswap32(dino.dp1.di_db[i]);
sbin/fsck_ffs/inode.c
129
if (idesc->id_type != DATA)
sbin/fsck_ffs/inode.c
130
ret = (*idesc->id_func)(idesc);
sbin/fsck_ffs/inode.c
132
ret = dirscan(idesc);
sbin/fsck_ffs/inode.c
136
idesc->id_numfrags = sblock->fs_frag;
sbin/fsck_ffs/inode.c
142
idesc->id_blkno = iswap64(dino.dp2.di_ib[i]);
sbin/fsck_ffs/inode.c
144
idesc->id_blkno = iswap32(dino.dp1.di_ib[i]);
sbin/fsck_ffs/inode.c
145
ret = iblock(idesc, i + 1, remsize);
sbin/fsck_ffs/inode.c
149
if (idesc->id_type == DATA && remsize > 0) {
sbin/fsck_ffs/inode.c
153
idesc->id_number, idesc->id_number);
sbin/fsck_ffs/inode.c
157
dp = ginode(idesc->id_number);
sbin/fsck_ffs/inode.c
177
iblock(struct inodesc *idesc, long ilevel, u_int64_t isize)
sbin/fsck_ffs/inode.c
186
if (idesc->id_type != DATA) {
sbin/fsck_ffs/inode.c
187
func = idesc->id_func;
sbin/fsck_ffs/inode.c
188
if (((n = (*func)(idesc)) & KEEPON) == 0)
sbin/fsck_ffs/inode.c
192
if (chkrange(idesc->id_blkno, idesc->id_numfrags))
sbin/fsck_ffs/inode.c
194
bp = getdatablk(idesc->id_blkno, sblock->fs_bsize);
sbin/fsck_ffs/inode.c
215
if (idesc->id_func == pass1check && nif < FFS_NINDIR(sblock)) {
sbin/fsck_ffs/inode.c
221
(unsigned long long)idesc->id_number);
sbin/fsck_ffs/inode.c
222
if (dofix(idesc, buf)) {
sbin/fsck_ffs/inode.c
233
idesc->id_blkno = iswap64(bp->b_un.b_indir2[i]);
sbin/fsck_ffs/inode.c
235
idesc->id_blkno = iswap32(bp->b_un.b_indir1[i]);
sbin/fsck_ffs/inode.c
237
n = (*func)(idesc);
sbin/fsck_ffs/inode.c
239
n = iblock(idesc, ilevel, isize);
sbin/fsck_ffs/inode.c
245
if (idesc->id_type == DATA && isize > 0) {
sbin/fsck_ffs/inode.c
249
idesc->id_number, idesc->id_number);
sbin/fsck_ffs/inode.c
253
dp = ginode(idesc->id_number);
sbin/fsck_ffs/inode.c
575
clri(struct inodesc *idesc, const char *type, int flag)
sbin/fsck_ffs/inode.c
579
dp = ginode(idesc->id_number);
sbin/fsck_ffs/inode.c
583
pinode(idesc->id_number);
sbin/fsck_ffs/inode.c
593
if (idesc->id_type != SNAP)
sbin/fsck_ffs/inode.c
594
update_uquot(idesc->id_number,
sbin/fsck_ffs/inode.c
595
idesc->id_uid, idesc->id_gid, 0, -1);
sbin/fsck_ffs/inode.c
596
(void)ckinode(dp, idesc);
sbin/fsck_ffs/inode.c
598
inoinfo(idesc->id_number)->ino_state = USTATE;
sbin/fsck_ffs/inode.c
605
findname(struct inodesc *idesc)
sbin/fsck_ffs/inode.c
607
struct direct *dirp = idesc->id_dirp;
sbin/fsck_ffs/inode.c
611
if (iswap32(dirp->d_ino) != idesc->id_parent || idesc->id_entryno < 2) {
sbin/fsck_ffs/inode.c
612
idesc->id_entryno++;
sbin/fsck_ffs/inode.c
620
buf = __UNCONST(idesc->id_name);
sbin/fsck_ffs/inode.c
626
findino(struct inodesc *idesc)
sbin/fsck_ffs/inode.c
628
struct direct *dirp = idesc->id_dirp;
sbin/fsck_ffs/inode.c
632
if (strcmp(dirp->d_name, idesc->id_name) == 0 &&
sbin/fsck_ffs/inode.c
634
idesc->id_parent = iswap32(dirp->d_ino);
sbin/fsck_ffs/inode.c
641
clearentry(struct inodesc *idesc)
sbin/fsck_ffs/inode.c
643
struct direct *dirp = idesc->id_dirp;
sbin/fsck_ffs/inode.c
645
if (dirp->d_ino != idesc->id_parent || idesc->id_entryno < 2) {
sbin/fsck_ffs/inode.c
646
idesc->id_entryno++;
sbin/fsck_ffs/inode.c
73
ckinode(union dinode *dp, struct inodesc *idesc)
sbin/fsck_ffs/inode.c
829
struct inodesc idesc;
sbin/fsck_ffs/inode.c
83
if (idesc->id_fix != IGNORE)
sbin/fsck_ffs/inode.c
84
idesc->id_fix = DONTKNOW;
sbin/fsck_ffs/inode.c
844
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ffs/inode.c
845
idesc.id_func = pass4check;
sbin/fsck_ffs/inode.c
846
idesc.id_number = ino;
sbin/fsck_ffs/inode.c
848
idesc.id_uid = iswap32(DIP(dp, uid));
sbin/fsck_ffs/inode.c
849
idesc.id_gid = iswap32(DIP(dp, gid));
sbin/fsck_ffs/inode.c
85
idesc->id_entryno = 0;
sbin/fsck_ffs/inode.c
851
idesc.id_type = SNAP;
sbin/fsck_ffs/inode.c
853
idesc.id_type = ADDR;
sbin/fsck_ffs/inode.c
854
(void)ckinode(dp, &idesc);
sbin/fsck_ffs/inode.c
858
if (idesc.id_type != SNAP)
sbin/fsck_ffs/inode.c
859
update_uquot(idesc.id_number,
sbin/fsck_ffs/inode.c
86
idesc->id_filesize = iswap64(DIP(dp, size));
sbin/fsck_ffs/inode.c
860
idesc.id_uid, idesc.id_gid, 0, -1);
sbin/fsck_ffs/inode.c
89
(idesc->id_filesize < sblock->fs_maxsymlinklen ||
sbin/fsck_ffs/inode.c
90
(isappleufs && (idesc->id_filesize < APPLEUFS_MAXSYMLINKLEN)) ||
sbin/fsck_ffs/pass1.c
178
checkinode(inumber, &idesc);
sbin/fsck_ffs/pass1.c
229
checkinode(ino_t inumber, struct inodesc *idesc)
sbin/fsck_ffs/pass1.c
418
idesc->id_number = inumber;
sbin/fsck_ffs/pass1.c
419
idesc->id_uid = iswap32(DIP(dp, uid));
sbin/fsck_ffs/pass1.c
420
idesc->id_gid = iswap32(DIP(dp, gid));
sbin/fsck_ffs/pass1.c
422
idesc->id_type = SNAP;
sbin/fsck_ffs/pass1.c
424
idesc->id_type = ADDR;
sbin/fsck_ffs/pass1.c
425
(void)ckinode(dp, idesc);
sbin/fsck_ffs/pass1.c
445
idesc->id_type = ADDR;
sbin/fsck_ffs/pass1.c
450
idesc->id_numfrags = ffs_numfrags(sblock,
sbin/fsck_ffs/pass1.c
453
idesc->id_numfrags = sblock->fs_frag;
sbin/fsck_ffs/pass1.c
456
idesc->id_blkno = iswap64(dp->dp2.di_extb[j]);
sbin/fsck_ffs/pass1.c
457
ret = (*idesc->id_func)(idesc);
sbin/fsck_ffs/pass1.c
462
idesc->id_entryno *= btodb(sblock->fs_fsize);
sbin/fsck_ffs/pass1.c
467
if (blocks != idesc->id_entryno) {
sbin/fsck_ffs/pass1.c
470
(long long)idesc->id_entryno);
sbin/fsck_ffs/pass1.c
479
dp->dp2.di_blocks = iswap64(idesc->id_entryno);
sbin/fsck_ffs/pass1.c
481
dp->dp1.di_blocks = iswap32((int32_t)idesc->id_entryno);
sbin/fsck_ffs/pass1.c
484
if (idesc->id_type != SNAP)
sbin/fsck_ffs/pass1.c
485
update_uquot(inumber, idesc->id_uid, idesc->id_gid,
sbin/fsck_ffs/pass1.c
486
idesc->id_entryno, 1);
sbin/fsck_ffs/pass1.c
501
pass1check(struct inodesc *idesc)
sbin/fsck_ffs/pass1.c
505
daddr_t blkno = idesc->id_blkno;
sbin/fsck_ffs/pass1.c
509
if (idesc->id_type == SNAP) {
sbin/fsck_ffs/pass1.c
513
if ((anyout = chkrange(blkno, idesc->id_numfrags)) != 0) {
sbin/fsck_ffs/pass1.c
514
blkerror(idesc->id_number, "BAD", blkno);
sbin/fsck_ffs/pass1.c
517
(unsigned long long)idesc->id_number);
sbin/fsck_ffs/pass1.c
528
for (nfrags = idesc->id_numfrags; nfrags > 0; blkno++, nfrags--) {
sbin/fsck_ffs/pass1.c
535
blkerror(idesc->id_number, "DUP", blkno);
sbin/fsck_ffs/pass1.c
538
(unsigned long long)idesc->id_number);
sbin/fsck_ffs/pass1.c
576
idesc->id_entryno++;
sbin/fsck_ffs/pass1.c
73
struct inodesc idesc;
sbin/fsck_ffs/pass1.c
97
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ffs/pass1.c
98
idesc.id_func = pass1check;
sbin/fsck_ffs/pass1b.c
100
pass1bcheck(struct inodesc *idesc)
sbin/fsck_ffs/pass1b.c
104
daddr_t blkno = idesc->id_blkno;
sbin/fsck_ffs/pass1b.c
106
for (nfrags = idesc->id_numfrags; nfrags > 0; blkno++, nfrags--) {
sbin/fsck_ffs/pass1b.c
111
blkerror(idesc->id_number, "DUP", blkno);
sbin/fsck_ffs/pass1b.c
61
struct inodesc idesc;
sbin/fsck_ffs/pass1b.c
64
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ffs/pass1b.c
65
idesc.id_type = ADDR;
sbin/fsck_ffs/pass1b.c
66
idesc.id_func = pass1bcheck;
sbin/fsck_ffs/pass1b.c
86
idesc.id_number = inumber;
sbin/fsck_ffs/pass1b.c
87
idesc.id_uid = iswap32(DIP(dp, uid));
sbin/fsck_ffs/pass1b.c
88
idesc.id_gid = iswap32(DIP(dp, gid));
sbin/fsck_ffs/pass1b.c
90
(ckinode(dp, &idesc) & STOP))
sbin/fsck_ffs/pass2.c
324
pass2check(struct inodesc *idesc)
sbin/fsck_ffs/pass2.c
326
struct direct *dirp = idesc->id_dirp;
sbin/fsck_ffs/pass2.c
347
if (idesc->id_entryno != 0)
sbin/fsck_ffs/pass2.c
350
if (iswap32(dirp->d_ino) != idesc->id_number) {
sbin/fsck_ffs/pass2.c
351
direrror(idesc->id_number, "BAD INODE NUMBER FOR '.'");
sbin/fsck_ffs/pass2.c
353
dirp->d_ino = iswap32(idesc->id_number);
sbin/fsck_ffs/pass2.c
359
direrror(idesc->id_number, "BAD TYPE VALUE FOR '.'");
sbin/fsck_ffs/pass2.c
368
proto.d_ino = iswap32(idesc->id_number);
sbin/fsck_ffs/pass2.c
387
direrror(idesc->id_number, "MISSING '.'");
sbin/fsck_ffs/pass2.c
410
idesc->id_entryno++;
sbin/fsck_ffs/pass2.c
411
inoinfo(idesc->id_number)->ino_linkcnt--;
sbin/fsck_ffs/pass2.c
416
if (idesc->id_entryno > 1)
sbin/fsck_ffs/pass2.c
418
inp = getinoinfo(idesc->id_number);
sbin/fsck_ffs/pass2.c
438
if (idesc->id_entryno == 0) {
sbin/fsck_ffs/pass2.c
444
idesc->id_entryno++;
sbin/fsck_ffs/pass2.c
453
direrror(idesc->id_number, "BAD TYPE VALUE FOR '..'");
sbin/fsck_ffs/pass2.c
462
fileerror(inp->i_parent != 0 ? inp->i_parent : idesc->id_number,
sbin/fsck_ffs/pass2.c
463
idesc->id_number, "MISSING '..'");
sbin/fsck_ffs/pass2.c
478
idesc->id_entryno++;
sbin/fsck_ffs/pass2.c
494
idesc->id_entryno++;
sbin/fsck_ffs/pass2.c
509
idesc->id_entryno++;
sbin/fsck_ffs/pass2.c
521
idesc->id_entryno >= 2) {
sbin/fsck_ffs/pass2.c
523
direrror(idesc->id_number, "EXTRA '.' ENTRY");
sbin/fsck_ffs/pass2.c
532
direrror(idesc->id_number, "EXTRA '..' ENTRY");
sbin/fsck_ffs/pass2.c
541
idesc->id_entryno++;
sbin/fsck_ffs/pass2.c
544
fileerror(idesc->id_number, dirp->d_ino, "I OUT OF RANGE");
sbin/fsck_ffs/pass2.c
551
fileerror(idesc->id_number, iswap32(dirp->d_ino), "BAD WHITEOUT ENTRY");
sbin/fsck_ffs/pass2.c
563
if (idesc->id_entryno <= 2)
sbin/fsck_ffs/pass2.c
565
fileerror(idesc->id_number, iswap32(dirp->d_ino), "UNALLOCATED");
sbin/fsck_ffs/pass2.c
573
if (idesc->id_entryno <= 2)
sbin/fsck_ffs/pass2.c
583
fileerror(idesc->id_number, iswap32(dirp->d_ino), errmsg);
sbin/fsck_ffs/pass2.c
595
if (inp->i_parent != 0 && idesc->id_entryno > 2) {
sbin/fsck_ffs/pass2.c
597
idesc->id_number, idesc->id_number);
sbin/fsck_ffs/pass2.c
608
if (idesc->id_entryno > 2)
sbin/fsck_ffs/pass2.c
609
inp->i_parent = idesc->id_number;
sbin/fsck_ffs/pass2.c
614
fileerror(idesc->id_number, iswap32(dirp->d_ino),
sbin/fsck_ffs/pass3.c
114
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ffs/pass3.c
115
idesc.id_type = DATA;
sbin/fsck_ffs/pass3.c
116
idesc.id_number = inp->i_parent;
sbin/fsck_ffs/pass3.c
117
idesc.id_parent = orphan;
sbin/fsck_ffs/pass3.c
118
idesc.id_func = findname;
sbin/fsck_ffs/pass3.c
119
idesc.id_name = namebuf;
sbin/fsck_ffs/pass3.c
120
idesc.id_uid = iswap32(DIP(dp, uid));
sbin/fsck_ffs/pass3.c
121
idesc.id_gid = iswap32(DIP(dp, gid));
sbin/fsck_ffs/pass3.c
122
if ((ckinode(dp, &idesc) & FOUND) == 0)
sbin/fsck_ffs/pass3.c
125
idesc.id_func = clearentry;
sbin/fsck_ffs/pass3.c
126
if (ckinode(ginode(inp->i_parent), &idesc) & FOUND)
sbin/fsck_ffs/pass3.c
60
struct inodesc idesc;
sbin/fsck_ffs/pass4.c
114
adjust(&idesc, (short)n);
sbin/fsck_ffs/pass4.c
124
clri(&idesc, "UNREF", 1);
sbin/fsck_ffs/pass4.c
130
clri(&idesc, "UNREF", 1);
sbin/fsck_ffs/pass4.c
135
clri(&idesc, "ZERO LENGTH", 1);
sbin/fsck_ffs/pass4.c
140
clri(&idesc, "BAD/DUP", 1);
sbin/fsck_ffs/pass4.c
160
pass4check(struct inodesc *idesc)
sbin/fsck_ffs/pass4.c
164
daddr_t blkno = idesc->id_blkno;
sbin/fsck_ffs/pass4.c
177
for (nfrags = idesc->id_numfrags; nfrags > 0; blkno++, nfrags--) {
sbin/fsck_ffs/pass4.c
197
if (idesc->id_type != SNAP) {
sbin/fsck_ffs/pass4.c
198
update_uquot(idesc->id_number,
sbin/fsck_ffs/pass4.c
199
idesc->id_uid, idesc->id_gid,
sbin/fsck_ffs/pass4.c
202
if (idesc->id_numfrags != sblock->fs_frag &&
sbin/fsck_ffs/pass4.c
211
if (cgp && res != SKIP && idesc->id_numfrags == sblock->fs_frag) {
sbin/fsck_ffs/pass4.c
216
ffs_fragstoblks(sblock, dtogd(sblock, idesc->id_blkno)), 1);
sbin/fsck_ffs/pass4.c
64
struct inodesc idesc;
sbin/fsck_ffs/pass4.c
70
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ffs/pass4.c
71
idesc.id_func = pass4check;
sbin/fsck_ffs/pass4.c
91
idesc.id_number = inumber;
sbin/fsck_ffs/pass4.c
92
idesc.id_uid = iswap32(DIP(dp, uid));
sbin/fsck_ffs/pass4.c
93
idesc.id_gid = iswap32(DIP(dp, gid));
sbin/fsck_ffs/pass4.c
95
idesc.id_type = SNAP;
sbin/fsck_ffs/pass4.c
97
idesc.id_type = ADDR;
sbin/fsck_ffs/pass5.c
195
memset(&idesc[0], 0, sizeof idesc);
sbin/fsck_ffs/pass5.c
197
idesc[i].id_type = ADDR;
sbin/fsck_ffs/pass5.c
199
idesc[i].id_fix = FIX;
sbin/fsck_ffs/pass5.c
259
dofix(&idesc[3],
sbin/fsck_ffs/pass5.c
424
if (dofix(&idesc[0], "FREE BLK COUNT(S) WRONG IN SUPERBLK")) {
sbin/fsck_ffs/pass5.c
438
if (dofix(&idesc[2], "SUMMARY INFORMATION BAD")) {
sbin/fsck_ffs/pass5.c
477
!= 0 && dofix(&idesc[1], "BLK(S) MISSING IN BIT MAPS")) {
sbin/fsck_ffs/pass5.c
496
if (dofix(&idesc[0], "FREE BLK COUNT(S) WRONG IN SUPERBLK")) {
sbin/fsck_ffs/pass5.c
74
struct inodesc idesc[4];
sbin/fsck_ffs/utilities.c
464
struct inodesc idesc;
sbin/fsck_ffs/utilities.c
466
memset(&idesc, 0, sizeof(idesc));
sbin/fsck_ffs/utilities.c
467
idesc.id_blkno = blkno;
sbin/fsck_ffs/utilities.c
468
idesc.id_numfrags = frags;
sbin/fsck_ffs/utilities.c
469
(void)pass4check(&idesc);
sbin/fsck_ffs/utilities.c
480
struct inodesc idesc;
sbin/fsck_ffs/utilities.c
494
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_ffs/utilities.c
495
idesc.id_type = DATA;
sbin/fsck_ffs/utilities.c
496
idesc.id_fix = IGNORE;
sbin/fsck_ffs/utilities.c
500
idesc.id_parent = curdir;
sbin/fsck_ffs/utilities.c
504
idesc.id_number = ino;
sbin/fsck_ffs/utilities.c
505
idesc.id_func = findino;
sbin/fsck_ffs/utilities.c
506
idesc.id_name = "..";
sbin/fsck_ffs/utilities.c
507
if ((ckinode(ginode(ino), &idesc) & FOUND) == 0)
sbin/fsck_ffs/utilities.c
510
idesc.id_number = idesc.id_parent;
sbin/fsck_ffs/utilities.c
511
idesc.id_parent = ino;
sbin/fsck_ffs/utilities.c
512
idesc.id_func = findname;
sbin/fsck_ffs/utilities.c
513
idesc.id_name = namebuf;
sbin/fsck_ffs/utilities.c
514
if ((ckinode(ginode(idesc.id_number), &idesc)&FOUND) == 0)
sbin/fsck_ffs/utilities.c
522
ino = idesc.id_number;
sbin/fsck_ffs/utilities.c
534
dofix(struct inodesc *idesc, const char *msg)
sbin/fsck_ffs/utilities.c
537
switch (idesc->id_fix) {
sbin/fsck_ffs/utilities.c
540
if (idesc->id_type == DATA)
sbin/fsck_ffs/utilities.c
541
direrror(idesc->id_number, msg);
sbin/fsck_ffs/utilities.c
546
idesc->id_fix = FIX;
sbin/fsck_ffs/utilities.c
550
idesc->id_fix = NOFIX;
sbin/fsck_ffs/utilities.c
553
idesc->id_fix = FIX;
sbin/fsck_ffs/utilities.c
564
errexit("UNKNOWN INODESC FIX MODE %d", idesc->id_fix);
sbin/fsck_lfs/dir.c
131
dirscan(struct inodesc *idesc)
sbin/fsck_lfs/dir.c
140
if (idesc->id_type != DATA)
sbin/fsck_lfs/dir.c
141
errexit("wrong type to dirscan %d", idesc->id_type);
sbin/fsck_lfs/dir.c
142
if (idesc->id_entryno == 0 &&
sbin/fsck_lfs/dir.c
143
(idesc->id_filesize & (LFS_DIRBLKSIZ - 1)) != 0)
sbin/fsck_lfs/dir.c
144
idesc->id_filesize = roundup(idesc->id_filesize, LFS_DIRBLKSIZ);
sbin/fsck_lfs/dir.c
145
blksiz = idesc->id_numfrags * lfs_sb_getfsize(fs);
sbin/fsck_lfs/dir.c
146
if (chkrange(idesc->id_blkno, idesc->id_numfrags)) {
sbin/fsck_lfs/dir.c
147
idesc->id_filesize -= blksiz;
sbin/fsck_lfs/dir.c
150
idesc->id_loc = 0;
sbin/fsck_lfs/dir.c
152
vp = vget(fs, idesc->id_number);
sbin/fsck_lfs/dir.c
153
for (dp = fsck_readdir(vp, idesc); dp != NULL;
sbin/fsck_lfs/dir.c
154
dp = fsck_readdir(vp, idesc)) {
sbin/fsck_lfs/dir.c
157
idesc->id_dirp = (LFS_DIRHEADER *) dbuf;
sbin/fsck_lfs/dir.c
158
if ((n = (*idesc->id_func) (idesc)) & ALTERED) {
sbin/fsck_lfs/dir.c
159
bread(vp, idesc->id_lblkno, blksiz, 0, &bp);
sbin/fsck_lfs/dir.c
160
memcpy(bp->b_data + idesc->id_loc - dsize, dbuf,
sbin/fsck_lfs/dir.c
168
return (idesc->id_filesize > 0 ? KEEPON : STOP);
sbin/fsck_lfs/dir.c
175
fsck_readdir(struct uvnode *vp, struct inodesc *idesc)
sbin/fsck_lfs/dir.c
181
blksiz = idesc->id_numfrags * lfs_sb_getfsize(fs);
sbin/fsck_lfs/dir.c
182
bread(vp, idesc->id_lblkno, blksiz, 0, &bp);
sbin/fsck_lfs/dir.c
183
if (idesc->id_loc % LFS_DIRBLKSIZ == 0 && idesc->id_filesize > 0 &&
sbin/fsck_lfs/dir.c
184
idesc->id_loc < blksiz) {
sbin/fsck_lfs/dir.c
185
dp = (LFS_DIRHEADER *) (bp->b_data + idesc->id_loc);
sbin/fsck_lfs/dir.c
186
if (dircheck(idesc, dp))
sbin/fsck_lfs/dir.c
189
if (idesc->id_fix == IGNORE)
sbin/fsck_lfs/dir.c
191
fix = dofix(idesc, "DIRECTORY CORRUPTED");
sbin/fsck_lfs/dir.c
192
bread(vp, idesc->id_lblkno, blksiz, 0, &bp);
sbin/fsck_lfs/dir.c
193
dp = (LFS_DIRHEADER *) (bp->b_data + idesc->id_loc);
sbin/fsck_lfs/dir.c
205
idesc->id_loc += LFS_DIRBLKSIZ;
sbin/fsck_lfs/dir.c
206
idesc->id_filesize -= LFS_DIRBLKSIZ;
sbin/fsck_lfs/dir.c
210
if (idesc->id_filesize <= 0 || idesc->id_loc >= blksiz) {
sbin/fsck_lfs/dir.c
214
dploc = idesc->id_loc;
sbin/fsck_lfs/dir.c
216
idesc->id_loc += lfs_dir_getreclen(fs, dp);
sbin/fsck_lfs/dir.c
217
idesc->id_filesize -= lfs_dir_getreclen(fs, dp);
sbin/fsck_lfs/dir.c
218
if ((idesc->id_loc % LFS_DIRBLKSIZ) == 0) {
sbin/fsck_lfs/dir.c
222
ndp = (LFS_DIRHEADER *) (bp->b_data + idesc->id_loc);
sbin/fsck_lfs/dir.c
223
if (idesc->id_loc < blksiz && idesc->id_filesize > 0 &&
sbin/fsck_lfs/dir.c
224
dircheck(idesc, ndp) == 0) {
sbin/fsck_lfs/dir.c
226
size = LFS_DIRBLKSIZ - (idesc->id_loc % LFS_DIRBLKSIZ);
sbin/fsck_lfs/dir.c
227
idesc->id_loc += size;
sbin/fsck_lfs/dir.c
228
idesc->id_filesize -= size;
sbin/fsck_lfs/dir.c
229
if (idesc->id_fix == IGNORE)
sbin/fsck_lfs/dir.c
231
fix = dofix(idesc, "DIRECTORY CORRUPTED");
sbin/fsck_lfs/dir.c
232
bread(vp, idesc->id_lblkno, blksiz, 0, &bp);
sbin/fsck_lfs/dir.c
250
dircheck(struct inodesc *idesc, LFS_DIRHEADER *dp)
sbin/fsck_lfs/dir.c
257
spaceleft = LFS_DIRBLKSIZ - (idesc->id_loc % LFS_DIRBLKSIZ);
sbin/fsck_lfs/dir.c
276
idesc->id_filesize < size ||
sbin/fsck_lfs/dir.c
331
adjust(struct inodesc *idesc, short lcnt)
sbin/fsck_lfs/dir.c
342
vp = vget(fs, idesc->id_number);
sbin/fsck_lfs/dir.c
345
if (linkup(idesc->id_number, (ino_t) 0) == 0)
sbin/fsck_lfs/dir.c
346
clri(idesc, "UNREF", 0);
sbin/fsck_lfs/dir.c
348
pwarn("LINK COUNT %s", (lfdir == idesc->id_number) ? lfname :
sbin/fsck_lfs/dir.c
350
pinode(idesc->id_number);
sbin/fsck_lfs/dir.c
369
mkentry(struct inodesc *idesc)
sbin/fsck_lfs/dir.c
371
LFS_DIRHEADER *dirp = idesc->id_dirp;
sbin/fsck_lfs/dir.c
376
namlen = strlen(idesc->id_name);
sbin/fsck_lfs/dir.c
397
lfs_dir_setino(fs, dirp, idesc->id_parent);
sbin/fsck_lfs/dir.c
399
lfs_dir_settype(fs, dirp, typemap[idesc->id_parent]);
sbin/fsck_lfs/dir.c
401
lfs_copydirname(fs, lfs_dir_nameptr(fs, dirp), idesc->id_name,
sbin/fsck_lfs/dir.c
408
chgino(struct inodesc *idesc)
sbin/fsck_lfs/dir.c
410
LFS_DIRHEADER *dirp = idesc->id_dirp;
sbin/fsck_lfs/dir.c
414
if (memcmp(lfs_dir_nameptr(fs, dirp), idesc->id_name, namlen + 1))
sbin/fsck_lfs/dir.c
416
lfs_dir_setino(fs, dirp, idesc->id_parent);
sbin/fsck_lfs/dir.c
417
lfs_dir_settype(fs, dirp, typemap[idesc->id_parent]);
sbin/fsck_lfs/dir.c
427
struct inodesc idesc;
sbin/fsck_lfs/dir.c
431
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_lfs/dir.c
445
idesc.id_name = lfname;
sbin/fsck_lfs/dir.c
446
idesc.id_type = DATA;
sbin/fsck_lfs/dir.c
447
idesc.id_func = findino;
sbin/fsck_lfs/dir.c
448
idesc.id_number = ULFS_ROOTINO;
sbin/fsck_lfs/dir.c
449
if ((ckinode(dp, &idesc) & FOUND) != 0) {
sbin/fsck_lfs/dir.c
450
lfdir = idesc.id_parent;
sbin/fsck_lfs/dir.c
490
idesc.id_type = ADDR;
sbin/fsck_lfs/dir.c
491
idesc.id_func = pass4check;
sbin/fsck_lfs/dir.c
492
idesc.id_number = oldlfdir;
sbin/fsck_lfs/dir.c
493
adjust(&idesc, lncntp[oldlfdir] + 1);
sbin/fsck_lfs/dir.c
534
struct inodesc idesc;
sbin/fsck_lfs/dir.c
536
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_lfs/dir.c
537
idesc.id_type = DATA;
sbin/fsck_lfs/dir.c
538
idesc.id_func = chgino;
sbin/fsck_lfs/dir.c
539
idesc.id_number = dir;
sbin/fsck_lfs/dir.c
540
idesc.id_fix = DONTKNOW;
sbin/fsck_lfs/dir.c
541
idesc.id_name = name;
sbin/fsck_lfs/dir.c
542
idesc.id_parent = newnum; /* new value for name */
sbin/fsck_lfs/dir.c
544
return (ckinode(ginode(dir), &idesc));
sbin/fsck_lfs/dir.c
554
struct inodesc idesc;
sbin/fsck_lfs/dir.c
562
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_lfs/dir.c
563
idesc.id_type = DATA;
sbin/fsck_lfs/dir.c
564
idesc.id_func = mkentry;
sbin/fsck_lfs/dir.c
565
idesc.id_number = parent;
sbin/fsck_lfs/dir.c
566
idesc.id_parent = ino; /* this is the inode to enter */
sbin/fsck_lfs/dir.c
567
idesc.id_fix = DONTKNOW;
sbin/fsck_lfs/dir.c
568
idesc.id_name = name;
sbin/fsck_lfs/dir.c
577
if ((ckinode(dp, &idesc) & ALTERED) != 0)
sbin/fsck_lfs/dir.c
584
return (ckinode(dp, &idesc) & ALTERED);
sbin/fsck_lfs/inode.c
125
ckinode(union lfs_dinode *dp, struct inodesc *idesc)
sbin/fsck_lfs/inode.c
135
if (idesc->id_fix != IGNORE)
sbin/fsck_lfs/inode.c
136
idesc->id_fix = DONTKNOW;
sbin/fsck_lfs/inode.c
137
idesc->id_entryno = 0;
sbin/fsck_lfs/inode.c
138
idesc->id_filesize = lfs_dino_getsize(fs, dp);
sbin/fsck_lfs/inode.c
149
thisvp = vget(fs, idesc->id_number);
sbin/fsck_lfs/inode.c
153
idesc->id_numfrags =
sbin/fsck_lfs/inode.c
157
idesc->id_numfrags =
sbin/fsck_lfs/inode.c
160
idesc->id_numfrags = lfs_sb_getfrag(fs);
sbin/fsck_lfs/inode.c
163
if (idesc->id_type == DATA && ndb >= 0) {
sbin/fsck_lfs/inode.c
166
idesc->id_number, idesc->id_number);
sbin/fsck_lfs/inode.c
168
pathbuf, (long long)idesc->id_number);
sbin/fsck_lfs/inode.c
170
vp = vget(fs, idesc->id_number);
sbin/fsck_lfs/inode.c
183
idesc->id_blkno = pbn;
sbin/fsck_lfs/inode.c
184
idesc->id_lblkno = lbn;
sbin/fsck_lfs/inode.c
185
if (idesc->id_type == ADDR) {
sbin/fsck_lfs/inode.c
186
ret = (*idesc->id_func) (idesc);
sbin/fsck_lfs/inode.c
188
ret = dirscan(idesc);
sbin/fsck_lfs/inode.c
192
idesc->id_numfrags = lfs_sb_getfrag(fs);
sbin/fsck_lfs/inode.c
198
idesc->id_blkno = pbn;
sbin/fsck_lfs/inode.c
199
ret = iblock(idesc, n, remsize);
sbin/fsck_lfs/inode.c
203
if (idesc->id_type == DATA && remsize > 0) {
sbin/fsck_lfs/inode.c
206
idesc->id_number, idesc->id_number);
sbin/fsck_lfs/inode.c
208
pathbuf, (long long)idesc->id_number);
sbin/fsck_lfs/inode.c
210
vp = vget(fs, idesc->id_number);
sbin/fsck_lfs/inode.c
231
iblock(struct inodesc *idesc, long ilevel, u_int64_t isize)
sbin/fsck_lfs/inode.c
242
if (idesc->id_type == ADDR) {
sbin/fsck_lfs/inode.c
243
func = idesc->id_func;
sbin/fsck_lfs/inode.c
244
n = (*func) (idesc);
sbin/fsck_lfs/inode.c
249
if (chkrange(idesc->id_blkno, idesc->id_numfrags))
sbin/fsck_lfs/inode.c
253
bread(devvp, LFS_FSBTODB(fs, idesc->id_blkno), lfs_sb_getbsize(fs),
sbin/fsck_lfs/inode.c
262
if (idesc->id_func == pass1check && nif < LFS_NINDIR(fs)) {
sbin/fsck_lfs/inode.c
270
(unsigned long long)idesc->id_number);
sbin/fsck_lfs/inode.c
271
if (dofix(idesc, buf)) {
sbin/fsck_lfs/inode.c
281
idesc->id_blkno = found;
sbin/fsck_lfs/inode.c
286
idesc->id_lblkno++;
sbin/fsck_lfs/inode.c
287
n = (*func) (idesc);
sbin/fsck_lfs/inode.c
289
n = iblock(idesc, ilevel, isize);
sbin/fsck_lfs/inode.c
299
if (idesc->id_type == DATA && isize > 0) {
sbin/fsck_lfs/inode.c
302
idesc->id_number, idesc->id_number);
sbin/fsck_lfs/inode.c
304
pathbuf, (long long)idesc->id_number);
sbin/fsck_lfs/inode.c
306
vp = vget(fs, idesc->id_number);
sbin/fsck_lfs/inode.c
442
clri(struct inodesc * idesc, const char *type, int flag)
sbin/fsck_lfs/inode.c
446
vp = vget(fs, idesc->id_number);
sbin/fsck_lfs/inode.c
450
pinode(idesc->id_number);
sbin/fsck_lfs/inode.c
456
(void) ckinode(VTOD(vp), idesc);
sbin/fsck_lfs/inode.c
457
clearinode(idesc->id_number);
sbin/fsck_lfs/inode.c
458
statemap[idesc->id_number] = USTATE;
sbin/fsck_lfs/inode.c
501
findname(struct inodesc * idesc)
sbin/fsck_lfs/inode.c
503
LFS_DIRHEADER *dirp = idesc->id_dirp;
sbin/fsck_lfs/inode.c
507
if (lfs_dir_getino(fs, dirp) != idesc->id_parent)
sbin/fsck_lfs/inode.c
516
buf = __UNCONST(idesc->id_name);
sbin/fsck_lfs/inode.c
522
findino(struct inodesc * idesc)
sbin/fsck_lfs/inode.c
524
LFS_DIRHEADER *dirp = idesc->id_dirp;
sbin/fsck_lfs/inode.c
530
if (strcmp(lfs_dir_nameptr(fs, dirp), idesc->id_name) == 0 &&
sbin/fsck_lfs/inode.c
532
idesc->id_parent = ino;
sbin/fsck_lfs/inode.c
651
struct inodesc idesc;
sbin/fsck_lfs/inode.c
654
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_lfs/inode.c
655
idesc.id_type = ADDR;
sbin/fsck_lfs/inode.c
656
idesc.id_func = pass4check;
sbin/fsck_lfs/inode.c
657
idesc.id_number = ino;
sbin/fsck_lfs/inode.c
659
(void) ckinode(VTOD(vp), &idesc);
sbin/fsck_lfs/pass1.c
100
idesc.id_lblkno = 0;
sbin/fsck_lfs/pass1.c
149
checkinode(inumber, &idesc);
sbin/fsck_lfs/pass1.c
185
checkinode(ino_t inumber, struct inodesc * idesc)
sbin/fsck_lfs/pass1.c
324
idesc->id_number = inumber;
sbin/fsck_lfs/pass1.c
325
(void) ckinode(VTOD(vp), idesc);
sbin/fsck_lfs/pass1.c
326
if (lfs_dino_getblocks(fs, dp) != idesc->id_entryno) {
sbin/fsck_lfs/pass1.c
329
idesc->id_entryno);
sbin/fsck_lfs/pass1.c
334
lfs_dino_setblocks(fs, VTOD(vp), idesc->id_entryno);
sbin/fsck_lfs/pass1.c
350
pass1check(struct inodesc *idesc)
sbin/fsck_lfs/pass1.c
354
daddr_t blkno = idesc->id_blkno;
sbin/fsck_lfs/pass1.c
358
if ((anyout = chkrange(blkno, idesc->id_numfrags)) != 0) {
sbin/fsck_lfs/pass1.c
359
blkerror(idesc->id_number, "BAD", blkno);
sbin/fsck_lfs/pass1.c
362
(unsigned long long)idesc->id_number);
sbin/fsck_lfs/pass1.c
370
seg_table[lfs_dtosn(fs, blkno)].su_nbytes += idesc->id_numfrags * lfs_sb_getfsize(fs);
sbin/fsck_lfs/pass1.c
372
for (ndblks = idesc->id_numfrags; ndblks > 0; blkno++, ndblks--) {
sbin/fsck_lfs/pass1.c
380
setbmap(blkno, idesc->id_number);
sbin/fsck_lfs/pass1.c
383
blkerror(idesc->id_number, "DUP", blkno);
sbin/fsck_lfs/pass1.c
386
(long long)idesc->id_lblkno,
sbin/fsck_lfs/pass1.c
391
(unsigned long long)idesc->id_number);
sbin/fsck_lfs/pass1.c
416
idesc->id_entryno++;
sbin/fsck_lfs/pass1.c
88
struct inodesc idesc;
sbin/fsck_lfs/pass1.c
97
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_lfs/pass1.c
98
idesc.id_type = ADDR;
sbin/fsck_lfs/pass1.c
99
idesc.id_func = pass1check;
sbin/fsck_lfs/pass2.c
214
pass2check(struct inodesc * idesc)
sbin/fsck_lfs/pass2.c
216
LFS_DIRHEADER *dirp = idesc->id_dirp;
sbin/fsck_lfs/pass2.c
228
if (idesc->id_entryno != 0)
sbin/fsck_lfs/pass2.c
231
if (lfs_dir_getino(fs, dirp) != idesc->id_number) {
sbin/fsck_lfs/pass2.c
232
direrror(idesc->id_number, "BAD INODE NUMBER FOR '.'");
sbin/fsck_lfs/pass2.c
234
lfs_dir_setino(fs, dirp, idesc->id_number);
sbin/fsck_lfs/pass2.c
239
direrror(idesc->id_number, "BAD TYPE VALUE FOR '.'");
sbin/fsck_lfs/pass2.c
247
direrror(idesc->id_number, "MISSING '.'");
sbin/fsck_lfs/pass2.c
248
lfs_dir_setino(fs, &proto, idesc->id_number);
sbin/fsck_lfs/pass2.c
272
idesc->id_entryno++;
sbin/fsck_lfs/pass2.c
281
if (idesc->id_entryno > 1)
sbin/fsck_lfs/pass2.c
283
inp = getinoinfo(idesc->id_number);
sbin/fsck_lfs/pass2.c
289
if (idesc->id_entryno == 0) {
sbin/fsck_lfs/pass2.c
295
idesc->id_entryno++;
sbin/fsck_lfs/pass2.c
304
direrror(idesc->id_number, "BAD TYPE VALUE FOR '..'");
sbin/fsck_lfs/pass2.c
312
fileerror(inp->i_parent, idesc->id_number, "MISSING '..'");
sbin/fsck_lfs/pass2.c
317
fileerror(inp->i_parent, idesc->id_number, "MISSING '..'");
sbin/fsck_lfs/pass2.c
325
fileerror(inp->i_parent, idesc->id_number, "MISSING '..'");
sbin/fsck_lfs/pass2.c
333
idesc->id_entryno++;
sbin/fsck_lfs/pass2.c
342
idesc->id_entryno >= 2) {
sbin/fsck_lfs/pass2.c
344
direrror(idesc->id_number, "EXTRA '.' ENTRY");
sbin/fsck_lfs/pass2.c
352
direrror(idesc->id_number, "EXTRA '..' ENTRY");
sbin/fsck_lfs/pass2.c
360
idesc->id_entryno++;
sbin/fsck_lfs/pass2.c
363
fileerror(idesc->id_number, lfs_dir_getino(fs, dirp), "I OUT OF RANGE");
sbin/fsck_lfs/pass2.c
373
idesc->id_number == ULFS_ROOTINO) {
sbin/fsck_lfs/pass2.c
375
fileerror(idesc->id_number, lfs_dir_getino(fs, dirp),
sbin/fsck_lfs/pass2.c
385
fileerror(idesc->id_number, lfs_dir_getino(fs, dirp), "BAD WHITEOUT ENTRY");
sbin/fsck_lfs/pass2.c
395
if (idesc->id_entryno <= 2)
sbin/fsck_lfs/pass2.c
397
fileerror(idesc->id_number, lfs_dir_getino(fs, dirp),
sbin/fsck_lfs/pass2.c
404
if (idesc->id_entryno <= 2)
sbin/fsck_lfs/pass2.c
414
fileerror(idesc->id_number, lfs_dir_getino(fs, dirp), errmsg);
sbin/fsck_lfs/pass2.c
426
if (inp->i_parent != 0 && idesc->id_entryno > 2) {
sbin/fsck_lfs/pass2.c
428
idesc->id_number, idesc->id_number);
sbin/fsck_lfs/pass2.c
440
if (idesc->id_entryno > 2)
sbin/fsck_lfs/pass2.c
441
inp->i_parent = idesc->id_number;
sbin/fsck_lfs/pass2.c
446
fileerror(idesc->id_number,
sbin/fsck_lfs/pass4.c
105
clri(&idesc, "UNREF", 1);
sbin/fsck_lfs/pass4.c
112
clri(&idesc, "UNREF", 1);
sbin/fsck_lfs/pass4.c
116
if (check_orphan(&idesc))
sbin/fsck_lfs/pass4.c
122
clri(&idesc, msg, 1);
sbin/fsck_lfs/pass4.c
125
clri(&idesc, "BAD/DUP", 1);
sbin/fsck_lfs/pass4.c
129
if (check_orphan(&idesc))
sbin/fsck_lfs/pass4.c
131
clri(&idesc, "BAD/DUP", 1);
sbin/fsck_lfs/pass4.c
145
pass4check(struct inodesc * idesc)
sbin/fsck_lfs/pass4.c
149
daddr_t blkno = idesc->id_blkno;
sbin/fsck_lfs/pass4.c
155
for (ndblks = idesc->id_numfrags; ndblks > 0; blkno++, ndblks--) {
sbin/fsck_lfs/pass4.c
83
struct inodesc idesc;
sbin/fsck_lfs/pass4.c
86
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_lfs/pass4.c
87
idesc.id_type = ADDR;
sbin/fsck_lfs/pass4.c
88
idesc.id_func = pass4check;
sbin/fsck_lfs/pass4.c
90
idesc.id_number = inumber;
sbin/fsck_lfs/pass4.c
97
adjust(&idesc, (short) n);
sbin/fsck_lfs/pass6.c
214
struct inodesc idesc;
sbin/fsck_lfs/pass6.c
243
idesc.id_number = ino;
sbin/fsck_lfs/pass6.c
244
idesc.id_func = pass4check; /* Delete dinode and blocks */
sbin/fsck_lfs/pass6.c
245
idesc.id_type = ADDR;
sbin/fsck_lfs/pass6.c
246
idesc.id_lblkno = 0;
sbin/fsck_lfs/pass6.c
247
clri(&idesc, "unknown", 2); /* XXX magic number 2 */
sbin/fsck_lfs/pass6.c
283
pass6check(struct inodesc * idesc)
sbin/fsck_lfs/pass6.c
288
if (idesc->id_blkno == UNWRITTEN)
sbin/fsck_lfs/pass6.c
293
for (i = 0; i < idesc->id_numfrags; i++) {
sbin/fsck_lfs/pass6.c
294
sn = lfs_dtosn(fs, idesc->id_blkno + i);
sbin/fsck_lfs/pass6.c
302
idesc->id_blkno > lfs_sb_getoffset(fs)) {
sbin/fsck_lfs/pass6.c
308
clrbmap(idesc->id_blkno + i);
sbin/fsck_lfs/pass6.c
313
blkerror(idesc->id_number, "BAD", idesc->id_blkno);
sbin/fsck_lfs/pass6.c
316
(unsigned long long)idesc->id_number);
sbin/fsck_lfs/pass6.c
325
return pass1check(idesc);
sbin/fsck_lfs/pass6.c
553
struct inodesc idesc;
sbin/fsck_lfs/pass6.c
813
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_lfs/pass6.c
814
idesc.id_type = ADDR;
sbin/fsck_lfs/pass6.c
815
idesc.id_func = pass6check;
sbin/fsck_lfs/pass6.c
816
idesc.id_lblkno = 0;
sbin/fsck_lfs/pass6.c
820
checkinode(VTOI(vp)->i_number, &idesc);
sbin/fsck_lfs/utilities.c
179
struct inodesc idesc;
sbin/fsck_lfs/utilities.c
181
idesc.id_blkno = blkno;
sbin/fsck_lfs/utilities.c
182
idesc.id_numfrags = frags;
sbin/fsck_lfs/utilities.c
183
(void) pass4check(&idesc);
sbin/fsck_lfs/utilities.c
193
struct inodesc idesc;
sbin/fsck_lfs/utilities.c
206
memset(&idesc, 0, sizeof(struct inodesc));
sbin/fsck_lfs/utilities.c
207
idesc.id_type = DATA;
sbin/fsck_lfs/utilities.c
208
idesc.id_fix = IGNORE;
sbin/fsck_lfs/utilities.c
212
idesc.id_parent = curdir;
sbin/fsck_lfs/utilities.c
216
idesc.id_number = ino;
sbin/fsck_lfs/utilities.c
217
idesc.id_func = findino;
sbin/fsck_lfs/utilities.c
218
idesc.id_name = "..";
sbin/fsck_lfs/utilities.c
219
if ((ckinode(ginode(ino), &idesc) & FOUND) == 0)
sbin/fsck_lfs/utilities.c
222
idesc.id_number = idesc.id_parent;
sbin/fsck_lfs/utilities.c
223
idesc.id_parent = ino;
sbin/fsck_lfs/utilities.c
224
idesc.id_func = findname;
sbin/fsck_lfs/utilities.c
225
idesc.id_name = namebuf;
sbin/fsck_lfs/utilities.c
226
if (ginode(idesc.id_number) == NULL)
sbin/fsck_lfs/utilities.c
228
if ((ckinode(ginode(idesc.id_number), &idesc) & FOUND) == 0)
sbin/fsck_lfs/utilities.c
236
ino = idesc.id_number;
sbin/fsck_lfs/utilities.c
248
dofix(struct inodesc * idesc, const char *msg)
sbin/fsck_lfs/utilities.c
251
switch (idesc->id_fix) {
sbin/fsck_lfs/utilities.c
254
if (idesc->id_type == DATA)
sbin/fsck_lfs/utilities.c
255
direrror(idesc->id_number, msg);
sbin/fsck_lfs/utilities.c
260
idesc->id_fix = FIX;
sbin/fsck_lfs/utilities.c
264
idesc->id_fix = NOFIX;
sbin/fsck_lfs/utilities.c
267
idesc->id_fix = FIX;
sbin/fsck_lfs/utilities.c
278
err(EEXIT, "UNKNOWN INODESC FIX MODE %d", idesc->id_fix);
sbin/fsdb/fsdb.c
1014
struct inodesc idesc;
sbin/fsdb/fsdb.c
1018
idesc.id_number = curinum;
sbin/fsdb/fsdb.c
1019
idesc.id_func = findino;
sbin/fsdb/fsdb.c
1020
idesc.id_name = name;
sbin/fsdb/fsdb.c
1021
idesc.id_type = DATA;
sbin/fsdb/fsdb.c
1022
idesc.id_fix = IGNORE;
sbin/fsdb/fsdb.c
1023
if (ckinode(curinode, &idesc) & FOUND) {
sbin/fsdb/fsdb.c
1024
curinum = idesc.id_parent;
sbin/fsdb/fsdb.c
1103
chinumfunc(struct inodesc *idesc)
sbin/fsdb/fsdb.c
1105
struct direct *dirp = idesc->id_dirp;
sbin/fsdb/fsdb.c
1108
dirp->d_ino = iswap32(idesc->id_parent);
sbin/fsdb/fsdb.c
1118
struct inodesc idesc;
sbin/fsdb/fsdb.c
1130
idesc.id_number = curinum;
sbin/fsdb/fsdb.c
1131
idesc.id_func = chinumfunc;
sbin/fsdb/fsdb.c
1132
idesc.id_fix = IGNORE;
sbin/fsdb/fsdb.c
1133
idesc.id_type = DATA;
sbin/fsdb/fsdb.c
1134
idesc.id_parent = inum; /* XXX convenient hiding place */
sbin/fsdb/fsdb.c
1136
if (ckinode(curinode, &idesc) & FOUND)
sbin/fsdb/fsdb.c
1145
chnamefunc(struct inodesc *idesc)
sbin/fsdb/fsdb.c
1147
struct direct *dirp = idesc->id_dirp;
sbin/fsdb/fsdb.c
1152
testdir.d_namlen = strlen(idesc->id_name);
sbin/fsdb/fsdb.c
1155
strlcpy(dirp->d_name, idesc->id_name,
sbin/fsdb/fsdb.c
1168
struct inodesc idesc;
sbin/fsdb/fsdb.c
1179
idesc.id_number = curinum;
sbin/fsdb/fsdb.c
1180
idesc.id_func = chnamefunc;
sbin/fsdb/fsdb.c
1181
idesc.id_fix = IGNORE;
sbin/fsdb/fsdb.c
1182
idesc.id_type = DATA;
sbin/fsdb/fsdb.c
1183
idesc.id_name = argv[2];
sbin/fsdb/fsdb.c
1185
rval = ckinode(curinode, &idesc);
sbin/fsdb/fsdb.c
1200
chreclenfunc(struct inodesc *idesc)
sbin/fsdb/fsdb.c
1202
struct direct *dirp = idesc->id_dirp;
sbin/fsdb/fsdb.c
1205
dirp->d_reclen = iswap16(idesc->id_parent);
sbin/fsdb/fsdb.c
1215
struct inodesc idesc;
sbin/fsdb/fsdb.c
1232
idesc.id_number = curinum;
sbin/fsdb/fsdb.c
1233
idesc.id_func = chreclenfunc;
sbin/fsdb/fsdb.c
1234
idesc.id_fix = IGNORE;
sbin/fsdb/fsdb.c
1235
idesc.id_type = DATA;
sbin/fsdb/fsdb.c
1236
idesc.id_parent = reclen; /* XXX convenient hiding place */
sbin/fsdb/fsdb.c
1238
if (ckinode(curinode, &idesc) & FOUND)
sbin/fsdb/fsdb.c
534
scannames(struct inodesc *idesc)
sbin/fsdb/fsdb.c
536
struct direct *dirp = idesc->id_dirp;
sbin/fsdb/fsdb.c
548
struct inodesc idesc;
sbin/fsdb/fsdb.c
553
idesc.id_number = curinum;
sbin/fsdb/fsdb.c
554
idesc.id_func = scannames;
sbin/fsdb/fsdb.c
555
idesc.id_type = DATA;
sbin/fsdb/fsdb.c
556
idesc.id_fix = IGNORE;
sbin/fsdb/fsdb.c
557
ckinode(curinode, &idesc);
sys/dev/usb/uaudio.c
156
const usb_interface_descriptor_t *idesc;
sys/dev/usb/uaudio.c
2396
ai.idesc = id;
sys/dev/usb/uaudio.c
2620
as->idesc->bAlternateSetting);
sys/dev/usb/uaudio.c
4144
?sc->sc_alts[sc->sc_playchan.altidx].idesc->bAlternateSetting
sys/dev/usb/uaudio.c
4147
? sc->sc_alts[sc->sc_recchan.altidx].idesc->bAlternateSetting
sys/dev/usb/uaudio.c
501
sc->sc_alts[j].idesc->bInterfaceNumber) {
sys/dev/usb/ugen.c
1680
usb_interface_descriptor_t *idesc;
sys/dev/usb/ugen.c
1900
idesc = usbd_get_interface_descriptor(iface);
sys/dev/usb/ugen.c
1901
if (idesc == NULL)
sys/dev/usb/ugen.c
1903
ai->uai_alt_no = idesc->bAlternateSetting;
sys/dev/usb/ugen.c
1923
idesc = usbd_find_idesc(cdesc, ai->uai_interface_index, 0);
sys/dev/usb/ugen.c
1924
if (idesc == NULL) {
sys/dev/usb/ugen.c
1929
idesc->bInterfaceNumber);
sys/dev/usb/ugen.c
1954
idesc = usbd_find_idesc(cdesc, id->uid_interface_index, alt);
sys/dev/usb/ugen.c
1955
if (idesc == NULL) {
sys/dev/usb/ugen.c
1959
id->uid_desc = *idesc;
sys/dev/usb/umidi.c
877
usb_interface_descriptor_t *idesc;
sys/dev/usb/umidi.c
889
idesc = usbd_get_interface_descriptor(sc->sc_iface);
sys/dev/usb/umidi.c
890
KASSERT((char *)cdesc <= (char *)idesc);
sys/dev/usb/umidi.c
891
KASSERT((char *)idesc < end);
sys/dev/usb/umidi.c
892
KASSERT(end - (char *)idesc >= sizeof(*idesc));
sys/dev/usb/umidi.c
893
KASSERT(idesc->bLength >= sizeof(*idesc));
sys/dev/usb/umidi.c
894
KASSERT(idesc->bLength <= end - (char *)idesc);
sys/dev/usb/umidi.c
895
for (i = idesc->bNumEndpoints; i --> 0;) {
sys/dev/usb/umidi.c
906
desc = NEXT_D(idesc);
sys/dev/usb/usb_subr.c
325
usb_interface_descriptor_t *idesc;
sys/dev/usb/usb_subr.c
346
idesc = (usb_interface_descriptor_t *)desc;
sys/dev/usb/usb_subr.c
348
if (idesc->bInterfaceNumber != lastidx) {
sys/dev/usb/usb_subr.c
349
lastidx = idesc->bInterfaceNumber;
sys/dev/usb/usb_subr.c
356
return idesc;
sys/dev/usb/usb_subr.c
368
usb_interface_descriptor_t *idesc;
sys/dev/usb/usb_subr.c
373
idesc = usbd_find_idesc(cd, ifaceidx, altidx);
sys/dev/usb/usb_subr.c
374
if (idesc == NULL)
sys/dev/usb/usb_subr.c
376
if (endptidx >= idesc->bNumEndpoints) /* quick exit */
sys/dev/usb/usb_subr.c
380
for (p = (char *)idesc + idesc->bLength; end - p >= sizeof(*edesc);) {
sys/dev/usb/usb_subr.c
534
usb_interface_descriptor_t *idesc;
sys/dev/usb/usb_subr.c
543
idesc = usbd_find_idesc(dev->ud_cdesc, ifaceidx, altidx);
sys/dev/usb/usb_subr.c
544
if (idesc == NULL)
sys/dev/usb/usb_subr.c
547
nendpt = idesc->bNumEndpoints;
sys/dev/usb/usb_subr.c
555
p = (char *)idesc + idesc->bLength;
sys/dev/usb/usb_subr.c
557
KASSERTMSG((char *)dev->ud_cdesc <= (char *)idesc, "cdesc=%p idesc=%p",
sys/dev/usb/usb_subr.c
558
dev->ud_cdesc, idesc);
sys/dev/usb/usb_subr.c
559
KASSERTMSG((char *)idesc < end, "idesc=%p end=%p", idesc, end);
sys/dev/usb/usb_subr.c
626
ifc->ui_idesc = idesc;
sys/dev/usb/usbdi.c
986
usb_interface_descriptor_t *idesc;
sys/dev/usb/usbdi.c
995
if (desc->bLength < sizeof(*idesc))
sys/dev/usb/usbdi.c
997
idesc = (usb_interface_descriptor_t *)desc;
sys/dev/usb/usbdi.c
998
if (idesc->bInterfaceNumber == ifaceno) {
sys/dev/usb/usbdi_util.c
588
usb_interface_descriptor_t *idesc = usbd_get_interface_descriptor(ifc);
sys/dev/usb/usbdi_util.c
594
if (idesc == NULL)
sys/dev/usb/usbdi_util.c
599
p = (char *)idesc + idesc->bLength;