Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
fs
ext4
symlink.c
Go to the documentation of this file.
1
/*
2
* linux/fs/ext4/symlink.c
3
*
4
* Only fast symlinks left here - the rest is done by generic code. AV, 1999
5
*
6
* Copyright (C) 1992, 1993, 1994, 1995
7
* Remy Card (
[email protected]
)
8
* Laboratoire MASI - Institut Blaise Pascal
9
* Universite Pierre et Marie Curie (Paris VI)
10
*
11
* from
12
*
13
* linux/fs/minix/symlink.c
14
*
15
* Copyright (C) 1991, 1992 Linus Torvalds
16
*
17
* ext4 symlink handling code
18
*/
19
20
#include <linux/fs.h>
21
#include <
linux/jbd2.h
>
22
#include <
linux/namei.h
>
23
#include "
ext4.h
"
24
#include "
xattr.h
"
25
26
static
void
*ext4_follow_link(
struct
dentry
*
dentry
,
struct
nameidata
*nd)
27
{
28
struct
ext4_inode_info
*ei =
EXT4_I
(dentry->
d_inode
);
29
nd_set_link(nd, (
char
*) ei->
i_data
);
30
return
NULL
;
31
}
32
33
const
struct
inode_operations
ext4_symlink_inode_operations
= {
34
.readlink =
generic_readlink
,
35
.follow_link =
page_follow_link_light
,
36
.put_link =
page_put_link
,
37
.setattr =
ext4_setattr
,
38
#ifdef CONFIG_EXT4_FS_XATTR
39
.setxattr =
generic_setxattr
,
40
.getxattr =
generic_getxattr
,
41
.listxattr =
ext4_listxattr
,
42
.removexattr =
generic_removexattr
,
43
#endif
44
};
45
46
const
struct
inode_operations
ext4_fast_symlink_inode_operations
= {
47
.readlink =
generic_readlink
,
48
.follow_link = ext4_follow_link,
49
.setattr =
ext4_setattr
,
50
#ifdef CONFIG_EXT4_FS_XATTR
51
.setxattr =
generic_setxattr
,
52
.getxattr =
generic_getxattr
,
53
.listxattr =
ext4_listxattr
,
54
.removexattr =
generic_removexattr
,
55
#endif
56
};
Generated on Thu Jan 10 2013 14:44:49 for Linux Kernel by
1.8.2