Lines Matching full:symlink
175 * fscrypt_prepare_symlink() - prepare to create a possibly-encrypted symlink
176 * @dir: directory in which the symlink is being created
177 * @target: plaintext symlink target
179 * @max_len: space the filesystem has available to store the symlink target
180 * @disk_link: (out) the on-disk symlink target being prepared
182 * This function computes the size the symlink target will require on-disk,
184 * encrypted symlink may be longer than the original.
186 * Additionally, @disk_link->name is set to @target if the symlink will be
187 * unencrypted, but left NULL if the symlink will be encrypted. For encrypted
190 * filesystems need to know the size of the symlink target before creating the
191 * inode, e.g. to determine whether it will be a "fast" or "slow" symlink.)
193 * Return: 0 on success, -ENAMETOOLONG if the symlink target is too long,
204 * To calculate the size of the encrypted symlink target we need to know in fscrypt_prepare_symlink()
221 * Calculate the size of the encrypted symlink and verify it won't in fscrypt_prepare_symlink()
222 * exceed max_len. Note that for historical reasons, encrypted symlink in fscrypt_prepare_symlink()
225 * longest symlink target we can accept. in fscrypt_prepare_symlink()
252 * symlink inode's encryption key. We don't wait until now to do it, in __fscrypt_encrypt_symlink()
281 /* Cache the plaintext symlink target for later use by get_link() */ in __fscrypt_encrypt_symlink()
299 * fscrypt_get_symlink() - get the target of an encrypted symlink
300 * @inode: the symlink inode
301 * @caddr: the on-disk contents of the symlink
305 * If the symlink's encryption key is available, we decrypt its target.
310 * Return: the presentable symlink target or an ERR_PTR()
331 * Try to set up the symlink's encryption key, but we can continue in fscrypt_get_symlink()
340 * For historical reasons, encrypted symlink targets are prefixed with in fscrypt_get_symlink()
371 * Cache decrypted symlink targets in i_link for later use. Don't cache in fscrypt_get_symlink()
372 * symlink targets encoded without the key, since those become outdated in fscrypt_get_symlink()
390 * @path: the path for the encrypted symlink being queried
391 * @stat: the struct being filled with the symlink's attributes
394 * symlink target (or the no-key encoded symlink target, if the key is
395 * unavailable) rather than the length of the encrypted symlink target. This is
396 * necessary for st_size to match the symlink target that userspace actually
399 * This requires reading the symlink target from disk if needed, setting up the
401 * symlink target. This makes lstat() more heavyweight than is normally the
402 * case. However, decrypted symlink targets will be cached in ->i_link, so
403 * usually the symlink won't have to be read and decrypted again later if/when
416 * To get the symlink target that userspace will see (whether it's the in fscrypt_symlink_getattr()