Jakob Unterwurzacher
|
ac687d5359
|
v2api: add Darwin xattr support
|
2020-09-09 11:17:19 +02:00 |
|
Jakob Unterwurzacher
|
ee5ab1cc29
|
v2api: rename "File2" to just "File"
Rename the symbols and the files.
|
2020-08-16 12:50:33 +02:00 |
|
Jakob Unterwurzacher
|
1867fdaef4
|
v2api: move helpers from node.go to node_helpers.go
|
2020-08-01 19:26:42 +02:00 |
|
Jakob Unterwurzacher
|
4572cd2103
|
v2api: fix missing size translation in Lookup
|
2020-07-26 19:49:26 +02:00 |
|
Jakob Unterwurzacher
|
49fc3abcb4
|
v2api: Lookup: use newChild() helper
|
2020-07-19 13:15:18 +02:00 |
|
Jakob Unterwurzacher
|
6b7ff09373
|
v2api: Node: make Path() public
Helpful for fsck.
|
2020-07-18 23:40:54 +02:00 |
|
Jakob Unterwurzacher
|
4a0966e79e
|
v2api: Setattr: fill out structure
|
2020-07-12 21:17:52 +02:00 |
|
Jakob Unterwurzacher
|
ca5acae6f0
|
v2api: fix Mkfifo
|
2020-07-12 20:19:29 +02:00 |
|
Jakob Unterwurzacher
|
0fa824933c
|
v2api: properly implement Node.Setattr
We used to always open a *File2 and letting the *File2
handle Setattr. This does not work it we cannot open the file!
Before:
$ go test
2020/07/12 20:14:57 writer: Write/Writev failed, err: 2=no such file or directory. opcode: INTERRUPT
2020/07/12 20:14:57 writer: Write/Writev failed, err: 2=no such file or directory. opcode: INTERRUPT
--- FAIL: TestLchown (0.00s)
matrix_test.go:634: lchown /tmp/gocryptfs-test-parent-1026/014500839/default-plain/symlink: too many levels of symbolic links
touch: setting times of '/tmp/gocryptfs-test-parent-1026/014500839/default-plain/utimesnano_symlink': Too many levels of symbolic links
--- FAIL: TestUtimesNanoSymlink (0.00s)
matrix_test.go:655: exit status 1
--- FAIL: TestMkfifo (0.00s)
matrix_test.go:755: file exists
--- FAIL: TestMagicNames (0.00s)
matrix_test.go:773: Testing n="gocryptfs.longname.QhUr5d9FHerwEs--muUs6_80cy6JRp89c1otLwp92Cs"
matrix_test.go:773: Testing n="gocryptfs.diriv"
matrix_test.go:815: open /tmp/gocryptfs-test-parent-1026/014500839/default-plain/linktarget: permission denied
--- FAIL: TestChmod (0.00s)
matrix_test.go:840: chmod 444 -> 000 failed: permission denied
matrix_test.go:840: chmod 444 -> 111 failed: permission denied
matrix_test.go:840: chmod 444 -> 123 failed: permission denied
matrix_test.go:840: chmod 444 -> 321 failed: permission denied
FAIL
exit status 1
FAIL github.com/rfjakob/gocryptfs/tests/matrix 0.790s
After:
$ go test
--- FAIL: TestMkfifo (0.00s)
matrix_test.go:755: file exists
--- FAIL: TestMagicNames (0.00s)
matrix_test.go:773: Testing n="gocryptfs.longname.QhUr5d9FHerwEs--muUs6_80cy6JRp89c1otLwp92Cs"
matrix_test.go:773: Testing n="gocryptfs.diriv"
matrix_test.go:815: open /tmp/gocryptfs-test-parent-1026/501766059/default-plain/linktarget: permission denied
--- FAIL: TestChmod (0.00s)
matrix_test.go:849: modeHave 0644 != modeWant 0
FAIL
exit status 1
FAIL github.com/rfjakob/gocryptfs/tests/matrix 0.787s
|
2020-07-12 20:17:15 +02:00 |
|
Jakob Unterwurzacher
|
f11432d02a
|
v2api: Getattr: use file handle if passed
|
2020-07-12 15:08:17 +02:00 |
|
Jakob Unterwurzacher
|
4d99b02279
|
v2api: Getattr: fix file size
|
2020-07-12 15:03:42 +02:00 |
|
Jakob Unterwurzacher
|
230d92c4f4
|
v2api: fix Rename trying to overwrite itself
We used to do this
[pid 99182] renameat2(14, "Y_4DAxKvj1QnXmJx2AkrKA", 15, ".", RENAME_NOREPLACE <unfinished ...>
which was not the intention.
|
2020-07-12 13:55:24 +02:00 |
|
Jakob Unterwurzacher
|
6196a5b5fe
|
v2api: File2: implement Release, Read, Write, Fsync, Flush, Allocate
Fortunately, this just means fixing up the function
signatures.
|
2020-07-12 12:59:01 +02:00 |
|
Jakob Unterwurzacher
|
d539a4c214
|
v2api: fix RootNode cast
|
2020-07-11 20:27:47 +02:00 |
|
Jakob Unterwurzacher
|
7de3330d70
|
v2api: implement Rename
|
2020-07-11 19:56:45 +02:00 |
|
Jakob Unterwurzacher
|
84344834c4
|
v2api: remove OpenatUserCtx, MknodatUserCtx helpers
Instead, use the new toFuseCtx() function introduced
in an earlier commit.
|
2020-07-11 19:44:45 +02:00 |
|
Jakob Unterwurzacher
|
250dbc6436
|
v2api: implement Symlink
|
2020-07-11 19:43:07 +02:00 |
|
Jakob Unterwurzacher
|
c35b575d5f
|
v2api: implement Link
|
2020-07-11 19:32:38 +02:00 |
|
Jakob Unterwurzacher
|
b971c75e67
|
v2api: implement Mknod
|
2020-07-11 19:23:04 +02:00 |
|
Jakob Unterwurzacher
|
855b4a95b7
|
v2api: implement Statfs
|
2020-07-11 18:59:54 +02:00 |
|
Jakob Unterwurzacher
|
63f68a0fcd
|
v2api: implement Setattr
|
2020-07-05 20:10:53 +02:00 |
|
Jakob Unterwurzacher
|
d2139e18ef
|
v2api: implement Open()
|
2020-07-04 21:37:44 +02:00 |
|
Jakob Unterwurzacher
|
d73e4b3f7c
|
v2api: add prepareAtSyscall helper
|
2020-07-04 21:16:20 +02:00 |
|
Jakob Unterwurzacher
|
23180794fe
|
v2api: implement Readlink
|
2020-07-04 20:32:02 +02:00 |
|
Jakob Unterwurzacher
|
1618fbbac5
|
v2api: implement Unlink
|
2020-06-21 14:08:53 +02:00 |
|
Jakob Unterwurzacher
|
f6ded09e36
|
v2api: implement Create
|
2020-06-21 13:25:12 +02:00 |
|
Jakob Unterwurzacher
|
74a4accf0c
|
v2api: collect RootNode code in root_node.go
|
2020-06-21 12:44:32 +02:00 |
|
Jakob Unterwurzacher
|
ebdf58b9eb
|
v2api: implement GetAttr and Readdir
|
2020-06-21 12:42:18 +02:00 |
|
Jakob Unterwurzacher
|
6aa9f5636f
|
v2api: implement Lookup()
Compiles, but untested otherwise. No caching.
|
2020-06-21 12:01:34 +02:00 |
|
Jakob Unterwurzacher
|
2aad58f9ec
|
v2api (go-fuse v2 api): initial noop implementation
Compiles and mounts but does nothing useful.
|
2020-06-21 12:01:24 +02:00 |
|