Lines Matching refs:ff

214 static void fillacl(struct fs_fid *ff);
215 static struct l9p_acl *getacl(struct fs_fid *ff, int fd, const char *path);
216 static void dropacl(struct fs_fid *ff);
217 static struct l9p_acl *look_for_nfsv4_acl(struct fs_fid *ff, int fd,
510 struct fs_fid *ff; in fs_pdir() local
513 ff = fid->lo_aux; in fs_pdir()
514 assert(ff != NULL); in fs_pdir()
515 path = ff->ff_name; in fs_pdir()
519 if (fstatat(ff->ff_dirfd, path, st, AT_SYMLINK_NOFOLLOW) != 0) in fs_pdir()
779 fillacl(struct fs_fid *ff) in fillacl() argument
782 if (ff->ff_acl == NULL && (ff->ff_flags & FF_NO_NFSV4_ACL) == 0) { in fillacl()
783 ff->ff_acl = look_for_nfsv4_acl(ff, ff->ff_fd, ff->ff_name); in fillacl()
784 if (ff->ff_acl == NULL) in fillacl()
785 ff->ff_flags |= FF_NO_NFSV4_ACL; in fillacl()
798 getacl(struct fs_fid *ff, int fd, const char *path) in getacl() argument
801 if (ff->ff_flags & FF_NO_NFSV4_ACL) in getacl()
803 return look_for_nfsv4_acl(ff, fd, path); in getacl()
811 dropacl(struct fs_fid *ff) in dropacl() argument
814 l9p_acl_free(ff->ff_acl); in dropacl()
815 ff->ff_acl = NULL; in dropacl()
816 ff->ff_flags = ff->ff_ai->ai_flags; in dropacl()
825 look_for_nfsv4_acl(struct fs_fid *ff, int fd, const char *path) in look_for_nfsv4_acl() argument
836 fd = openat(ff->ff_dirfd, path, 0); in look_for_nfsv4_acl()
1385 struct fs_fid *ff; in fs_imkdir() local
1391 ff = dir->lo_aux; in fs_imkdir()
1403 if (mkdirat(ff->ff_dirfd, newname, perm) != 0) in fs_imkdir()
1406 fd = openat(ff->ff_dirfd, newname, in fs_imkdir()
1445 struct fs_fid *ff; in fs_imknod() local
1452 ff = dir->lo_aux; in fs_imknod()
1469 if (fs_ifchdir_thread_local(ff->ff_dirfd) < 0) { in fs_imknod()
1481 if (mknodat(ff->ff_dirfd, newname, mode, dev) != 0) in fs_imknod()
1486 if (fchownat(ff->ff_dirfd, newname, uid, gid, AT_SYMLINK_NOFOLLOW) != 0 || in fs_imknod()
1487 fchmodat(ff->ff_dirfd, newname, perm, 0) != 0 || in fs_imknod()
1488 fstatat(ff->ff_dirfd, newname, st, AT_SYMLINK_NOFOLLOW) != 0) in fs_imknod()
1505 struct fs_fid *ff; in fs_imkfifo() local
1511 ff = dir->lo_aux; in fs_imkfifo()
1527 if (fchownat(ff->ff_dirfd, newname, uid, gid, AT_SYMLINK_NOFOLLOW) != 0 || in fs_imkfifo()
1528 fchmodat(ff->ff_dirfd, newname, perm, 0) != 0 || in fs_imkfifo()
1529 fstatat(ff->ff_dirfd, newname, st, AT_SYMLINK_NOFOLLOW) != 0) in fs_imkfifo()
1549 struct fs_fid *ff; in fs_imksocket() local
1557 ff = dir->lo_aux; in fs_imksocket()
1578 fd = openat(ff->ff_dirfd, ff->ff_name, in fs_imksocket()
1627 if (fchownat(ff->ff_dirfd, newname, uid, gid, AT_SYMLINK_NOFOLLOW) != 0 || in fs_imksocket()
1628 fchmodat(ff->ff_dirfd, newname, perm, 0) != 0 || in fs_imksocket()
1629 fstatat(ff->ff_dirfd, newname, st, AT_SYMLINK_NOFOLLOW) != 0) in fs_imksocket()
1664 struct fs_fid *ff; in fs_isymlink() local
1670 ff = dir->lo_aux; in fs_isymlink()
1679 if (symlinkat(symtgt, ff->ff_dirfd, newname) != 0) in fs_isymlink()
1683 if (fchownat(ff->ff_dirfd, newname, uid, gid, AT_SYMLINK_NOFOLLOW) != 0 || in fs_isymlink()
1684 fstatat(ff->ff_dirfd, newname, st, AT_SYMLINK_NOFOLLOW) != 0) in fs_isymlink()