Commit d2fe9754 authored by Eric Biggers's avatar Eric Biggers

fscrypt: fix all kerneldoc warnings

Fix all kerneldoc warnings in fs/crypto/ and include/linux/fscrypt.h.
Most of these were due to missing documentation for function parameters.

Detected with:

    scripts/kernel-doc -v -none fs/crypto/*.{c,h} include/linux/fscrypt.h

This cleanup makes it possible to check new patches for kerneldoc
warnings without having to filter out all the existing ones.

For consistency, also adjust some function "brief descriptions" to
include the parentheses and to wrap at 80 characters.  (The latter
matches the checkpatch expectation.)

Link: https://lore.kernel.org/r/20200511191358.53096-2-ebiggers@kernel.orgSigned-off-by: default avatarEric Biggers <ebiggers@google.com>
parent 2ef96a5b
...@@ -54,6 +54,7 @@ struct page *fscrypt_alloc_bounce_page(gfp_t gfp_flags) ...@@ -54,6 +54,7 @@ struct page *fscrypt_alloc_bounce_page(gfp_t gfp_flags)
/** /**
* fscrypt_free_bounce_page() - free a ciphertext bounce page * fscrypt_free_bounce_page() - free a ciphertext bounce page
* @bounce_page: the bounce page to free, or NULL
* *
* Free a bounce page that was allocated by fscrypt_encrypt_pagecache_blocks(), * Free a bounce page that was allocated by fscrypt_encrypt_pagecache_blocks(),
* or by fscrypt_alloc_bounce_page() directly. * or by fscrypt_alloc_bounce_page() directly.
...@@ -132,7 +133,8 @@ int fscrypt_crypt_block(const struct inode *inode, fscrypt_direction_t rw, ...@@ -132,7 +133,8 @@ int fscrypt_crypt_block(const struct inode *inode, fscrypt_direction_t rw,
} }
/** /**
* fscrypt_encrypt_pagecache_blocks() - Encrypt filesystem blocks from a pagecache page * fscrypt_encrypt_pagecache_blocks() - Encrypt filesystem blocks from a
* pagecache page
* @page: The locked pagecache page containing the block(s) to encrypt * @page: The locked pagecache page containing the block(s) to encrypt
* @len: Total size of the block(s) to encrypt. Must be a nonzero * @len: Total size of the block(s) to encrypt. Must be a nonzero
* multiple of the filesystem's block size. * multiple of the filesystem's block size.
...@@ -222,7 +224,8 @@ int fscrypt_encrypt_block_inplace(const struct inode *inode, struct page *page, ...@@ -222,7 +224,8 @@ int fscrypt_encrypt_block_inplace(const struct inode *inode, struct page *page,
EXPORT_SYMBOL(fscrypt_encrypt_block_inplace); EXPORT_SYMBOL(fscrypt_encrypt_block_inplace);
/** /**
* fscrypt_decrypt_pagecache_blocks() - Decrypt filesystem blocks in a pagecache page * fscrypt_decrypt_pagecache_blocks() - Decrypt filesystem blocks in a
* pagecache page
* @page: The locked pagecache page containing the block(s) to decrypt * @page: The locked pagecache page containing the block(s) to decrypt
* @len: Total size of the block(s) to decrypt. Must be a nonzero * @len: Total size of the block(s) to decrypt. Must be a nonzero
* multiple of the filesystem's block size. * multiple of the filesystem's block size.
...@@ -346,6 +349,8 @@ void fscrypt_msg(const struct inode *inode, const char *level, ...@@ -346,6 +349,8 @@ void fscrypt_msg(const struct inode *inode, const char *level,
/** /**
* fscrypt_init() - Set up for fs encryption. * fscrypt_init() - Set up for fs encryption.
*
* Return: 0 on success; -errno on failure
*/ */
static int __init fscrypt_init(void) static int __init fscrypt_init(void)
{ {
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
#include <crypto/skcipher.h> #include <crypto/skcipher.h>
#include "fscrypt_private.h" #include "fscrypt_private.h"
/** /*
* struct fscrypt_nokey_name - identifier for directory entry when key is absent * struct fscrypt_nokey_name - identifier for directory entry when key is absent
* *
* When userspace lists an encrypted directory without access to the key, the * When userspace lists an encrypted directory without access to the key, the
...@@ -105,8 +105,11 @@ static inline bool fscrypt_is_dot_dotdot(const struct qstr *str) ...@@ -105,8 +105,11 @@ static inline bool fscrypt_is_dot_dotdot(const struct qstr *str)
/** /**
* fscrypt_fname_encrypt() - encrypt a filename * fscrypt_fname_encrypt() - encrypt a filename
* * @inode: inode of the parent directory (for regular filenames)
* The output buffer must be at least as large as the input buffer. * or of the symlink (for symlink targets)
* @iname: the filename to encrypt
* @out: (output) the encrypted filename
* @olen: size of the encrypted filename. It must be at least @iname->len.
* Any extra space is filled with NUL padding before encryption. * Any extra space is filled with NUL padding before encryption.
* *
* Return: 0 on success, -errno on failure * Return: 0 on success, -errno on failure
...@@ -157,8 +160,11 @@ int fscrypt_fname_encrypt(const struct inode *inode, const struct qstr *iname, ...@@ -157,8 +160,11 @@ int fscrypt_fname_encrypt(const struct inode *inode, const struct qstr *iname,
/** /**
* fname_decrypt() - decrypt a filename * fname_decrypt() - decrypt a filename
* * @inode: inode of the parent directory (for regular filenames)
* The caller must have allocated sufficient memory for the @oname string. * or of the symlink (for symlink targets)
* @iname: the encrypted filename to decrypt
* @oname: (output) the decrypted filename. The caller must have allocated
* enough space for this, e.g. using fscrypt_fname_alloc_buffer().
* *
* Return: 0 on success, -errno on failure * Return: 0 on success, -errno on failure
*/ */
...@@ -206,7 +212,10 @@ static const char lookup_table[65] = ...@@ -206,7 +212,10 @@ static const char lookup_table[65] =
#define BASE64_CHARS(nbytes) DIV_ROUND_UP((nbytes) * 4, 3) #define BASE64_CHARS(nbytes) DIV_ROUND_UP((nbytes) * 4, 3)
/** /**
* base64_encode() - * base64_encode() - base64-encode some bytes
* @src: the bytes to encode
* @len: number of bytes to encode
* @dst: (output) the base64-encoded string. Not NUL-terminated.
* *
* Encodes the input string using characters from the set [A-Za-z0-9+,]. * Encodes the input string using characters from the set [A-Za-z0-9+,].
* The encoded string is roughly 4/3 times the size of the input string. * The encoded string is roughly 4/3 times the size of the input string.
...@@ -272,7 +281,12 @@ bool fscrypt_fname_encrypted_size(const struct inode *inode, u32 orig_len, ...@@ -272,7 +281,12 @@ bool fscrypt_fname_encrypted_size(const struct inode *inode, u32 orig_len,
} }
/** /**
* fscrypt_fname_alloc_buffer - allocate a buffer for presented filenames * fscrypt_fname_alloc_buffer() - allocate a buffer for presented filenames
* @inode: inode of the parent directory (for regular filenames)
* or of the symlink (for symlink targets)
* @max_encrypted_len: maximum length of encrypted filenames the buffer will be
* used to present
* @crypto_str: (output) buffer to allocate
* *
* Allocate a buffer that is large enough to hold any decrypted or encoded * Allocate a buffer that is large enough to hold any decrypted or encoded
* filename (null-terminated), for the given maximum encrypted filename length. * filename (null-terminated), for the given maximum encrypted filename length.
...@@ -297,9 +311,10 @@ int fscrypt_fname_alloc_buffer(const struct inode *inode, ...@@ -297,9 +311,10 @@ int fscrypt_fname_alloc_buffer(const struct inode *inode,
EXPORT_SYMBOL(fscrypt_fname_alloc_buffer); EXPORT_SYMBOL(fscrypt_fname_alloc_buffer);
/** /**
* fscrypt_fname_free_buffer - free the buffer for presented filenames * fscrypt_fname_free_buffer() - free a buffer for presented filenames
* @crypto_str: the buffer to free
* *
* Free the buffer allocated by fscrypt_fname_alloc_buffer(). * Free a buffer that was allocated by fscrypt_fname_alloc_buffer().
*/ */
void fscrypt_fname_free_buffer(struct fscrypt_str *crypto_str) void fscrypt_fname_free_buffer(struct fscrypt_str *crypto_str)
{ {
...@@ -311,10 +326,19 @@ void fscrypt_fname_free_buffer(struct fscrypt_str *crypto_str) ...@@ -311,10 +326,19 @@ void fscrypt_fname_free_buffer(struct fscrypt_str *crypto_str)
EXPORT_SYMBOL(fscrypt_fname_free_buffer); EXPORT_SYMBOL(fscrypt_fname_free_buffer);
/** /**
* fscrypt_fname_disk_to_usr() - converts a filename from disk space to user * fscrypt_fname_disk_to_usr() - convert an encrypted filename to
* space * user-presentable form
* * @inode: inode of the parent directory (for regular filenames)
* The caller must have allocated sufficient memory for the @oname string. * or of the symlink (for symlink targets)
* @hash: first part of the name's dirhash, if applicable. This only needs to
* be provided if the filename is located in an indexed directory whose
* encryption key may be unavailable. Not needed for symlink targets.
* @minor_hash: second part of the name's dirhash, if applicable
* @iname: encrypted filename to convert. May also be "." or "..", which
* aren't actually encrypted.
* @oname: output buffer for the user-presentable filename. The caller must
* have allocated enough space for this, e.g. using
* fscrypt_fname_alloc_buffer().
* *
* If the key is available, we'll decrypt the disk name. Otherwise, we'll * If the key is available, we'll decrypt the disk name. Otherwise, we'll
* encode it for presentation in fscrypt_nokey_name format. * encode it for presentation in fscrypt_nokey_name format.
......
...@@ -43,7 +43,7 @@ struct fscrypt_context_v2 { ...@@ -43,7 +43,7 @@ struct fscrypt_context_v2 {
u8 nonce[FS_KEY_DERIVATION_NONCE_SIZE]; u8 nonce[FS_KEY_DERIVATION_NONCE_SIZE];
}; };
/** /*
* fscrypt_context - the encryption context of an inode * fscrypt_context - the encryption context of an inode
* *
* This is the on-disk equivalent of an fscrypt_policy, stored alongside each * This is the on-disk equivalent of an fscrypt_policy, stored alongside each
...@@ -157,7 +157,7 @@ fscrypt_policy_flags(const union fscrypt_policy *policy) ...@@ -157,7 +157,7 @@ fscrypt_policy_flags(const union fscrypt_policy *policy)
BUG(); BUG();
} }
/** /*
* For encrypted symlinks, the ciphertext length is stored at the beginning * For encrypted symlinks, the ciphertext length is stored at the beginning
* of the string in little-endian format. * of the string in little-endian format.
*/ */
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
#include "fscrypt_private.h" #include "fscrypt_private.h"
/** /**
* fscrypt_file_open - prepare to open a possibly-encrypted regular file * fscrypt_file_open() - prepare to open a possibly-encrypted regular file
* @inode: the inode being opened * @inode: the inode being opened
* @filp: the struct file being set up * @filp: the struct file being set up
* *
...@@ -262,7 +262,7 @@ int __fscrypt_encrypt_symlink(struct inode *inode, const char *target, ...@@ -262,7 +262,7 @@ int __fscrypt_encrypt_symlink(struct inode *inode, const char *target,
EXPORT_SYMBOL_GPL(__fscrypt_encrypt_symlink); EXPORT_SYMBOL_GPL(__fscrypt_encrypt_symlink);
/** /**
* fscrypt_get_symlink - get the target of an encrypted symlink * fscrypt_get_symlink() - get the target of an encrypted symlink
* @inode: the symlink inode * @inode: the symlink inode
* @caddr: the on-disk contents of the symlink * @caddr: the on-disk contents of the symlink
* @max_size: size of @caddr buffer * @max_size: size of @caddr buffer
......
...@@ -475,7 +475,8 @@ int fscrypt_get_encryption_info(struct inode *inode) ...@@ -475,7 +475,8 @@ int fscrypt_get_encryption_info(struct inode *inode)
EXPORT_SYMBOL(fscrypt_get_encryption_info); EXPORT_SYMBOL(fscrypt_get_encryption_info);
/** /**
* fscrypt_put_encryption_info - free most of an inode's fscrypt data * fscrypt_put_encryption_info() - free most of an inode's fscrypt data
* @inode: an inode being evicted
* *
* Free the inode's fscrypt_info. Filesystems must call this when the inode is * Free the inode's fscrypt_info. Filesystems must call this when the inode is
* being evicted. An RCU grace period need not have elapsed yet. * being evicted. An RCU grace period need not have elapsed yet.
...@@ -488,7 +489,8 @@ void fscrypt_put_encryption_info(struct inode *inode) ...@@ -488,7 +489,8 @@ void fscrypt_put_encryption_info(struct inode *inode)
EXPORT_SYMBOL(fscrypt_put_encryption_info); EXPORT_SYMBOL(fscrypt_put_encryption_info);
/** /**
* fscrypt_free_inode - free an inode's fscrypt data requiring RCU delay * fscrypt_free_inode() - free an inode's fscrypt data requiring RCU delay
* @inode: an inode being freed
* *
* Free the inode's cached decrypted symlink target, if any. Filesystems must * Free the inode's cached decrypted symlink target, if any. Filesystems must
* call this after an RCU grace period, just before they free the inode. * call this after an RCU grace period, just before they free the inode.
...@@ -503,7 +505,8 @@ void fscrypt_free_inode(struct inode *inode) ...@@ -503,7 +505,8 @@ void fscrypt_free_inode(struct inode *inode)
EXPORT_SYMBOL(fscrypt_free_inode); EXPORT_SYMBOL(fscrypt_free_inode);
/** /**
* fscrypt_drop_inode - check whether the inode's master key has been removed * fscrypt_drop_inode() - check whether the inode's master key has been removed
* @inode: an inode being considered for eviction
* *
* Filesystems supporting fscrypt must call this from their ->drop_inode() * Filesystems supporting fscrypt must call this from their ->drop_inode()
* method so that encrypted inodes are evicted as soon as they're no longer in * method so that encrypted inodes are evicted as soon as they're no longer in
......
...@@ -16,7 +16,9 @@ ...@@ -16,7 +16,9 @@
#include "fscrypt_private.h" #include "fscrypt_private.h"
/** /**
* fscrypt_policies_equal - check whether two encryption policies are the same * fscrypt_policies_equal() - check whether two encryption policies are the same
* @policy1: the first policy
* @policy2: the second policy
* *
* Return: %true if equal, else %false * Return: %true if equal, else %false
*/ */
...@@ -170,7 +172,9 @@ static bool fscrypt_supported_v2_policy(const struct fscrypt_policy_v2 *policy, ...@@ -170,7 +172,9 @@ static bool fscrypt_supported_v2_policy(const struct fscrypt_policy_v2 *policy,
} }
/** /**
* fscrypt_supported_policy - check whether an encryption policy is supported * fscrypt_supported_policy() - check whether an encryption policy is supported
* @policy_u: the encryption policy
* @inode: the inode on which the policy will be used
* *
* Given an encryption policy, check whether all its encryption modes and other * Given an encryption policy, check whether all its encryption modes and other
* settings are supported by this kernel on the given inode. (But we don't * settings are supported by this kernel on the given inode. (But we don't
...@@ -192,7 +196,10 @@ bool fscrypt_supported_policy(const union fscrypt_policy *policy_u, ...@@ -192,7 +196,10 @@ bool fscrypt_supported_policy(const union fscrypt_policy *policy_u,
} }
/** /**
* fscrypt_new_context_from_policy - create a new fscrypt_context from a policy * fscrypt_new_context_from_policy() - create a new fscrypt_context from
* an fscrypt_policy
* @ctx_u: output context
* @policy_u: input policy
* *
* Create an fscrypt_context for an inode that is being assigned the given * Create an fscrypt_context for an inode that is being assigned the given
* encryption policy. A new nonce is randomly generated. * encryption policy. A new nonce is randomly generated.
...@@ -242,7 +249,11 @@ static int fscrypt_new_context_from_policy(union fscrypt_context *ctx_u, ...@@ -242,7 +249,11 @@ static int fscrypt_new_context_from_policy(union fscrypt_context *ctx_u,
} }
/** /**
* fscrypt_policy_from_context - convert an fscrypt_context to an fscrypt_policy * fscrypt_policy_from_context() - convert an fscrypt_context to
* an fscrypt_policy
* @policy_u: output policy
* @ctx_u: input context
* @ctx_size: size of input context in bytes
* *
* Given an fscrypt_context, build the corresponding fscrypt_policy. * Given an fscrypt_context, build the corresponding fscrypt_policy.
* *
......
...@@ -75,6 +75,7 @@ static inline bool fscrypt_has_encryption_key(const struct inode *inode) ...@@ -75,6 +75,7 @@ static inline bool fscrypt_has_encryption_key(const struct inode *inode)
/** /**
* fscrypt_needs_contents_encryption() - check whether an inode needs * fscrypt_needs_contents_encryption() - check whether an inode needs
* contents encryption * contents encryption
* @inode: the inode to check
* *
* Return: %true iff the inode is an encrypted regular file and the kernel was * Return: %true iff the inode is an encrypted regular file and the kernel was
* built with fscrypt support. * built with fscrypt support.
...@@ -504,7 +505,7 @@ static inline void fscrypt_set_ops(struct super_block *sb, ...@@ -504,7 +505,7 @@ static inline void fscrypt_set_ops(struct super_block *sb,
#endif /* !CONFIG_FS_ENCRYPTION */ #endif /* !CONFIG_FS_ENCRYPTION */
/** /**
* fscrypt_require_key - require an inode's encryption key * fscrypt_require_key() - require an inode's encryption key
* @inode: the inode we need the key for * @inode: the inode we need the key for
* *
* If the inode is encrypted, set up its encryption key if not already done. * If the inode is encrypted, set up its encryption key if not already done.
...@@ -530,7 +531,8 @@ static inline int fscrypt_require_key(struct inode *inode) ...@@ -530,7 +531,8 @@ static inline int fscrypt_require_key(struct inode *inode)
} }
/** /**
* fscrypt_prepare_link - prepare to link an inode into a possibly-encrypted directory * fscrypt_prepare_link() - prepare to link an inode into a possibly-encrypted
* directory
* @old_dentry: an existing dentry for the inode being linked * @old_dentry: an existing dentry for the inode being linked
* @dir: the target directory * @dir: the target directory
* @dentry: negative dentry for the target filename * @dentry: negative dentry for the target filename
...@@ -557,7 +559,8 @@ static inline int fscrypt_prepare_link(struct dentry *old_dentry, ...@@ -557,7 +559,8 @@ static inline int fscrypt_prepare_link(struct dentry *old_dentry,
} }
/** /**
* fscrypt_prepare_rename - prepare for a rename between possibly-encrypted directories * fscrypt_prepare_rename() - prepare for a rename between possibly-encrypted
* directories
* @old_dir: source directory * @old_dir: source directory
* @old_dentry: dentry for source file * @old_dentry: dentry for source file
* @new_dir: target directory * @new_dir: target directory
...@@ -590,7 +593,8 @@ static inline int fscrypt_prepare_rename(struct inode *old_dir, ...@@ -590,7 +593,8 @@ static inline int fscrypt_prepare_rename(struct inode *old_dir,
} }
/** /**
* fscrypt_prepare_lookup - prepare to lookup a name in a possibly-encrypted directory * fscrypt_prepare_lookup() - prepare to lookup a name in a possibly-encrypted
* directory
* @dir: directory being searched * @dir: directory being searched
* @dentry: filename being looked up * @dentry: filename being looked up
* @fname: (output) the name to use to search the on-disk directory * @fname: (output) the name to use to search the on-disk directory
...@@ -623,7 +627,8 @@ static inline int fscrypt_prepare_lookup(struct inode *dir, ...@@ -623,7 +627,8 @@ static inline int fscrypt_prepare_lookup(struct inode *dir,
} }
/** /**
* fscrypt_prepare_setattr - prepare to change a possibly-encrypted inode's attributes * fscrypt_prepare_setattr() - prepare to change a possibly-encrypted inode's
* attributes
* @dentry: dentry through which the inode is being changed * @dentry: dentry through which the inode is being changed
* @attr: attributes to change * @attr: attributes to change
* *
...@@ -648,7 +653,7 @@ static inline int fscrypt_prepare_setattr(struct dentry *dentry, ...@@ -648,7 +653,7 @@ static inline int fscrypt_prepare_setattr(struct dentry *dentry,
} }
/** /**
* fscrypt_prepare_symlink - prepare to create a possibly-encrypted symlink * fscrypt_prepare_symlink() - prepare to create a possibly-encrypted symlink
* @dir: directory in which the symlink is being created * @dir: directory in which the symlink is being created
* @target: plaintext symlink target * @target: plaintext symlink target
* @len: length of @target excluding null terminator * @len: length of @target excluding null terminator
...@@ -687,7 +692,7 @@ static inline int fscrypt_prepare_symlink(struct inode *dir, ...@@ -687,7 +692,7 @@ static inline int fscrypt_prepare_symlink(struct inode *dir,
} }
/** /**
* fscrypt_encrypt_symlink - encrypt the symlink target if needed * fscrypt_encrypt_symlink() - encrypt the symlink target if needed
* @inode: symlink inode * @inode: symlink inode
* @target: plaintext symlink target * @target: plaintext symlink target
* @len: length of @target excluding null terminator * @len: length of @target excluding null terminator
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment