summaryrefslogtreecommitdiffstats
path: root/virt/lib
diff options
context:
space:
mode:
authorDaniel Rosenberg <drosen@google.com>2020-11-19 06:09:04 +0000
committerJaegeuk Kim <jaegeuk@kernel.org>2020-12-02 22:00:21 -0800
commit7ad08a58bf67594057362e45cbddd3e27e53e557 (patch)
treecc8f281ee95421efe8cb34564938b466141ee506 /virt/lib
parentbb9cd9106b22b4fc5ff8d78a752be8a4ba2cbba5 (diff)
downloadlinux-stable-7ad08a58bf67594057362e45cbddd3e27e53e557.tar.gz
linux-stable-7ad08a58bf67594057362e45cbddd3e27e53e557.tar.bz2
linux-stable-7ad08a58bf67594057362e45cbddd3e27e53e557.zip
f2fs: Handle casefolding with Encryption
Expand f2fs's casefolding support to include encrypted directories. To index casefolded+encrypted directories, we use the SipHash of the casefolded name, keyed by a key derived from the directory's fscrypt master key. This ensures that the dirhash doesn't leak information about the plaintext filenames. Encryption keys are unavailable during roll-forward recovery, so we can't compute the dirhash when recovering a new dentry in an encrypted + casefolded directory. To avoid having to force a checkpoint when a new file is fsync'ed, store the dirhash on-disk appended to i_name. This patch incorporates work by Eric Biggers <ebiggers@google.com> and Jaegeuk Kim <jaegeuk@kernel.org>. Co-developed-by: Eric Biggers <ebiggers@google.com> Signed-off-by: Eric Biggers <ebiggers@google.com> Signed-off-by: Daniel Rosenberg <drosen@google.com> Reviewed-by: Eric Biggers <ebiggers@google.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'virt/lib')
0 files changed, 0 insertions, 0 deletions