fscrypt: make fscrypt_operations.max_namelen an integer
authorEric Biggers <ebiggers@google.com>
Mon, 30 Apr 2018 22:51:44 +0000 (15:51 -0700)
committerTheodore Ts'o <tytso@mit.edu>
Sun, 20 May 2018 20:21:03 +0000 (16:21 -0400)
commite12ee6836a3fd3c6ebc9b2dc8a7974af592340d0
tree64b030404b24cab9026483250f29aaca36741c5c
parent0c4cdb27caa40167a7369a986afcde3d1d913b06
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