diff options
author | HereThereBeDragons <HereThereBeDragons@users.noreply.github.com> | 2022-10-27 17:52:10 +0200 |
---|---|---|
committer | Nikolaus Rath <Nikolaus@rath.org> | 2023-01-06 18:35:52 +0000 |
commit | 8fd95ab0a62a753896fdd3b5fcb68603f0e41ad3 (patch) | |
tree | d7e464353a08f1638c6f4d9a8ea3ca11ded5d27a /lib/fuse_lowlevel.c | |
parent | d372d3f80b5437e652ea501d8a4a917f7001b9d7 (diff) | |
download | libfuse-8fd95ab0a62a753896fdd3b5fcb68603f0e41ad3.tar.gz |
Initial patch provided by Miklos Szeredi <mszeredi@redhat.com>
Diffstat (limited to 'lib/fuse_lowlevel.c')
-rw-r--r-- | lib/fuse_lowlevel.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/lib/fuse_lowlevel.c b/lib/fuse_lowlevel.c index e82cd9e..7b9d710 100644 --- a/lib/fuse_lowlevel.c +++ b/lib/fuse_lowlevel.c @@ -2268,21 +2268,24 @@ int fuse_lowlevel_notify_inval_inode(struct fuse_session *se, fuse_ino_t ino, return send_notify_iov(se, FUSE_NOTIFY_INVAL_INODE, iov, 2); } -int fuse_lowlevel_notify_inval_entry(struct fuse_session *se, fuse_ino_t parent, - const char *name, size_t namelen) +int fuse_lowlevel_notify_expire_entry(struct fuse_session *se, fuse_ino_t parent, + const char *name, size_t namelen, + enum fuse_expire_flags flags) { struct fuse_notify_inval_entry_out outarg; struct iovec iov[3]; if (!se) return -EINVAL; - + if (se->conn.proto_minor < 12) return -ENOSYS; outarg.parent = parent; outarg.namelen = namelen; - outarg.padding = 0; + outarg.flags = 0; + if (flags & FUSE_LL_EXPIRE_ONLY) + outarg.flags |= FUSE_EXPIRE_ONLY; iov[1].iov_base = &outarg; iov[1].iov_len = sizeof(outarg); @@ -2292,6 +2295,13 @@ int fuse_lowlevel_notify_inval_entry(struct fuse_session *se, fuse_ino_t parent, return send_notify_iov(se, FUSE_NOTIFY_INVAL_ENTRY, iov, 3); } +int fuse_lowlevel_notify_inval_entry(struct fuse_session *se, fuse_ino_t parent, + const char *name, size_t namelen) +{ + return fuse_lowlevel_notify_expire_entry(se, parent, name, namelen, 0); +} + + int fuse_lowlevel_notify_delete(struct fuse_session *se, fuse_ino_t parent, fuse_ino_t child, const char *name, size_t namelen) |