From: Miklos Szeredi Date: Tue, 14 Aug 2018 19:37:02 +0000 (+0200) Subject: passthrough_ll: add is_symlink to lo_inode X-Git-Tag: fuse-3.3.0~18 X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=610125f3c157499b3c0695dacf13c103b9cb6554;p=qemu-gpiodev%2Flibfuse.git passthrough_ll: add is_symlink to lo_inode Signed-off-by: Miklos Szeredi --- diff --git a/example/passthrough_ll.c b/example/passthrough_ll.c index 4c4f68a..700483f 100644 --- a/example/passthrough_ll.c +++ b/example/passthrough_ll.c @@ -69,6 +69,7 @@ struct lo_inode { struct lo_inode *next; /* protected by lo->mutex */ struct lo_inode *prev; /* protected by lo->mutex */ int fd; + bool is_symlink; ino_t ino; dev_t dev; uint64_t refcount; /* protected by lo->mutex */ @@ -193,6 +194,7 @@ static int lo_do_lookup(fuse_req_t req, fuse_ino_t parent, const char *name, if (!inode) goto out_err; + inode->is_symlink = S_ISLNK(e->attr.st_mode); inode->refcount = 1; inode->fd = newfd; inode->ino = e->attr.st_ino; @@ -612,6 +614,7 @@ int main(int argc, char *argv[]) lo.debug = opts.debug; lo.root.refcount = 2; + lo.root.is_symlink = false; lo.root.fd = open("/", O_PATH); if (lo.root.fd == -1) err(1, "open(\"/\", O_PATH)");