An error occurred fetching the project authors.
- 12 Apr, 2023 1 commit
-
-
Jakob Unterwurzacher authored
Commit 265a3926 missed adding max_read to the DirectMount path. Add it, which fixes the TestDirectMount failures. Change-Id: Ie934944d8f0a08fb65e2b6f675c8032f404d50df
-
- 30 Jan, 2023 3 commits
-
-
Jakob Unterwurzacher authored
Do what fusermount does instead of hard-coding the strings. Change-Id: Idf18f1c5cd17b7f9db8e15e8bc5173d0f6ca41db
-
Jakob Unterwurzacher authored
Two variable were defined but never used in what looks like a copy-paste error or something. Fix that, which also makes the tests pass. Change-Id: Iebf48583874977c518d888d9a80bc1f02e2a7f86
-
Jakob Unterwurzacher authored
Reason for adding DirectMountStrict is making the DirectMount functionality testable, though it may have value for the user in some cases. Add defaultRawFileSystem & loopback tests for DirectMount and DirectMountStrict. The tests fail right now due to bugs in DirectMount that will be fixed shortly: go-fuse/fuse$ sudo /usr/local/go/bin/go test -run TestDirectMount [...] 2022/12/28 20:19:21 mountDirect: calling syscall.Mount("", "/tmp/TestDirectMount3242971772", "fuse./tmp/go-build1215740", 0x0, "fd=7,rootmode=40000,user_id=0,group_id=0") 2022/12/28 20:19:21 mount: failed to do direct mount: invalid argument [...] Change-Id: Ibfa2fa141cb43e1f8c7319233c454a3e85fa435e
-
- 19 Dec, 2021 1 commit
-
-
Jakob Unterwurzacher authored
fusermount is (usually) from libfuse v2, and fusermount3 is from libfuse v3, which is the actively-developed version. Importantly, libfuse v3 added ExFAT to the list of filesystems that users are allowed to mount on, and libfuse v2 did not. The only ABI difference between fusermount and fusermount3 that I am aware of is that fusermount3 dropped the allow_empty option. Filesystems had to deal with that already, as fusermount may also be from libfuse v3, depending on what the distro does. This commit also adds two lines of debug output about which binary we actually call. Passes all.bash & the gocryptfs test suite. Fixes https://github.com/hanwen/go-fuse/issues/394 Fixes https://github.com/rfjakob/gocryptfs/issues/626 Change-Id: Id4574fb9c8d2c812a524181a76616159256d551c
-
- 25 Aug, 2021 2 commits
-
-
Jakob Unterwurzacher authored
Unfortunately, I broke darwin with the last commit: + GOOS=darwin + GOARCH=amd64 + go build -tags without_openssl -o /dev/null ../../../../pkg/mod/github.com/hanwen/go-fuse/v2@v2.1.1-0.20210825070001-74a933d6/fuse/server.go:122:5: undefined: parseFuseFd ../../../../pkg/mod/github.com/hanwen/go-fuse/v2@v2.1.1-0.20210825070001-74a933d6/fuse/server.go:887:5: undefined: parseFuseFd Move parseFuseFd() to build on all archs to unbreak the build. Change-Id: Ice173cc70a6a95765b56b444623b68ed92382052
-
Jakob Unterwurzacher authored
libfuse introduced [1] a special `/dev/fd/N` syntax for the mountpoint: It means that a privileged parent process: * Opened /dev/fuse * Called mount() on a real mountpoint directory * Inherited the fd to /dev/fuse to us * Informs us about the fd number via /dev/fd/N This functionality is used to allow FUSE mounts inside containers that have neither root permissions nor suid binaries [2], and for the --drop_privileges flag of mount.fuse3 [4] Tested with singularity and gocryptfs and actually works [3]. v2: Added doccomment for NewServer. v3: Added specific error message on Server.Unmount(). v4: Moved mount details to package comment [1] https://github.com/libfuse/libfuse/commit/64e11073b9347fcf9c6d1eea143763ba9e946f70 [2] https://github.com/rfjakob/gocryptfs/issues/590 [3] $ singularity run --fusemount "host:gocryptfs --extpass echo --extpass test /tmp/a /mnt" docker://ubuntu INFO: Using cached SIF image Reading password from extpass program "echo", arguments: ["test"] Decrypting master key bash: /home/jakob/.cargo/env: No such file or directory bash: /home/jakob/.cargo/env: No such file or directory bash: /home/jakob/.cargo/env: No such file or directory Singularity> Filesystem mounted and ready. [4] man mount.fuse3 Change-Id: Ibcc2464b0ef1e3d236207981b487fd9a7d94c910
-
- 12 Aug, 2021 1 commit
-
-
Jakob Unterwurzacher authored
This makes the function available to testing, which will be used in the next commit. Change-Id: I2df7aaf50748f209964da6f14764e81237d49027
-
- 22 Nov, 2019 1 commit
-
-
Mark Karpeles authored
Fixes issue #314 Change-Id: I6bf2d64d0e62c4881b7010c5c0421a16bd8d7db2
-
- 10 Aug, 2018 1 commit
-
-
Chris Marget authored
On a Linux system with go-fuse program running as root, the mount is performed by calling /bin/fusermount, and the unmount is performed with syscall.Unmount() This creates a problem on systems (CentOS 6) with a static-but-edited-by-mount /etc/mtab file. - fusermount adds a line to mtab when the go-fuse program starts - syscall.Unmount() doesn't edit the file on program exit - subsequent invocations of the program fail to mount with: "Mount fail: fusermount exited with code 256" Deleting the now-inaccurate mtab entry clears things up. There's probably a workaround by adding "-n" option so that mount doesn't edit mtab in the first place, but it's not obvious where to insert that when starting with the hello.go example.
-
- 28 Jul, 2017 1 commit
-
-
Shayan Pooya authored
When a process forks and execs a new process, the child will not be interested in the parent's file descriptor to /dev/fuse. Signed-off-by: Shayan Pooya <shayan@arista.com>
-
- 11 Jul, 2017 1 commit
-
-
Shayan Pooya authored
The root user can issue the umount syscall and does not need the fusermount binary. Therefore, it is not necessary to fork and exec a new process just to run the umount binary. Golang has a global lock held for forking (See exec_unix.go in the golang source tree): "Acquire the fork lock so that no other threads create new fds that are not yet close-on-exec before we fork." So it would be best if processes would refrain from forking unnecessarily. Signed-off-by: Shayan Pooya <shayan@arista.com>
-
- 04 Aug, 2016 1 commit
-
-
Han-Wen Nienhuys authored
Add AUTHORS file.
-
- 03 Aug, 2016 1 commit
-
-
Han-Wen Nienhuys authored
-
- 25 Jul, 2016 1 commit
-
-
Han-Wen Nienhuys authored
kernel. Change-Id: Ic481d3aadac3979722f9d7c1e2f8d305dcbd7e10
-
- 22 Jul, 2016 1 commit
-
-
Han-Wen Nienhuys authored
The strategy was inspired by the mount code for Darwin in bazil.org/fuse. Unfortunately, OSX must have the event loop started before mounting can be completed. This means that WaitMount() must be maintained for use on OSX. Change-Id: Ie53425f306b4575b3e94e45407bab05017f5ce14
-
- 17 Dec, 2015 1 commit
-
-
Han-Wen Nienhuys authored
-
- 01 Dec, 2015 1 commit
-
-
Han-Wen Nienhuys authored
This stops programs from crashing if fusermount is not there.
-
- 28 Oct, 2015 1 commit
-
-
Jakob Unterwurzacher authored
Fixes issue #69
-
- 29 Sep, 2015 1 commit
-
-
Jakob Unterwurzacher authored
Assuming that the loopback example binary is at /bin/loopbackfs, you can mount like this: mount -t fuse.loopbackfs /tmp/mountpoint /tmp/original However, "mount" passes an empty PATH to loopbackfs. Trying the absolute path too fixes the issue. This is in preparation of porting xfstests to go-fuse.
-
- 30 Dec, 2013 1 commit
-
-
Han-Wen Nienhuys authored
-
- 24 Mar, 2013 1 commit
-
-
Han-Wen Nienhuys authored
-
- 01 Mar, 2013 1 commit
-
-
Han-Wen Nienhuys authored
-
- 15 Feb, 2013 1 commit
-
-
Han-Wen Nienhuys authored
Split off some linux specific tests.
-
- 19 Mar, 2012 1 commit
-
-
Han-Wen Nienhuys authored
-
- 23 Feb, 2012 1 commit
-
-
Han-Wen Nienhuys authored
-
- 17 Feb, 2012 1 commit
-
-
Han-Wen Nienhuys authored
-
- 30 Nov, 2011 1 commit
-
-
Han-Wen Nienhuys authored
-
- 19 Nov, 2011 1 commit
-
-
Han-Wen Nienhuys authored
-
- 17 Nov, 2011 2 commits
-
-
Han-Wen Nienhuys authored
-
Han-Wen Nienhuys authored
-
- 09 Nov, 2011 1 commit
-
-
Han-Wen Nienhuys authored
-
- 03 Nov, 2011 1 commit
-
-
Han-Wen Nienhuys authored
-
- 20 Oct, 2011 1 commit
-
-
Han-Wen Nienhuys authored
-
- 18 Oct, 2011 1 commit
-
-
Han-Wen Nienhuys authored
-
- 03 Oct, 2011 1 commit
-
-
Han-Wen Nienhuys authored
-
- 04 Aug, 2011 1 commit
-
-
Han-Wen Nienhuys authored
-
- 30 Jul, 2011 2 commits
-
-
Han-Wen Nienhuys authored
This prevents "Failed to clone namespace" problem on some platforms.
-
Han-Wen Nienhuys authored
syscall.Umount() does not update /etc/mtab.
-
- 29 Jul, 2011 1 commit
-
-
Han-Wen Nienhuys authored
Drop sleep statements for unmount tests.
-