Lines Matching refs:try
26 static int do_rm(struct dirtree *try) in do_rm() argument
28 int fd=dirtree_parentfd(try), dir=S_ISDIR(try->st.st_mode), or=0, using=0; in do_rm()
31 if (isdotdot(try->name)) return 0; in do_rm()
39 && (!S_ISLNK(try->st.st_mode) && faccessat(fd, try->name, W_OK, 0))) or++; in do_rm()
44 if (!(dir && try->again) && ((or && isatty(0)) || FLAG(i))) { in do_rm()
45 char *s = dirtree_path(try, 0); in do_rm()
57 if (faccessat(fd, try->name, R_OK, 0)) { in do_rm()
58 if (FLAG(f)) wfchmodat(fd, try->name, 0700); in do_rm()
61 if (!try->again) return DIRTREE_COMEAGAIN; in do_rm()
62 if (try->symlink) goto skip; in do_rm()
64 char *s = dirtree_path(try, 0); in do_rm()
75 if (!unlinkat(fd, try->name, using)) { in do_rm()
77 char *s = dirtree_path(try, 0); in do_rm()
82 if (!dir || try->symlink != (char *)2) perror_msg_raw(try->name); in do_rm()
84 if (try->parent) try->parent->symlink = (char *)2; in do_rm()