<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gocryptfs/internal/nametransform/names_test.go, branch LockSharedStorage_rebase2</title>
<subtitle>Mirror of gocryptfs source code on Github</subtitle>
<id>http://nuetzlich.net/cgit/gocryptfs/atom?h=LockSharedStorage_rebase2</id>
<link rel='self' href='http://nuetzlich.net/cgit/gocryptfs/atom?h=LockSharedStorage_rebase2'/>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/'/>
<updated>2021-12-19T13:43:56+00:00</updated>
<entry>
<title>fusefrontend: allow slashes in xattr names</title>
<updated>2021-12-19T13:43:56+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2021-12-19T13:43:56+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=64be5de75f42e415198ff5e77de509680b69e0e1'/>
<id>urn:sha1:64be5de75f42e415198ff5e77de509680b69e0e1</id>
<content type='text'>
xattr names have fewer restrictions than file names,
relax the validation.

Fixes https://github.com/rfjakob/gocryptfs/issues/627
</content>
</entry>
<entry>
<title>nametransform: check name validity on encryption</title>
<updated>2021-06-02T12:29:48+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2021-06-02T12:21:30+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=04858ddd222bbf7156f33f99cfb293a9b1e15ec8'/>
<id>urn:sha1:04858ddd222bbf7156f33f99cfb293a9b1e15ec8</id>
<content type='text'>
xfstests generic/523 discovered that we allowed to set
xattrs with "/" in the name, but did not allow to read
them later.

With this change we do not allow to set them in the first
place.
</content>
</entry>
<entry>
<title>nametransform: update comment &amp; simplify tests</title>
<updated>2020-04-18T14:14:48+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2020-04-18T14:14:48+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=f6b1c680b3f7c7d5cd842cca3117f5ee2f0f2fad'/>
<id>urn:sha1:f6b1c680b3f7c7d5cd842cca3117f5ee2f0f2fad</id>
<content type='text'>
The comment still mentioned CBC, which has been removed
a long time ago.

The test definition can be rewritten using slice literals,
saving sume stuttering.
</content>
</entry>
<entry>
<title>nametransform: harden name decryption against invalid input</title>
<updated>2017-05-23T19:26:38+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2017-05-23T18:46:24+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=e827763f2e6226d9f5778d56c28270264950c0f5'/>
<id>urn:sha1:e827763f2e6226d9f5778d56c28270264950c0f5</id>
<content type='text'>
This fixes a few issues I have found reviewing the code:

1) Limit the amount of data ReadLongName() will read. Previously,
you could send gocryptfs into out-of-memory by symlinking
gocryptfs.diriv to /dev/zero.

2) Handle the empty input case in unPad16() by returning an
error. Previously, it would panic with an out-of-bounds array
read. It is unclear to me if this could actually be triggered.

3) Reject empty names after base64-decoding in DecryptName().
An empty name crashes emeCipher.Decrypt().
It is unclear to me if B64.DecodeString() can actually return
a non-error empty result, but let's guard against it anyway.
</content>
</entry>
<entry>
<title>nametransform: drop unused noiv functions</title>
<updated>2016-06-23T19:39:04+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2016-06-23T19:33:05+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=e970b1fdb5963448f8d54d70ae903883605da32d'/>
<id>urn:sha1:e970b1fdb5963448f8d54d70ae903883605da32d</id>
<content type='text'>
As DirIV is now mandatory there is no user for the noiv functions.
</content>
</entry>
<entry>
<title>Enable openssl in tests to support old Go versions</title>
<updated>2016-03-02T23:59:58+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2016-03-02T23:58:12+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=37a9b4c3ee9d5dd332ae2f4b25942c6fef254d72'/>
<id>urn:sha1:37a9b4c3ee9d5dd332ae2f4b25942c6fef254d72</id>
<content type='text'>
Go 1.4 and older do not support 128-bit IVs which caused
the tests to panic.
</content>
</entry>
<entry>
<title>longnames part I: Create and OpenDir work with long filenames &gt; 176 bytes</title>
<updated>2016-02-06T21:54:14+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2016-02-06T21:54:14+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=e111e20649cfacd7b02dd454d75db879aa2ca53c'/>
<id>urn:sha1:e111e20649cfacd7b02dd454d75db879aa2ca53c</id>
<content type='text'>
Todo: Rename, Unlink, Rmdir, Mknod, Mkdir
</content>
</entry>
<entry>
<title>Fix tests - were broken by the refactoring</title>
<updated>2016-02-06T19:22:45+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2016-02-06T19:22:45+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=b0ee5258b1ac60b9a672d9db0816b17ae12d0e55'/>
<id>urn:sha1:b0ee5258b1ac60b9a672d9db0816b17ae12d0e55</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Major refactoring: Split up "cryptfs" into several internal packages</title>
<updated>2016-02-06T18:22:35+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2016-02-06T18:20:54+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=2b8cbd944149afe51fadddbd67ee4499d1d86250'/>
<id>urn:sha1:2b8cbd944149afe51fadddbd67ee4499d1d86250</id>
<content type='text'>
"git status" for reference:

deleted:    cryptfs/cryptfs.go
deleted:    cryptfs/names_core.go
modified:   integration_tests/cli_test.go
modified:   integration_tests/helpers.go
renamed:    cryptfs/config_file.go -&gt; internal/configfile/config_file.go
renamed:    cryptfs/config_test.go -&gt; internal/configfile/config_test.go
renamed:    cryptfs/config_test/.gitignore -&gt; internal/configfile/config_test/.gitignore
renamed:    cryptfs/config_test/PlaintextNames.conf -&gt; internal/configfile/config_test/PlaintextNames.conf
renamed:    cryptfs/config_test/StrangeFeature.conf -&gt; internal/configfile/config_test/StrangeFeature.conf
renamed:    cryptfs/config_test/v1.conf -&gt; internal/configfile/config_test/v1.conf
renamed:    cryptfs/config_test/v2.conf -&gt; internal/configfile/config_test/v2.conf
renamed:    cryptfs/kdf.go -&gt; internal/configfile/kdf.go
renamed:    cryptfs/kdf_test.go -&gt; internal/configfile/kdf_test.go
renamed:    cryptfs/cryptfs_content.go -&gt; internal/contentenc/content.go
new file:   internal/contentenc/content_api.go
renamed:    cryptfs/content_test.go -&gt; internal/contentenc/content_test.go
renamed:    cryptfs/file_header.go -&gt; internal/contentenc/file_header.go
renamed:    cryptfs/intrablock.go -&gt; internal/contentenc/intrablock.go
renamed:    cryptfs/address_translation.go -&gt; internal/contentenc/offsets.go
new file:   internal/cryptocore/crypto_api.go
renamed:    cryptfs/gcm_go1.4.go -&gt; internal/cryptocore/gcm_go1.4.go
renamed:    cryptfs/gcm_go1.5.go -&gt; internal/cryptocore/gcm_go1.5.go
renamed:    cryptfs/nonce.go -&gt; internal/cryptocore/nonce.go
renamed:    cryptfs/openssl_aead.go -&gt; internal/cryptocore/openssl_aead.go
renamed:    cryptfs/openssl_benchmark.bash -&gt; internal/cryptocore/openssl_benchmark.bash
renamed:    cryptfs/openssl_test.go -&gt; internal/cryptocore/openssl_test.go
new file:   internal/nametransform/name_api.go
new file:   internal/nametransform/names_core.go
renamed:    cryptfs/names_diriv.go -&gt; internal/nametransform/names_diriv.go
renamed:    cryptfs/names_noiv.go -&gt; internal/nametransform/names_noiv.go
renamed:    cryptfs/names_test.go -&gt; internal/nametransform/names_test.go
new file:   internal/nametransform/pad16.go
renamed:    cryptfs/log.go -&gt; internal/toggledlog/log.go
renamed:    cryptfs/log_go1.4.go -&gt; internal/toggledlog/log_go1.4.go
renamed:    cryptfs/log_go1.5.go -&gt; internal/toggledlog/log_go1.5.go
modified:   main.go
modified:   masterkey.go
modified:   pathfs_frontend/file.go
modified:   pathfs_frontend/file_holes.go
modified:   pathfs_frontend/fs.go
modified:   pathfs_frontend/fs_dir.go
modified:   pathfs_frontend/names.go
modified:   test.bash
</content>
</entry>
</feed>
