Lines Matching refs:idesc

274 pass2check(struct inodesc *idesc)
276 struct direct *dirp = idesc->id_dirp;
289 if (idesc->id_entryno != 0)
292 if (dirp->d_ino != idesc->id_number) {
293 direrror(idesc->id_number, "BAD INODE NUMBER FOR '.'");
294 dirp->d_ino = idesc->id_number;
299 direrror(idesc->id_number, "BAD TYPE VALUE FOR '.'");
306 direrror(idesc->id_number, "MISSING '.'");
307 proto.d_ino = idesc->id_number;
326 idesc->id_entryno++;
335 if (idesc->id_entryno > 1)
337 inp = getinoinfo(idesc->id_number);
343 if (idesc->id_entryno == 0) {
349 idesc->id_entryno++;
358 direrror(idesc->id_number, "BAD TYPE VALUE FOR '..'");
366 fileerror(inp->i_parent, idesc->id_number, "MISSING '..'");
371 fileerror(inp->i_parent, idesc->id_number, "MISSING '..'");
379 fileerror(inp->i_parent, idesc->id_number, "MISSING '..'");
385 idesc->id_entryno++;
394 idesc->id_entryno >= 2) {
396 direrror(idesc->id_number, "EXTRA '.' ENTRY");
403 direrror(idesc->id_number, "EXTRA '..' ENTRY");
410 idesc->id_entryno++;
413 fileerror(idesc->id_number, dirp->d_ino, "I OUT OF RANGE");
417 fileerror(idesc->id_number, dirp->d_ino, "BAD WHITEOUT ENTRY");
426 if (idesc->id_entryno <= 2)
428 fileerror(idesc->id_number, dirp->d_ino, "UNALLOCATED");
434 if (idesc->id_entryno <= 2)
444 getpathname(dirname, idesc->id_number,
450 * setcwd(idesc->id_parent);
453 cmd.value = idesc->id_number;
468 inoinfo(idesc->id_number)->ino_linkcnt--;
472 fileerror(idesc->id_number, dirp->d_ino, errmsg);
483 if (inoinfo(idesc->id_number)->ino_state == DFOUND)
489 if (idesc->id_entryno > 2) {
491 inp->i_parent = idesc->id_number;
492 else if ((n = fix_extraneous(inp, idesc)) == 1)
500 fileerror(idesc->id_number, dirp->d_ino,
521 fix_extraneous(struct inoinfo *inp, struct inodesc *idesc)
535 dotdesc.id_number = idesc->id_dirp->d_ino;
543 * just found new name (idesc->id_number). We have five cases:
557 idesc->id_number == inp->i_parent || /* Case 2 */
558 inp->i_dotdot != idesc->id_number || /* Case 3 */
560 getpathname(newname, idesc->id_number, idesc->id_number);
563 strcat(newname, idesc->id_dirp->d_name);
570 * setcwd(idesc->id_number);
571 * unlink(idesc->id_dirp->d_name);
573 cmd.value = idesc->id_number;
579 cmd.value = (intptr_t)idesc->id_dirp->d_name;
629 inp->i_parent = idesc->id_number; /* reparent to correct dir */
641 inp->i_parent = idesc->id_number; /* reparent to correct directory */
647 deleteentry(struct inodesc *idesc)
649 struct direct *dirp = idesc->id_dirp;
651 if (idesc->id_entryno++ < 2 || dirp->d_ino != idesc->id_parent)