since mode_t has additional bits set for file mode (see stat(2) ),
we have to ignore those, or we never can set the mode
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
allowed_mode |= (S_IRGRP);
// allow only setting our supported modes (0600 for priv, 0640 for rest)
- if (mode == allowed_mode)
+ // mode has additional bits set, which we ignore; see stat(2)
+ if ((mode & ALLPERMS) == allowed_mode)
ret = 0;
cfs_debug("leave cfs_fuse_chmod %s (%d) mode: %o", path, ret, (int)mode);