Lines Matching refs:specnode
339 apply_specdir(const char *dir, NODE *specnode, fsnode *dirnode, int speconly) in apply_specdir() argument
345 assert(specnode != NULL); in apply_specdir()
349 printf("apply_specdir: %s %p %p\n", dir, specnode, dirnode); in apply_specdir()
351 if (specnode->type != F_DIR) in apply_specdir()
353 dir, specnode->name); in apply_specdir()
358 apply_specentry(dir, specnode, dirnode); in apply_specdir()
370 for (curnode = specnode->child; curnode != NULL; in apply_specdir()
385 for (curnode = specnode->child; curnode != NULL; in apply_specdir()
473 apply_specentry(const char *dir, NODE *specnode, fsnode *dirnode) in apply_specentry() argument
476 assert(specnode != NULL); in apply_specentry()
479 if (nodetoino(specnode->type) != dirnode->type) in apply_specentry()
481 dir, specnode->name, inode_type(nodetoino(specnode->type)), in apply_specentry()
492 if (specnode->flags & (F_GID | F_GNAME)) { in apply_specentry()
494 dirnode->inode->st.st_gid, specnode->st_gid); in apply_specentry()
495 dirnode->inode->st.st_gid = specnode->st_gid; in apply_specentry()
497 if (specnode->flags & F_MODE) { in apply_specentry()
499 dirnode->inode->st.st_mode & ALLPERMS, specnode->st_mode); in apply_specentry()
501 dirnode->inode->st.st_mode |= (specnode->st_mode & ALLPERMS); in apply_specentry()
504 if (specnode->flags & F_SIZE) { in apply_specentry()
507 (long long)specnode->st_size); in apply_specentry()
508 dirnode->inode->st.st_size = specnode->st_size; in apply_specentry()
510 if (specnode->flags & F_SLINK) { in apply_specentry()
512 assert(specnode->slink != NULL); in apply_specentry()
513 ASEPRINT("symlink", "%s", dirnode->symlink, specnode->slink); in apply_specentry()
515 dirnode->symlink = estrdup(specnode->slink); in apply_specentry()
517 if (specnode->flags & F_TIME) { in apply_specentry()
520 (long)specnode->st_mtimespec.tv_sec); in apply_specentry()
521 dirnode->inode->st.st_mtime = specnode->st_mtimespec.tv_sec; in apply_specentry()
522 dirnode->inode->st.st_atime = specnode->st_mtimespec.tv_sec; in apply_specentry()
525 dirnode->inode->st.st_mtimensec = specnode->st_mtimespec.tv_nsec; in apply_specentry()
526 dirnode->inode->st.st_atimensec = specnode->st_mtimespec.tv_nsec; in apply_specentry()
530 if (specnode->flags & (F_UID | F_UNAME)) { in apply_specentry()
532 dirnode->inode->st.st_uid, specnode->st_uid); in apply_specentry()
533 dirnode->inode->st.st_uid = specnode->st_uid; in apply_specentry()
536 if (specnode->flags & F_FLAGS) { in apply_specentry()
539 (unsigned long)specnode->st_flags); in apply_specentry()
540 dirnode->inode->st.st_flags = specnode->st_flags; in apply_specentry()