]>
Commit | Line | Data |
---|---|---|
929be906 | 1 | // SPDX-License-Identifier: LGPL-2.1 |
1ae1bc44 | 2 | /* |
1ae1bc44 SF |
3 | * |
4 | * Copyright (C) International Business Machines Corp., 2007 | |
5 | * Author(s): Steve French (sfrench@us.ibm.com) | |
6 | * | |
7 | * Common Internet FileSystem (CIFS) client | |
fb8c4b14 | 8 | * |
1ae1bc44 SF |
9 | * Operations related to support for exporting files via NFSD |
10 | * | |
1ae1bc44 | 11 | */ |
50c2f753 | 12 | |
fb8c4b14 | 13 | /* |
ec23eb54 | 14 | * See Documentation/filesystems/nfs/exporting.rst |
1ae1bc44 | 15 | * and examples in fs/exportfs |
7521a3c5 SF |
16 | * |
17 | * Since cifs is a network file system, an "fsid" must be included for | |
18 | * any nfs exports file entries which refer to cifs paths. In addition | |
19 | * the cifs mount must be mounted with the "serverino" option (ie use stable | |
20 | * server inode numbers instead of locally generated temporary ones). | |
21 | * Although cifs inodes do not use generation numbers (have generation number | |
22 | * of zero) - the inode number alone should be good enough for simple cases | |
23 | * in which users want to export cifs shares with NFS. The decode and encode | |
24 | * could be improved by using a new routine which expects 64 bit inode numbers | |
25 | * instead of the default 32 bit routines in fs/exportfs | |
26 | * | |
1ae1bc44 SF |
27 | */ |
28 | ||
29 | #include <linux/fs.h> | |
70b315b0 | 30 | #include <linux/exportfs.h> |
7521a3c5 SF |
31 | #include "cifsglob.h" |
32 | #include "cifs_debug.h" | |
297647c2 | 33 | #include "cifsfs.h" |
7521a3c5 | 34 | |
f3a6a60e | 35 | #ifdef CONFIG_CIFS_NFSD_EXPORT |
1ae1bc44 SF |
36 | static struct dentry *cifs_get_parent(struct dentry *dentry) |
37 | { | |
fb8c4b14 | 38 | /* BB need to add code here eventually to enable export via NFSD */ |
f96637be | 39 | cifs_dbg(FYI, "get parent for %p\n", dentry); |
fb8c4b14 | 40 | return ERR_PTR(-EACCES); |
1ae1bc44 | 41 | } |
50c2f753 | 42 | |
39655164 | 43 | const struct export_operations cifs_export_ops = { |
fb8c4b14 SF |
44 | .get_parent = cifs_get_parent, |
45 | /* Following five export operations are unneeded so far and can default: | |
46 | .get_dentry = | |
47 | .get_name = | |
48 | .find_exported_dentry = | |
49 | .decode_fh = | |
50 | .encode_fs = */ | |
51 | }; | |
50c2f753 | 52 | |
f3a6a60e | 53 | #endif /* CONFIG_CIFS_NFSD_EXPORT */ |
50c2f753 | 54 |