Code cleanups and a bug fix
- W=1 compiler warning cleanups - Mutex initialization simplification - Protect against NULL pointer exception during mount -----BEGIN PGP SIGNATURE----- iQJFBAABCgAvFiEEKvuQkp28KvPJn/fVfL7QslYSS/0FAmCTTQoRHGNvZGVAdHlo aWNrcy5jb20ACgkQfL7QslYSS/3M4RAAlpWKtZlUd83gr2wS7jKX+WR6Bmc9yu2Q hH9eJRca1O3LQHzRfsh6Y4PQmQD10kPOZUD4Qfy5FgYebNu/yapjx+2O7VpXeiiu b+Ien7l5f2qyBUjjIypW7m0T52YHDV5vc2nWkGoxYl3g6ecla3THdCmzpMD7iAUa 7tNdDd+zF+I2Lm0nVW2r/wLSUHoWs1d5u5GKOWkWgyEa80A4F6nHR6g+1GuUYhpE 8jfo5NnGGYjM3M+uH2MUBGan7K99YH+bTTsCSeEOSx7MK1X7zeH9pKaHIpPIYI6n m7iymS0qAfkdlK8GEMLVTgjVPY3Jh6f7iLug2+js4y+j2sXsBZvJzQHRS6uKu4YP dW/Da/0qntnnIyE0gD/SnwRGjTfv3LBbnw2vJSv2d9z9N50gIHJB43ZFP4XYfK0n WWHce7W7O+lo+4ZPTDd4G6Nz96Fi9Bl6bMA71Pw6P/J9KWnl6LOyp95YHifDlZ+f asYkxOvHDJagA6mKos0lnc/GT8IPAe65p6Jsq0IE32hplS4Cq9ajrUZ+3+VHsADr ZvG84IWe2vK2fWgvcaSpxLx3BhJTh/qkN/ISOykzVMWbet114XeXCC4hOQOVqU/A fsJgq6TeMMlpBeUnHobRN0AihGpatgiaMq7GtlZyEmk4Rkotf65vw/gmnR301pDq tTVVPw1XTdQ= =aHZx -----END PGP SIGNATURE----- Merge tag 'ecryptfs-5.13-rc1-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/tyhicks/ecryptfs Pull ecryptfs updates from Tyler Hicks: "Code cleanups and a bug fix - W=1 compiler warning cleanups - Mutex initialization simplification - Protect against NULL pointer exception during mount" * tag 'ecryptfs-5.13-rc1-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/tyhicks/ecryptfs: ecryptfs: fix kernel panic with null dev_name ecryptfs: remove unused helpers ecryptfs: Fix typo in message eCryptfs: Use DEFINE_MUTEX() for mutex lock ecryptfs: keystore: Fix some kernel-doc issues and demote non-conformant headers ecryptfs: inode: Help out nearly-there header and demote non-conformant ones ecryptfs: mmap: Help out one function header and demote other abuses ecryptfs: crypto: Supply some missing param descriptions and demote abuses ecryptfs: miscdev: File headers are not good kernel-doc candidates ecryptfs: main: Demote a bunch of non-conformant kernel-doc headers ecryptfs: messaging: Add missing param descriptions and demote abuses ecryptfs: super: Fix formatting, naming and kernel-doc abuses ecryptfs: file: Demote kernel-doc abuses ecryptfs: kthread: Demote file header and provide description for 'cred' ecryptfs: dentry: File headers are not good candidates for kernel-doc ecryptfs: debug: Demote a couple of kernel-doc abuses ecryptfs: read_write: File headers do not make good candidates for kernel-doc ecryptfs: use DEFINE_MUTEX() for mutex lock eCryptfs: add a semicolon
This commit is contained in:
commit
682a8e2b41
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
*
|
||||
* Copyright (C) 1997-2004 Erez Zadok
|
||||
|
@ -350,7 +350,7 @@ out:
|
|||
return rc;
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* lower_offset_for_page
|
||||
*
|
||||
* Convert an eCryptfs page index into a lower byte offset
|
||||
|
@ -535,7 +535,7 @@ int ecryptfs_decrypt_page(struct page *page)
|
|||
rc = crypt_extent(crypt_stat, page, page,
|
||||
extent_offset, DECRYPT);
|
||||
if (rc) {
|
||||
printk(KERN_ERR "%s: Error encrypting extent; "
|
||||
printk(KERN_ERR "%s: Error decrypting extent; "
|
||||
"rc = [%d]\n", __func__, rc);
|
||||
goto out;
|
||||
}
|
||||
|
@ -627,9 +627,8 @@ void ecryptfs_set_default_sizes(struct ecryptfs_crypt_stat *crypt_stat)
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_compute_root_iv
|
||||
* @crypt_stats
|
||||
*
|
||||
* On error, sets the root IV to all 0's.
|
||||
*/
|
||||
|
@ -1370,7 +1369,7 @@ int ecryptfs_read_and_validate_xattr_region(struct dentry *dentry,
|
|||
return rc;
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_read_metadata
|
||||
*
|
||||
* Common entry point for reading file metadata. From here, we could
|
||||
|
@ -1448,7 +1447,7 @@ out:
|
|||
return rc;
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_encrypt_filename - encrypt filename
|
||||
*
|
||||
* CBC-encrypts the filename. We do not want to encrypt the same
|
||||
|
@ -1590,11 +1589,10 @@ out:
|
|||
|
||||
struct kmem_cache *ecryptfs_key_tfm_cache;
|
||||
static struct list_head key_tfm_list;
|
||||
struct mutex key_tfm_list_mutex;
|
||||
DEFINE_MUTEX(key_tfm_list_mutex);
|
||||
|
||||
int __init ecryptfs_init_crypto(void)
|
||||
{
|
||||
mutex_init(&key_tfm_list_mutex);
|
||||
INIT_LIST_HEAD(&key_tfm_list);
|
||||
return 0;
|
||||
}
|
||||
|
@ -1877,10 +1875,11 @@ out:
|
|||
|
||||
/**
|
||||
* ecryptfs_encrypt_and_encode_filename - converts a plaintext file name to cipher text
|
||||
* @crypt_stat: The crypt_stat struct associated with the file anem to encode
|
||||
* @encoded_name: The encrypted name
|
||||
* @encoded_name_size: Length of the encrypted name
|
||||
* @mount_crypt_stat: The crypt_stat struct associated with the file name to encode
|
||||
* @name: The plaintext name
|
||||
* @length: The length of the plaintext
|
||||
* @encoded_name: The encypted name
|
||||
* @name_size: The length of the plaintext name
|
||||
*
|
||||
* Encrypts and encodes a filename into something that constitutes a
|
||||
* valid filename for a filesystem, with printable characters.
|
||||
|
@ -1992,7 +1991,7 @@ static bool is_dot_dotdot(const char *name, size_t name_size)
|
|||
* ecryptfs_decode_and_decrypt_filename - converts the encoded cipher text name to decoded plaintext
|
||||
* @plaintext_name: The plaintext name
|
||||
* @plaintext_name_size: The plaintext name size
|
||||
* @ecryptfs_dir_dentry: eCryptfs directory dentry
|
||||
* @sb: Ecryptfs's super_block
|
||||
* @name: The filename in cipher text
|
||||
* @name_size: The cipher text name size
|
||||
*
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
* Functions only useful for debugging.
|
||||
*
|
||||
|
@ -9,7 +9,7 @@
|
|||
|
||||
#include "ecryptfs_kernel.h"
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_dump_auth_tok - debug function to print auth toks
|
||||
*
|
||||
* This function will print the contents of an ecryptfs authentication
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
*
|
||||
* Copyright (C) 1997-2003 Erez Zadok
|
||||
|
|
|
@ -513,7 +513,7 @@ ecryptfs_dentry_to_lower_path(struct dentry *dentry)
|
|||
}
|
||||
|
||||
#define ecryptfs_printk(type, fmt, arg...) \
|
||||
__ecryptfs_printk(type "%s: " fmt, __func__, ## arg);
|
||||
__ecryptfs_printk(type "%s: " fmt, __func__, ## arg)
|
||||
__printf(1, 2)
|
||||
void __ecryptfs_printk(const char *fmt, ...);
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
*
|
||||
* Copyright (C) 1997-2004 Erez Zadok
|
||||
|
@ -19,7 +19,7 @@
|
|||
#include <linux/fs_stack.h>
|
||||
#include "ecryptfs_kernel.h"
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_read_update_atime
|
||||
*
|
||||
* generic_file_read updates the atime of upper layer inode. But, it
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
*
|
||||
* Copyright (C) 1997-2004 Erez Zadok
|
||||
|
@ -199,7 +199,7 @@ out_lock:
|
|||
return inode;
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_initialize_file
|
||||
*
|
||||
* Cause the file to be changed from a basic empty file to an ecryptfs
|
||||
|
@ -242,10 +242,8 @@ out:
|
|||
return rc;
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_create
|
||||
* @dir: The inode of the directory in which to create the file.
|
||||
* @dentry: The eCryptfs dentry
|
||||
* @mode: The mode of the new file.
|
||||
*
|
||||
* Creates a new file.
|
||||
|
@ -313,7 +311,7 @@ static int ecryptfs_i_size_read(struct dentry *dentry, struct inode *inode)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_lookup_interpose - Dentry interposition for a lookup
|
||||
*/
|
||||
static struct dentry *ecryptfs_lookup_interpose(struct dentry *dentry,
|
||||
|
@ -873,6 +871,7 @@ ecryptfs_permission(struct user_namespace *mnt_userns, struct inode *inode,
|
|||
|
||||
/**
|
||||
* ecryptfs_setattr
|
||||
* @mnt_userns: user namespace of the target mount
|
||||
* @dentry: dentry handle to the inode to modify
|
||||
* @ia: Structure with flags of what to change and values
|
||||
*
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
* In-kernel key management code. Includes functions to parse and
|
||||
* write authentication token-related packets with the underlying
|
||||
|
@ -21,7 +21,7 @@
|
|||
#include <linux/slab.h>
|
||||
#include "ecryptfs_kernel.h"
|
||||
|
||||
/**
|
||||
/*
|
||||
* request_key returned an error instead of a valid key address;
|
||||
* determine the type of error, make appropriate log entries, and
|
||||
* return an error code.
|
||||
|
@ -536,8 +536,9 @@ out:
|
|||
|
||||
/**
|
||||
* ecryptfs_find_auth_tok_for_sig
|
||||
* @auth_tok_key: key containing the authentication token
|
||||
* @auth_tok: Set to the matching auth_tok; NULL if not found
|
||||
* @crypt_stat: inode crypt_stat crypto context
|
||||
* @mount_crypt_stat: inode crypt_stat crypto context
|
||||
* @sig: Sig of auth_tok to find
|
||||
*
|
||||
* For now, this function simply looks at the registered auth_tok's
|
||||
|
@ -576,7 +577,7 @@ ecryptfs_find_auth_tok_for_sig(
|
|||
return rc;
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* write_tag_70_packet can gobble a lot of stack space. We stuff most
|
||||
* of the function's parameters in a kmalloc'd struct to help reduce
|
||||
* eCryptfs' overall stack usage.
|
||||
|
@ -604,7 +605,7 @@ struct ecryptfs_write_tag_70_packet_silly_stack {
|
|||
struct shash_desc *hash_desc;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* write_tag_70_packet - Write encrypted filename (EFN) packet against FNEK
|
||||
* @filename: NULL-terminated filename string
|
||||
*
|
||||
|
@ -873,7 +874,7 @@ struct ecryptfs_parse_tag_70_packet_silly_stack {
|
|||
};
|
||||
|
||||
/**
|
||||
* parse_tag_70_packet - Parse and process FNEK-encrypted passphrase packet
|
||||
* ecryptfs_parse_tag_70_packet - Parse and process FNEK-encrypted passphrase packet
|
||||
* @filename: This function kmalloc's the memory for the filename
|
||||
* @filename_size: This function sets this to the amount of memory
|
||||
* kmalloc'd for the filename
|
||||
|
@ -1172,7 +1173,7 @@ decrypt_pki_encrypted_session_key(struct ecryptfs_auth_tok *auth_tok,
|
|||
rc = ecryptfs_cipher_code_to_string(crypt_stat->cipher, cipher_code);
|
||||
if (rc) {
|
||||
ecryptfs_printk(KERN_ERR, "Cipher code [%d] is invalid\n",
|
||||
cipher_code)
|
||||
cipher_code);
|
||||
goto out;
|
||||
}
|
||||
crypt_stat->flags |= ECRYPTFS_KEY_VALID;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
*
|
||||
* Copyright (C) 2008 International Business Machines Corp.
|
||||
|
@ -108,6 +108,7 @@ void ecryptfs_destroy_kthread(void)
|
|||
* @lower_file: Result of dentry_open by root on lower dentry
|
||||
* @lower_dentry: Lower dentry for file to open
|
||||
* @lower_mnt: Lower vfsmount for file to open
|
||||
* @cred: credential to use for this call
|
||||
*
|
||||
* This function gets a r/w file opened against the lower dentry.
|
||||
*
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
*
|
||||
* Copyright (C) 1997-2003 Erez Zadok
|
||||
|
@ -24,7 +24,7 @@
|
|||
#include <linux/magic.h>
|
||||
#include "ecryptfs_kernel.h"
|
||||
|
||||
/**
|
||||
/*
|
||||
* Module parameter that defines the ecryptfs_verbosity level.
|
||||
*/
|
||||
int ecryptfs_verbosity = 0;
|
||||
|
@ -34,7 +34,7 @@ MODULE_PARM_DESC(ecryptfs_verbosity,
|
|||
"Initial verbosity level (0 or 1; defaults to "
|
||||
"0, which is Quiet)");
|
||||
|
||||
/**
|
||||
/*
|
||||
* Module parameter that defines the number of message buffer elements
|
||||
*/
|
||||
unsigned int ecryptfs_message_buf_len = ECRYPTFS_DEFAULT_MSG_CTX_ELEMS;
|
||||
|
@ -43,7 +43,7 @@ module_param(ecryptfs_message_buf_len, uint, 0);
|
|||
MODULE_PARM_DESC(ecryptfs_message_buf_len,
|
||||
"Number of message buffer elements");
|
||||
|
||||
/**
|
||||
/*
|
||||
* Module parameter that defines the maximum guaranteed amount of time to wait
|
||||
* for a response from ecryptfsd. The actual sleep time will be, more than
|
||||
* likely, a small amount greater than this specified value, but only less if
|
||||
|
@ -57,7 +57,7 @@ MODULE_PARM_DESC(ecryptfs_message_wait_timeout,
|
|||
"sleep while waiting for a message response from "
|
||||
"userspace");
|
||||
|
||||
/**
|
||||
/*
|
||||
* Module parameter that is an estimate of the maximum number of users
|
||||
* that will be concurrently using eCryptfs. Set this to the right
|
||||
* value to balance performance and memory use.
|
||||
|
@ -80,7 +80,7 @@ void __ecryptfs_printk(const char *fmt, ...)
|
|||
va_end(args);
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_init_lower_file
|
||||
* @ecryptfs_dentry: Fully initialized eCryptfs dentry object, with
|
||||
* the lower dentry and the lower mount set
|
||||
|
@ -221,7 +221,7 @@ static void ecryptfs_init_mount_crypt_stat(
|
|||
|
||||
/**
|
||||
* ecryptfs_parse_options
|
||||
* @sb: The ecryptfs super block
|
||||
* @sbi: The ecryptfs super block
|
||||
* @options: The options passed to the kernel
|
||||
* @check_ruid: set to 1 if device uid should be checked against the ruid
|
||||
*
|
||||
|
@ -466,10 +466,10 @@ out:
|
|||
struct kmem_cache *ecryptfs_sb_info_cache;
|
||||
static struct file_system_type ecryptfs_fs_type;
|
||||
|
||||
/**
|
||||
* ecryptfs_get_sb
|
||||
* @fs_type
|
||||
* @flags
|
||||
/*
|
||||
* ecryptfs_mount
|
||||
* @fs_type: The filesystem type that the superblock should belong to
|
||||
* @flags: The flags associated with the mount
|
||||
* @dev_name: The path to mount over
|
||||
* @raw_data: The options passed into the kernel
|
||||
*/
|
||||
|
@ -492,6 +492,12 @@ static struct dentry *ecryptfs_mount(struct file_system_type *fs_type, int flags
|
|||
goto out;
|
||||
}
|
||||
|
||||
if (!dev_name) {
|
||||
rc = -EINVAL;
|
||||
err = "Device name cannot be null";
|
||||
goto out;
|
||||
}
|
||||
|
||||
rc = ecryptfs_parse_options(sbi, raw_data, &check_ruid);
|
||||
if (rc) {
|
||||
err = "Error parsing options";
|
||||
|
@ -635,7 +641,7 @@ static struct file_system_type ecryptfs_fs_type = {
|
|||
};
|
||||
MODULE_ALIAS_FS("ecryptfs");
|
||||
|
||||
/**
|
||||
/*
|
||||
* inode_info_init_once
|
||||
*
|
||||
* Initializes the ecryptfs_inode_info_cache when it is created
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
*
|
||||
* Copyright (C) 2004-2008 International Business Machines Corp.
|
||||
|
@ -14,10 +14,10 @@
|
|||
|
||||
static LIST_HEAD(ecryptfs_msg_ctx_free_list);
|
||||
static LIST_HEAD(ecryptfs_msg_ctx_alloc_list);
|
||||
static struct mutex ecryptfs_msg_ctx_lists_mux;
|
||||
static DEFINE_MUTEX(ecryptfs_msg_ctx_lists_mux);
|
||||
|
||||
static struct hlist_head *ecryptfs_daemon_hash;
|
||||
struct mutex ecryptfs_daemon_hash_mux;
|
||||
DEFINE_MUTEX(ecryptfs_daemon_hash_mux);
|
||||
static int ecryptfs_hash_bits;
|
||||
#define ecryptfs_current_euid_hash(uid) \
|
||||
hash_long((unsigned long)from_kuid(&init_user_ns, current_euid()), ecryptfs_hash_bits)
|
||||
|
@ -147,7 +147,7 @@ out:
|
|||
return rc;
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_exorcise_daemon - Destroy the daemon struct
|
||||
*
|
||||
* Must be called ceremoniously while in possession of
|
||||
|
@ -181,7 +181,8 @@ out:
|
|||
}
|
||||
|
||||
/**
|
||||
* ecryptfs_process_reponse
|
||||
* ecryptfs_process_response
|
||||
* @daemon: eCryptfs daemon object
|
||||
* @msg: The ecryptfs message received; the caller should sanity check
|
||||
* msg->data_len and free the memory
|
||||
* @seq: The sequence number of the message; must match the sequence
|
||||
|
@ -250,6 +251,7 @@ out:
|
|||
* ecryptfs_send_message_locked
|
||||
* @data: The data to send
|
||||
* @data_len: The length of data
|
||||
* @msg_type: Type of message
|
||||
* @msg_ctx: The message context allocated for the send
|
||||
*
|
||||
* Must be called with ecryptfs_daemon_hash_mux held.
|
||||
|
@ -359,7 +361,6 @@ int __init ecryptfs_init_messaging(void)
|
|||
"too large, defaulting to [%d] users\n", __func__,
|
||||
ecryptfs_number_of_users);
|
||||
}
|
||||
mutex_init(&ecryptfs_daemon_hash_mux);
|
||||
mutex_lock(&ecryptfs_daemon_hash_mux);
|
||||
ecryptfs_hash_bits = 1;
|
||||
while (ecryptfs_number_of_users >> ecryptfs_hash_bits)
|
||||
|
@ -383,7 +384,6 @@ int __init ecryptfs_init_messaging(void)
|
|||
rc = -ENOMEM;
|
||||
goto out;
|
||||
}
|
||||
mutex_init(&ecryptfs_msg_ctx_lists_mux);
|
||||
mutex_lock(&ecryptfs_msg_ctx_lists_mux);
|
||||
ecryptfs_msg_counter = 0;
|
||||
for (i = 0; i < ecryptfs_message_buf_len; i++) {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
*
|
||||
* Copyright (C) 2008 International Business Machines Corp.
|
||||
|
@ -312,6 +312,7 @@ out_unlock_daemon:
|
|||
|
||||
/**
|
||||
* ecryptfs_miscdev_response - miscdevess response to message previously sent to daemon
|
||||
* @daemon: eCryptfs daemon object
|
||||
* @data: Bytes comprising struct ecryptfs_message
|
||||
* @data_size: sizeof(struct ecryptfs_message) + data len
|
||||
* @seq: Sequence number for miscdev response packet
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
* This is where eCryptfs coordinates the symmetric encryption and
|
||||
* decryption of the file data as it passes between the lower
|
||||
|
@ -22,7 +22,7 @@
|
|||
#include <asm/unaligned.h>
|
||||
#include "ecryptfs_kernel.h"
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_get_locked_page
|
||||
*
|
||||
* Get one page from cache or lower f/s, return error otherwise.
|
||||
|
@ -41,6 +41,7 @@ struct page *ecryptfs_get_locked_page(struct inode *inode, loff_t index)
|
|||
/**
|
||||
* ecryptfs_writepage
|
||||
* @page: Page that is locked before this call is made
|
||||
* @wbc: Write-back control structure
|
||||
*
|
||||
* Returns zero on success; non-zero otherwise
|
||||
*
|
||||
|
@ -78,7 +79,7 @@ static void strip_xattr_flag(char *page_virt,
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* Header Extent:
|
||||
* Octets 0-7: Unencrypted file size (big-endian)
|
||||
* Octets 8-15: eCryptfs special marker
|
||||
|
@ -229,7 +230,7 @@ out:
|
|||
return rc;
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* Called with lower inode mutex held.
|
||||
*/
|
||||
static int fill_zeros_to_end_of_page(struct page *page, unsigned int to)
|
||||
|
@ -368,7 +369,7 @@ out:
|
|||
return rc;
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_write_inode_size_to_header
|
||||
*
|
||||
* Writes the lower file size to the first 8 bytes of the header.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
*
|
||||
* Copyright (C) 2007 International Business Machines Corp.
|
||||
|
@ -230,6 +230,8 @@ int ecryptfs_read_lower(char *data, loff_t offset, size_t size,
|
|||
* ecryptfs_read_lower_page_segment
|
||||
* @page_for_ecryptfs: The page into which data for eCryptfs will be
|
||||
* written
|
||||
* @page_index: Page index in @page_for_ecryptfs from which to start
|
||||
* writing
|
||||
* @offset_in_page: Offset in @page_for_ecryptfs from which to start
|
||||
* writing
|
||||
* @size: The number of bytes to write into @page_for_ecryptfs
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/**
|
||||
/*
|
||||
* eCryptfs: Linux filesystem encryption layer
|
||||
*
|
||||
* Copyright (C) 1997-2003 Erez Zadok
|
||||
|
@ -81,7 +81,7 @@ static void ecryptfs_destroy_inode(struct inode *inode)
|
|||
|
||||
/**
|
||||
* ecryptfs_statfs
|
||||
* @sb: The ecryptfs super block
|
||||
* @dentry: The ecryptfs dentry
|
||||
* @buf: The struct kstatfs to fill in with stats
|
||||
*
|
||||
* Get the filesystem statistics. Currently, we let this pass right through
|
||||
|
@ -108,7 +108,7 @@ static int ecryptfs_statfs(struct dentry *dentry, struct kstatfs *buf)
|
|||
|
||||
/**
|
||||
* ecryptfs_evict_inode
|
||||
* @inode - The ecryptfs inode
|
||||
* @inode: The ecryptfs inode
|
||||
*
|
||||
* Called by iput() when the inode reference count reached zero
|
||||
* and the inode is not hashed anywhere. Used to clear anything
|
||||
|
@ -123,7 +123,7 @@ static void ecryptfs_evict_inode(struct inode *inode)
|
|||
iput(ecryptfs_inode_to_lower(inode));
|
||||
}
|
||||
|
||||
/**
|
||||
/*
|
||||
* ecryptfs_show_options
|
||||
*
|
||||
* Prints the mount options for a given superblock.
|
||||
|
|
Loading…
Reference in New Issue