• Eric Biggers's avatar
    ext4: require key for truncate(2) of encrypted file · 63136858
    Eric Biggers authored
    Currently, filesystems allow truncate(2) on an encrypted file without
    the encryption key.  However, it's impossible to correctly handle the
    case where the size being truncated to is not a multiple of the
    filesystem block size, because that would require decrypting the final
    block, zeroing the part beyond i_size, then encrypting the block.
    
    As other modifications to encrypted file contents are prohibited without
    the key, just prohibit truncate(2) as well, making it fail with ENOKEY.
    Signed-off-by: default avatarEric Biggers <ebiggers@google.com>
    Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
    63136858
inode.c 175 KB