Commit | Line | Data |
---|---|---|
1182fca3 MM |
1 | /* |
2 | * (C) 2001 Clemson University and The University of Chicago | |
3 | * | |
4 | * See COPYING in top-level directory. | |
5 | */ | |
6 | ||
7 | #include "protocol.h" | |
575e9461 MM |
8 | #include "orangefs-kernel.h" |
9 | #include "orangefs-bufmap.h" | |
1182fca3 | 10 | |
8bb8aefd | 11 | static const char *orangefs_follow_link(struct dentry *dentry, void **cookie) |
1182fca3 | 12 | { |
8bb8aefd | 13 | char *target = ORANGEFS_I(dentry->d_inode)->link_target; |
1182fca3 MM |
14 | |
15 | gossip_debug(GOSSIP_INODE_DEBUG, | |
16 | "%s: called on %s (target is %p)\n", | |
17 | __func__, (char *)dentry->d_name.name, target); | |
18 | ||
19 | *cookie = target; | |
20 | ||
21 | return target; | |
22 | } | |
23 | ||
8bb8aefd | 24 | struct inode_operations orangefs_symlink_inode_operations = { |
1182fca3 | 25 | .readlink = generic_readlink, |
8bb8aefd YL |
26 | .follow_link = orangefs_follow_link, |
27 | .setattr = orangefs_setattr, | |
28 | .getattr = orangefs_getattr, | |
29 | .listxattr = orangefs_listxattr, | |
1182fca3 | 30 | .setxattr = generic_setxattr, |
933287da | 31 | .permission = orangefs_permission, |
1182fca3 | 32 | }; |