fscrypt: make fscrypt_operations.max_namelen an integer
authorEric Biggers <ebiggers@google.com>
Mon, 30 Apr 2018 22:51:44 +0000 (15:51 -0700)
committerJaegeuk Kim <jaegeuk@kernel.org>
Thu, 28 Jun 2018 16:37:40 +0000 (09:37 -0700)
commitab8345a11caac9699dcc6ce5e7cd63ab5203215e
treea71568273c3b1463a1ff49efcef98ee3e53a0e12
parent65702a6ef79b686b76f7c0cb21d0460bb33c75ba
fscrypt: make fscrypt_operations.max_namelen an integer

Now ->max_namelen() is only called to limit the filename length when
adding NUL padding, and only for real filenames -- not symlink targets.
It also didn't give the correct length for symlink targets anyway since
it forgot to subtract 'sizeof(struct fscrypt_symlink_data)'.

Thus, change ->max_namelen from a function to a simple 'unsigned int'
that gives the filesystem's maximum filename length.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
fs/crypto/fname.c
fs/ext4/super.c
fs/f2fs/super.c
fs/ubifs/crypto.c
include/linux/fscrypt_supp.h