blob: 39e6f0bdf8e318ce9fb88fb7f3f9007ab3aae49d [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/* -*- c -*- --------------------------------------------------------------- *
2 *
3 * linux/fs/autofs/symlink.c
4 *
5 * Copyright 1997-1998 Transmeta Corporation -- All Rights Reserved
6 *
7 * This file is part of the Linux kernel and is made available under
8 * the terms of the GNU General Public License, version 2, or at your
9 * option, any later version, incorporated herein by reference.
10 *
11 * ------------------------------------------------------------------------- */
12
13#include "autofs_i.h"
14
Al Viro6b255392015-11-17 10:20:54 -050015static const char *autofs4_get_link(struct dentry *dentry,
16 struct inode *inode, void **cookie)
Linus Torvalds1da177e2005-04-16 15:20:36 -070017{
Al Viro6b255392015-11-17 10:20:54 -050018 struct autofs_sb_info *sbi;
19 struct autofs_info *ino;
20 if (!dentry)
21 return ERR_PTR(-ECHILD);
22 sbi = autofs4_sbi(dentry->d_sb);
23 ino = autofs4_dentry_ino(dentry);
Ian Kent8dc51fe2014-01-23 15:55:01 -080024 if (ino && !autofs4_oz_mode(sbi))
25 ino->last_used = jiffies;
Al Viro680baac2015-05-02 13:32:22 -040026 return d_inode(dentry)->i_private;
Linus Torvalds1da177e2005-04-16 15:20:36 -070027}
28
Arjan van de Ven754661f2007-02-12 00:55:38 -080029const struct inode_operations autofs4_symlink_inode_operations = {
Linus Torvalds1da177e2005-04-16 15:20:36 -070030 .readlink = generic_readlink,
Al Viro6b255392015-11-17 10:20:54 -050031 .get_link = autofs4_get_link
Linus Torvalds1da177e2005-04-16 15:20:36 -070032};