Lines Matching refs:specnode
341 apply_specdir(const char *dir, NODE *specnode, fsnode *dirnode, int speconly) in apply_specdir() argument
347 assert(specnode != NULL); in apply_specdir()
351 printf("apply_specdir: %s %p %p\n", dir, specnode, dirnode); in apply_specdir()
353 if (specnode->type != F_DIR) in apply_specdir()
355 dir, specnode->name); in apply_specdir()
360 apply_specentry(dir, specnode, dirnode); in apply_specdir()
372 for (curnode = specnode->child; curnode != NULL; in apply_specdir()
387 for (curnode = specnode->child; curnode != NULL; in apply_specdir()
475 apply_specentry(const char *dir, NODE *specnode, fsnode *dirnode) in apply_specentry() argument
478 assert(specnode != NULL); in apply_specentry()
481 if (nodetoino(specnode->type) != dirnode->type) in apply_specentry()
483 dir, specnode->name, inode_type(nodetoino(specnode->type)), in apply_specentry()
494 if (specnode->flags & (F_GID | F_GNAME)) { in apply_specentry()
496 dirnode->inode->st.st_gid, specnode->st_gid); in apply_specentry()
497 dirnode->inode->st.st_gid = specnode->st_gid; in apply_specentry()
499 if (specnode->flags & F_MODE) { in apply_specentry()
501 dirnode->inode->st.st_mode & ALLPERMS, specnode->st_mode); in apply_specentry()
503 dirnode->inode->st.st_mode |= (specnode->st_mode & ALLPERMS); in apply_specentry()
506 if (specnode->flags & F_SIZE) { in apply_specentry()
509 (long long)specnode->st_size); in apply_specentry()
510 dirnode->inode->st.st_size = specnode->st_size; in apply_specentry()
512 if (specnode->flags & F_SLINK) { in apply_specentry()
514 assert(specnode->slink != NULL); in apply_specentry()
515 ASEPRINT("symlink", "%s", dirnode->symlink, specnode->slink); in apply_specentry()
517 dirnode->symlink = estrdup(specnode->slink); in apply_specentry()
519 if (specnode->flags & F_TIME) { in apply_specentry()
522 (long)specnode->st_mtimespec.tv_sec); in apply_specentry()
523 dirnode->inode->st.st_mtime = specnode->st_mtimespec.tv_sec; in apply_specentry()
524 dirnode->inode->st.st_atime = specnode->st_mtimespec.tv_sec; in apply_specentry()
527 dirnode->inode->st.st_mtimensec = specnode->st_mtimespec.tv_nsec; in apply_specentry()
528 dirnode->inode->st.st_atimensec = specnode->st_mtimespec.tv_nsec; in apply_specentry()
532 if (specnode->flags & (F_UID | F_UNAME)) { in apply_specentry()
534 dirnode->inode->st.st_uid, specnode->st_uid); in apply_specentry()
535 dirnode->inode->st.st_uid = specnode->st_uid; in apply_specentry()
538 if (specnode->flags & F_FLAGS) { in apply_specentry()
541 (unsigned long)specnode->st_flags); in apply_specentry()
542 dirnode->inode->st.st_flags = specnode->st_flags; in apply_specentry()