Lines Matching defs:dirp

247 	struct direct *dirp = idesc->id_dirp;
261 if (dirp->d_ino != 0 && strcmp(dirp->d_name, ".") == 0) {
262 if (dirp->d_ino != idesc->id_number) {
264 dirp->d_ino = idesc->id_number;
268 if (dirp->d_type != DT_DIR) {
270 dirp->d_type = DT_DIR;
282 if (dirp->d_ino != 0 && strcmp(dirp->d_name, "..") != 0) {
284 dirp->d_name);
285 } else if (dirp->d_reclen < entrysize) {
287 } else if (dirp->d_reclen < 2 * entrysize) {
288 proto.d_reclen = dirp->d_reclen;
289 memcpy(dirp, &proto, (size_t)entrysize);
293 n = dirp->d_reclen - entrysize;
295 memcpy(dirp, &proto, (size_t)entrysize);
297 ILNCOUNT(dirp->d_ino)--;
298 dirp = (struct direct *)((char *)(dirp) + entrysize);
299 memset(dirp, 0, (size_t)n);
300 dirp->d_reclen = n;
314 n = DIRSIZ(dirp);
315 if (dirp->d_reclen < n + entrysize)
317 proto.d_reclen = dirp->d_reclen - n;
318 dirp->d_reclen = n;
320 ILNCOUNT(dirp->d_ino)--;
321 dirp = (struct direct *)((char *)(dirp) + n);
322 memset(dirp, 0, (size_t)proto.d_reclen);
323 dirp->d_reclen = proto.d_reclen;
325 if (dirp->d_ino != 0 && strcmp(dirp->d_name, "..") == 0) {
326 inp->i_dotdot = dirp->d_ino;
327 if (dirp->d_type != DT_DIR) {
329 dirp->d_type = DT_DIR;
335 if (dirp->d_ino != 0 && strcmp(dirp->d_name, ".") != 0) {
338 dirp->d_name);
340 } else if (dirp->d_reclen < entrysize) {
350 proto.d_reclen = dirp->d_reclen;
351 memcpy(dirp, &proto, (size_t)entrysize);
356 if (dirp->d_ino != 0)
357 ILNCOUNT(dirp->d_ino)--;
360 if (dirp->d_ino == 0)
362 if (dirp->d_namlen <= 2 &&
363 dirp->d_name[0] == '.' &&
365 if (dirp->d_namlen == 1) {
367 dirp->d_ino = 0;
372 if (dirp->d_name[1] == '.') {
374 dirp->d_ino = 0;
382 if (dirp->d_ino > maxino) {
383 fileerror(idesc->id_number, dirp->d_ino, "I OUT OF RANGE");
387 switch (GET_ISTATE(dirp->d_ino)) {
391 fileerror(idesc->id_number, dirp->d_ino, "UNALLOCATED");
399 if (GET_ISTATE(dirp->d_ino) == FCLEAR)
407 fileerror(idesc->id_number, dirp->d_ino, errmsg);
410 dp = ginode(dirp->d_ino);
411 SET_ISTATE(dirp->d_ino, (DIP(dp, di_mode) & IFMT) ==
413 ILNCOUNT(dirp->d_ino) = DIP(dp, di_nlink);
418 inp = getinoinfo(dirp->d_ino);
423 dirp->d_ino, dirp->d_ino);
440 if (dirp->d_type != GET_ITYPE(dirp->d_ino)) {
441 fileerror(idesc->id_number, dirp->d_ino,
443 dirp->d_type = GET_ITYPE(dirp->d_ino);
447 ILNCOUNT(dirp->d_ino)--;
452 GET_ISTATE(dirp->d_ino),
453 (unsigned long long)dirp->d_ino);
458 dirp->d_ino = 0;