Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.9.4.
 1// SPDX-License-Identifier: LGPL-2.1
 2/*
 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
 8 *
 9 *   Operations related to support for exporting files via NFSD
10 *
11 */
12
13 /*
14  * See Documentation/filesystems/nfs/exporting.rst
15  * and examples in fs/exportfs
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  *
27  */
28
29#include <linux/fs.h>
30#include <linux/exportfs.h>
31#include "cifsglob.h"
32#include "cifs_debug.h"
33#include "cifsfs.h"
34
35#ifdef CONFIG_CIFS_NFSD_EXPORT
36static struct dentry *cifs_get_parent(struct dentry *dentry)
37{
38	/* BB need to add code here eventually to enable export via NFSD */
39	cifs_dbg(FYI, "get parent for %p\n", dentry);
40	return ERR_PTR(-EACCES);
41}
42
43const struct export_operations cifs_export_ops = {
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};
52
53#endif /* CONFIG_CIFS_NFSD_EXPORT */
54