Lines Matching defs:dirnode
337 apply_specdir(const char *dir, NODE *specnode, fsnode *dirnode, int speconly)
344 assert(dirnode != NULL);
347 printf("apply_specdir: %s %p %p\n", dir, specnode, dirnode);
352 if (dirnode->type != S_IFDIR)
354 dir, dirnode->name);
356 apply_specentry(dir, specnode, dirnode);
365 assert(dirnode->name[0] == '.' && dirnode->name[1] == '\0');
366 for (curfsnode = dirnode->next; curfsnode != NULL; curfsnode = next) {
382 /* now walk specnode->child matching up with dirnode */
388 for (curfsnode = dirnode->next; curfsnode != NULL;
443 curfsnode->parent = dirnode->parent;
444 curfsnode->first = dirnode;
445 curfsnode->next = dirnode->next;
446 dirnode->next = curfsnode;
471 apply_specentry(const char *dir, NODE *specnode, fsnode *dirnode)
475 assert(dirnode != NULL);
477 if (nodetoino(specnode->type) != dirnode->type)
480 inode_type(dirnode->type));
483 printf("apply_specentry: %s/%s\n", dir, dirnode->name);
492 dirnode->inode->st.st_gid, specnode->st_gid);
493 dirnode->inode->st.st_gid = specnode->st_gid;
497 dirnode->inode->st.st_mode & ALLPERMS, specnode->st_mode);
498 dirnode->inode->st.st_mode &= ~ALLPERMS;
499 dirnode->inode->st.st_mode |= (specnode->st_mode & ALLPERMS);
504 (long long)dirnode->inode->st.st_size,
506 dirnode->inode->st.st_size = specnode->st_size;
509 assert(dirnode->symlink != NULL);
511 ASEPRINT("symlink", "%s", dirnode->symlink, specnode->slink);
512 free(dirnode->symlink);
513 dirnode->symlink = estrdup(specnode->slink);
517 (long)dirnode->inode->st.st_mtime,
519 dirnode->inode->st.st_mtime = specnode->st_mtimespec.tv_sec;
520 dirnode->inode->st.st_atime = specnode->st_mtimespec.tv_sec;
521 dirnode->inode->st.st_ctime = start_time.tv_sec;
523 dirnode->inode->st.st_mtimensec = specnode->st_mtimespec.tv_nsec;
524 dirnode->inode->st.st_atimensec = specnode->st_mtimespec.tv_nsec;
525 dirnode->inode->st.st_ctimensec = start_time.tv_nsec;
530 dirnode->inode->st.st_uid, specnode->st_uid);
531 dirnode->inode->st.st_uid = specnode->st_uid;
536 (unsigned long)dirnode->inode->st.st_flags,
538 dirnode->inode->st.st_flags = specnode->st_flags;
543 (unsigned long long)dirnode->inode->st.st_rdev,
545 dirnode->inode->st.st_rdev = specnode->st_rdev;
549 dirnode->flags |= FSNODE_F_HASSPEC;