gitfs
gitfs copied to clipboard
allow_other cannot be disabled
On FreeBSD using allow_other as regular user leads to EPERM.
$ mount_fusefs -o allow_other auto $(mktemp -d) /usr/bin/true
mount_fusefs: /dev/fuse on /tmp/tmp.JbO67Seu: Operation not permitted
but gitfs passes it by default (after annotating libfuse with printfs)
$ mkdir gitfs
$ gitfs https://github.com/PressLabs/gitfs/ gitfs
mount_fusefs -o nonempty,subtype=gitfs,allow_other,fsname=https://github.com/PressLabs/gitfs/ 5 /home/foo/gitfs
mount_fusefs: /dev/fuse on /home/foo/gitfs: Operation not permitted
fuse: failed to mount file system: No error: 0
Traceback (most recent call last):
File "/usr/local/bin/gitfs", line 11, in <module>
load_entry_point('gitfs==0.4.4', 'console_scripts', 'gitfs')()
File "/usr/local/lib/python2.7/site-packages/gitfs/__init__.py", line 20, in mount
start_fuse()
File "/usr/local/lib/python2.7/site-packages/gitfs/mounter.py", line 123, in start_fuse
subtype="gitfs")
File "/usr/local/lib/python2.7/site-packages/fuse.py", line 480, in __init__
raise RuntimeError(err)
RuntimeError: 1
In a similar vein,
$ gitfs -o allow_other <repo> <path>
doesn't actually alter default value for allow_other. Only the following does
$ gitfs -o allow_other=True <repo> <path>
which is unlike any other FUSE filesystem.
In my sysutils/fusefs-gitfs port flipping defaults fixes the issue for the following cases:
$ gitfs <repo> <path>
$ sudo gitfs <repo> <path>
$ sudo gitfs -o allow_other=true <repo> <path>