/kernel/linux/linux-5.10/fs/crypto/ |
H A D | hooks.c | 173 * @disk_link: (out) the on-disk symlink target being prepared 176 * stores it in @disk_link->len, and validates it against @max_len. An 179 * Additionally, @disk_link->name is set to @target if the symlink will be 192 struct fscrypt_str *disk_link) in fscrypt_prepare_symlink() 204 disk_link->name = (unsigned char *)target; in fscrypt_prepare_symlink() 205 disk_link->len = len + 1; in fscrypt_prepare_symlink() 206 if (disk_link->len > max_len) in fscrypt_prepare_symlink() 226 &disk_link->len)) in fscrypt_prepare_symlink() 228 disk_link->len += sizeof(struct fscrypt_symlink_data); in fscrypt_prepare_symlink() 230 disk_link in fscrypt_prepare_symlink() 190 fscrypt_prepare_symlink(struct inode *dir, const char *target, unsigned int len, unsigned int max_len, struct fscrypt_str *disk_link) fscrypt_prepare_symlink() argument 235 __fscrypt_encrypt_symlink(struct inode *inode, const char *target, unsigned int len, struct fscrypt_str *disk_link) __fscrypt_encrypt_symlink() argument [all...] |
/kernel/linux/linux-6.6/fs/crypto/ |
H A D | hooks.c | 206 * @disk_link: (out) the on-disk symlink target being prepared 209 * stores it in @disk_link->len, and validates it against @max_len. An 212 * Additionally, @disk_link->name is set to @target if the symlink will be 225 struct fscrypt_str *disk_link) in fscrypt_prepare_symlink() 237 disk_link->name = (unsigned char *)target; in fscrypt_prepare_symlink() 238 disk_link->len = len + 1; in fscrypt_prepare_symlink() 239 if (disk_link->len > max_len) in fscrypt_prepare_symlink() 259 &disk_link->len)) in fscrypt_prepare_symlink() 261 disk_link->len += sizeof(struct fscrypt_symlink_data) + 1; in fscrypt_prepare_symlink() 263 disk_link in fscrypt_prepare_symlink() 223 fscrypt_prepare_symlink(struct inode *dir, const char *target, unsigned int len, unsigned int max_len, struct fscrypt_str *disk_link) fscrypt_prepare_symlink() argument 268 __fscrypt_encrypt_symlink(struct inode *inode, const char *target, unsigned int len, struct fscrypt_str *disk_link) __fscrypt_encrypt_symlink() argument [all...] |
/kernel/linux/linux-5.10/include/linux/ |
H A D | fscrypt.h | 249 struct fscrypt_str *disk_link); 251 unsigned int len, struct fscrypt_str *disk_link); 552 struct fscrypt_str *disk_link) in fscrypt_prepare_symlink() 556 disk_link->name = (unsigned char *)target; in fscrypt_prepare_symlink() 557 disk_link->len = len + 1; in fscrypt_prepare_symlink() 558 if (disk_link->len > max_len) in fscrypt_prepare_symlink() 566 struct fscrypt_str *disk_link) in __fscrypt_encrypt_symlink() 837 * @disk_link: (in/out) the on-disk symlink target being prepared 840 * into @disk_link->name. fscrypt_prepare_symlink() must have been called 841 * previously to compute @disk_link 548 fscrypt_prepare_symlink(struct inode *dir, const char *target, unsigned int len, unsigned int max_len, struct fscrypt_str *disk_link) fscrypt_prepare_symlink() argument 563 __fscrypt_encrypt_symlink(struct inode *inode, const char *target, unsigned int len, struct fscrypt_str *disk_link) __fscrypt_encrypt_symlink() argument 847 fscrypt_encrypt_symlink(struct inode *inode, const char *target, unsigned int len, struct fscrypt_str *disk_link) fscrypt_encrypt_symlink() argument [all...] |
/kernel/linux/linux-6.6/include/linux/ |
H A D | fscrypt.h | 379 struct fscrypt_str *disk_link); 381 unsigned int len, struct fscrypt_str *disk_link); 726 struct fscrypt_str *disk_link) in fscrypt_prepare_symlink() 730 disk_link->name = (unsigned char *)target; in fscrypt_prepare_symlink() 731 disk_link->len = len + 1; in fscrypt_prepare_symlink() 732 if (disk_link->len > max_len) in fscrypt_prepare_symlink() 740 struct fscrypt_str *disk_link) in __fscrypt_encrypt_symlink() 1023 * @disk_link: (in/out) the on-disk symlink target being prepared 1026 * into @disk_link->name. fscrypt_prepare_symlink() must have been called 1027 * previously to compute @disk_link 722 fscrypt_prepare_symlink(struct inode *dir, const char *target, unsigned int len, unsigned int max_len, struct fscrypt_str *disk_link) fscrypt_prepare_symlink() argument 737 __fscrypt_encrypt_symlink(struct inode *inode, const char *target, unsigned int len, struct fscrypt_str *disk_link) __fscrypt_encrypt_symlink() argument 1033 fscrypt_encrypt_symlink(struct inode *inode, const char *target, unsigned int len, struct fscrypt_str *disk_link) fscrypt_encrypt_symlink() argument [all...] |
/kernel/linux/linux-5.10/fs/f2fs/ |
H A D | namei.c | 658 struct fscrypt_str disk_link; in f2fs_symlink() local 667 &disk_link); in f2fs_symlink() 693 err = fscrypt_encrypt_symlink(inode, symname, len, &disk_link); in f2fs_symlink() 697 err = page_symlink(inode, disk_link.name, disk_link.len); in f2fs_symlink() 713 disk_link.len - 1); in f2fs_symlink() 727 if (disk_link.name != (unsigned char *)symname) in f2fs_symlink() 728 kfree(disk_link.name); in f2fs_symlink()
|
/kernel/linux/linux-6.6/fs/f2fs/ |
H A D | namei.c | 682 struct fscrypt_str disk_link; in f2fs_symlink() local 691 &disk_link); in f2fs_symlink() 717 err = fscrypt_encrypt_symlink(inode, symname, len, &disk_link); in f2fs_symlink() 721 err = page_symlink(inode, disk_link.name, disk_link.len); in f2fs_symlink() 737 disk_link.len - 1); in f2fs_symlink() 751 if (disk_link.name != (unsigned char *)symname) in f2fs_symlink() 752 kfree(disk_link.name); in f2fs_symlink()
|
/kernel/linux/linux-5.10/fs/ubifs/ |
H A D | dir.c | 1149 struct fscrypt_str disk_link; in ubifs_symlink() local 1158 &disk_link); in ubifs_symlink() 1166 req.new_ino_d = ALIGN(disk_link.len - 1, 8); in ubifs_symlink() 1184 ui->data = kmalloc(disk_link.len, GFP_NOFS); in ubifs_symlink() 1191 disk_link.name = ui->data; /* encrypt directly into ui->data */ in ubifs_symlink() 1192 err = fscrypt_encrypt_symlink(inode, symname, len, &disk_link); in ubifs_symlink() 1196 memcpy(ui->data, disk_link.name, disk_link.len); in ubifs_symlink() 1203 * data length is @disk_link.len - 1, not @disk_link in ubifs_symlink() [all...] |
/kernel/linux/linux-6.6/fs/ubifs/ |
H A D | dir.c | 1146 struct fscrypt_str disk_link; in ubifs_symlink() local 1155 &disk_link); in ubifs_symlink() 1163 req.new_ino_d = ALIGN(disk_link.len - 1, 8); in ubifs_symlink() 1181 ui->data = kmalloc(disk_link.len, GFP_NOFS); in ubifs_symlink() 1188 disk_link.name = ui->data; /* encrypt directly into ui->data */ in ubifs_symlink() 1189 err = fscrypt_encrypt_symlink(inode, symname, len, &disk_link); in ubifs_symlink() 1193 memcpy(ui->data, disk_link.name, disk_link.len); in ubifs_symlink() 1200 * data length is @disk_link.len - 1, not @disk_link in ubifs_symlink() [all...] |
/kernel/linux/linux-6.6/fs/ext4/ |
H A D | namei.c | 3343 struct fscrypt_str *disk_link) in ext4_init_symlink_block() 3359 memcpy(kaddr, disk_link->name, disk_link->len); in ext4_init_symlink_block() 3360 inode->i_size = disk_link->len - 1; in ext4_init_symlink_block() 3375 struct fscrypt_str disk_link; in ext4_symlink() local 3382 &disk_link); in ext4_symlink() 3411 err = fscrypt_encrypt_symlink(inode, symname, len, &disk_link); in ext4_symlink() 3416 if ((disk_link.len > EXT4_N_BLOCKS * 4)) { in ext4_symlink() 3424 if ((disk_link.len > EXT4_N_BLOCKS * 4)) { in ext4_symlink() 3426 err = ext4_init_symlink_block(handle, inode, &disk_link); in ext4_symlink() 3342 ext4_init_symlink_block(handle_t *handle, struct inode *inode, struct fscrypt_str *disk_link) ext4_init_symlink_block() argument [all...] |
/kernel/linux/linux-5.10/fs/ext4/ |
H A D | namei.c | 3436 struct fscrypt_str disk_link; in ext4_symlink() local 3442 &disk_link); in ext4_symlink() 3450 if ((disk_link.len > EXT4_N_BLOCKS * 4)) { in ext4_symlink() 3481 err = fscrypt_encrypt_symlink(inode, symname, len, &disk_link); in ext4_symlink() 3487 if ((disk_link.len > EXT4_N_BLOCKS * 4)) { in ext4_symlink() 3509 err = __page_symlink(inode, disk_link.name, disk_link.len, 1); in ext4_symlink() 3535 memcpy((char *)&EXT4_I(inode)->i_data, disk_link.name, in ext4_symlink() 3536 disk_link.len); in ext4_symlink() 3537 inode->i_size = disk_link in ext4_symlink() [all...] |