diff --git a/src/fuse_chmod.cpp b/src/fuse_chmod.cpp index 727da3cd..1c2857d7 100644 --- a/src/fuse_chmod.cpp +++ b/src/fuse_chmod.cpp @@ -37,14 +37,14 @@ _chmod_loop_core(const std::string &basepath_, const mode_t mode_, PolicyRV *prv_) { + int rv; fs::path fullpath; fullpath = basepath_ / fusepath_; - errno = 0; - fs::lchmod(fullpath,mode_); + rv = fs::lchmod(fullpath,mode_); - prv_->insert(errno,basepath_); + prv_->insert(rv,basepath_); } static diff --git a/src/fuse_chown.cpp b/src/fuse_chown.cpp index 332df79d..b51c4c99 100644 --- a/src/fuse_chown.cpp +++ b/src/fuse_chown.cpp @@ -38,14 +38,14 @@ _chown_loop_core(const fs::path &basepath_, const gid_t gid_, PolicyRV *prv_) { + int rv; fs::path fullpath; fullpath = basepath_ / fusepath_; - errno = 0; - fs::lchown(fullpath,uid_,gid_); + rv = fs::lchown(fullpath,uid_,gid_); - prv_->insert(errno,basepath_); + prv_->insert(rv,basepath_); } static diff --git a/src/fuse_removexattr.cpp b/src/fuse_removexattr.cpp index a40f0059..e9b67c8f 100644 --- a/src/fuse_removexattr.cpp +++ b/src/fuse_removexattr.cpp @@ -36,14 +36,14 @@ _removexattr_loop_core(const fs::path &basepath_, const char *attrname_, PolicyRV *prv_) { + int rv; fs::path fullpath; fullpath = basepath_ / fusepath_; - errno = 0; - fs::lremovexattr(fullpath,attrname_); + rv = fs::lremovexattr(fullpath,attrname_); - prv_->insert(errno,basepath_); + prv_->insert(rv,basepath_); } static diff --git a/src/fuse_setxattr.cpp b/src/fuse_setxattr.cpp index 63fc9f48..4f398c32 100644 --- a/src/fuse_setxattr.cpp +++ b/src/fuse_setxattr.cpp @@ -110,14 +110,14 @@ _setxattr_loop_core(const fs::path &basepath_, const int flags_, PolicyRV *prv_) { + int rv; fs::path fullpath; fullpath = basepath_ / fusepath_; - errno = 0; - fs::lsetxattr(fullpath,attrname_,attrval_,attrvalsize_,flags_); + rv = fs::lsetxattr(fullpath,attrname_,attrval_,attrvalsize_,flags_); - prv_->insert(errno,basepath_); + prv_->insert(rv,basepath_); } static