<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gocryptfs/tests/reverse, branch xattr_user_buffer</title>
<subtitle>Mirror of gocryptfs source code on Github</subtitle>
<id>http://nuetzlich.net/cgit/gocryptfs/atom?h=xattr_user_buffer</id>
<link rel='self' href='http://nuetzlich.net/cgit/gocryptfs/atom?h=xattr_user_buffer'/>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/'/>
<updated>2025-11-22T20:51:27+00:00</updated>
<entry>
<title>reverse: fix TestXattrList failure</title>
<updated>2025-11-22T20:51:27+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2025-11-22T20:44:51+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=75247e14612d2e71311aeeb7060ea704c96c3154'/>
<id>urn:sha1:75247e14612d2e71311aeeb7060ea704c96c3154</id>
<content type='text'>
On my Fedora I used to get this failure:

	--- FAIL: TestXattrList (0.00s)
	    xattr_test.go:52: wrong number of names, want=20 have=21
	    xattr_test.go:58: mismatch on attr "security.selinux": valA = "", valC = "xxxxxxxxyyyyyyyyyyyyyyyzzzzzzzzzzzzz"

First step is to print the actual value using xattr.LGet.
This improves the error message to this:

	--- FAIL: TestXattrList (0.00s)
	    xattr_test.go:53: wrong number of names, want=20 have=21
	    xattr_test.go:59: mismatch on attr "security.selinux": valA = "", valC = "system_u:object_r:fusefs_t:s0\x00"

2nd step is to ignore "security." attribs as we have no control
over them.
</content>
</entry>
<entry>
<title>Xattrs support in reverse mode</title>
<updated>2025-11-22T20:24:20+00:00</updated>
<author>
<name>Aleksey Vasenev</name>
</author>
<published>2024-11-17T20:14:36+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=ed1c5e4a9f5ce1921f3ec03b32e591ce828ec5b9'/>
<id>urn:sha1:ed1c5e4a9f5ce1921f3ec03b32e591ce828ec5b9</id>
<content type='text'>
Fixes https://github.com/rfjakob/gocryptfs/issues/827
</content>
</entry>
<entry>
<title>Fix all staticcheck errors in gocryptfs codebase</title>
<updated>2025-07-08T17:54:14+00:00</updated>
<author>
<name>copilot-swe-agent[bot]</name>
</author>
<published>2025-07-07T18:18:12+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=386232f39ede046d6453a0990ad40f2d86a26f53'/>
<id>urn:sha1:386232f39ede046d6453a0990ad40f2d86a26f53</id>
<content type='text'>
Co-authored-by: rfjakob &lt;286847+rfjakob@users.noreply.github.com&gt;

Add staticcheck to test.bash for continuous static analysis

Co-authored-by: rfjakob &lt;286847+rfjakob@users.noreply.github.com&gt;

Fix nil pointer dereference in timesToTimespec function

The previous fix for deprecated fuse.UtimeToTimespec caused a panic
because unix.TimeToTimespec doesn't handle nil pointers. This fix
properly handles nil pointers by using unix.UTIME_OMIT while still
using the non-deprecated unix.TimeToTimespec function.

Co-authored-by: rfjakob &lt;286847+rfjakob@users.noreply.github.com&gt;

Undo SA6002 changes and add staticcheck ignore directive instead

Co-authored-by: rfjakob &lt;286847+rfjakob@users.noreply.github.com&gt;
</content>
</entry>
<entry>
<title>Fix a bunch of staticcheck errors</title>
<updated>2025-07-07T17:59:35+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2025-07-07T17:54:48+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=8f5df19b353e02ffba842fd1b15ccf93da7ee3b4'/>
<id>urn:sha1:8f5df19b353e02ffba842fd1b15ccf93da7ee3b4</id>
<content type='text'>
Tool-assisted.
</content>
</entry>
<entry>
<title>tests: reverse: delete static directory tree</title>
<updated>2025-06-20T18:51:12+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2025-06-20T18:51:12+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=c82ca93f29ea8fe7990558917e20ae5afcd2fab0'/>
<id>urn:sha1:c82ca93f29ea8fe7990558917e20ae5afcd2fab0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tests: reverse: generate directory tree for exlucude tests dynamically</title>
<updated>2025-06-20T18:50:26+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2025-06-20T18:50:26+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=10c7dc51d8bbe5cb8beb3e19f507c6c99eee09d7'/>
<id>urn:sha1:10c7dc51d8bbe5cb8beb3e19f507c6c99eee09d7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>testing: reverse: add some verbose logging</title>
<updated>2025-06-20T18:48:49+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2025-06-20T18:48:49+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=e6e27c1db0856d162c557e17e0eadff254d84fb8'/>
<id>urn:sha1:e6e27c1db0856d162c557e17e0eadff254d84fb8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>testing: reverse: factor out newReverseFS</title>
<updated>2025-06-19T20:03:06+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2025-06-19T11:44:18+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=66bfd4d9fef5df871348964526b64b700ee6a19c'/>
<id>urn:sha1:66bfd4d9fef5df871348964526b64b700ee6a19c</id>
<content type='text'>
Will be used soon in a new gitignore test.

Relates-to: https://github.com/rfjakob/gocryptfs/issues/927
</content>
</entry>
<entry>
<title>tests: reverse: TestMtimePlus10: fix darwin build</title>
<updated>2025-01-18T13:46:14+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2025-01-18T13:46:14+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=a0105e65cde9f4643a896770a9629da644613a8a'/>
<id>urn:sha1:a0105e65cde9f4643a896770a9629da644613a8a</id>
<content type='text'>
Darwin does not have Stat_t.mtim:

+ go test -c -tags without_openssl -o /dev/null github.com/rfjakob/gocryptfs/v2/tests/reverse
Error: tests/reverse/correctness_test.go:407:15: name_stat.Mtim undefined (type syscall.Stat_t has no field or method Mtim)
Error: tests/reverse/correctness_test.go:407:37: long_stat.Mtim undefined (type syscall.Stat_t has no field or method Mtim)
Error: tests/reverse/correctness_test.go:410:15: name_stat.Ctim undefined (type syscall.Stat_t has no field or method Ctim)
Error: tests/reverse/correctness_test.go:410:37: long_stat.Ctim undefined (type syscall.Stat_t has no field or method Ctim)
Error: tests/reverse/correctness_test.go:424:16: diriv_stat.Mtim undefined (type syscall.Stat_t has no field or method Mtim)
Error: tests/reverse/correctness_test.go:424:42: workdirA_stat.Mtim undefined (type syscall.Stat_t has no field or method Mtim)
Error: tests/reverse/correctness_test.go:427:16: diriv_stat.Ctim undefined (type syscall.Stat_t has no field or method Ctim)
Error: tests/reverse/correctness_test.go:427:42: workdirA_stat.Ctim undefined (type syscall.Stat_t has no field or method Ctim)

Switch to os.Stat.
</content>
</entry>
<entry>
<title>reverse: advance mtime &amp; ctime for virtual files by 10 seconds</title>
<updated>2025-01-18T13:13:52+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2025-01-18T13:11:51+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=9eb47cf546d7e2499eab210d70050ef78087475a'/>
<id>urn:sha1:9eb47cf546d7e2499eab210d70050ef78087475a</id>
<content type='text'>
With inode number reuse and hard links, we could have returned
wrong data for gocryptfs.diriv and gocryptfs.xyz.longname files, respectively
(https://github.com/rfjakob/gocryptfs/issues/802).

Now that this is fixed, ensure that rsync and similar tools pick up the new
correct files by advancing mtime and ctime by 10 seconds, which should be more
than any filesytems' timestamp granularity (FAT32 has 2 seconds).
</content>
</entry>
</feed>
