root/fs/cifs/export.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. cifs_get_parent

   1 /*
   2  *   fs/cifs/export.c
   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  *   This library is free software; you can redistribute it and/or modify
  12  *   it under the terms of the GNU Lesser General Public License as published
  13  *   by the Free Software Foundation; either version 2.1 of the License, or
  14  *   (at your option) any later version.
  15  *
  16  *   This library is distributed in the hope that it will be useful,
  17  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
  18  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
  19  *   the GNU Lesser General Public License for more details.
  20  *
  21  *   You should have received a copy of the GNU Lesser General Public License
  22  *   along with this library; if not, write to the Free Software
  23  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  24  */
  25 
  26  /*
  27   * See Documentation/filesystems/nfs/exporting.rst
  28   * and examples in fs/exportfs
  29   *
  30   * Since cifs is a network file system, an "fsid" must be included for
  31   * any nfs exports file entries which refer to cifs paths.  In addition
  32   * the cifs mount must be mounted with the "serverino" option (ie use stable
  33   * server inode numbers instead of locally generated temporary ones).
  34   * Although cifs inodes do not use generation numbers (have generation number
  35   * of zero) - the inode number alone should be good enough for simple cases
  36   * in which users want to export cifs shares with NFS. The decode and encode
  37   * could be improved by using a new routine which expects 64 bit inode numbers
  38   * instead of the default 32 bit routines in fs/exportfs
  39   *
  40   */
  41 
  42 #include <linux/fs.h>
  43 #include <linux/exportfs.h>
  44 #include "cifsglob.h"
  45 #include "cifs_debug.h"
  46 #include "cifsfs.h"
  47 
  48 #ifdef CONFIG_CIFS_NFSD_EXPORT
  49 static struct dentry *cifs_get_parent(struct dentry *dentry)
  50 {
  51         /* BB need to add code here eventually to enable export via NFSD */
  52         cifs_dbg(FYI, "get parent for %p\n", dentry);
  53         return ERR_PTR(-EACCES);
  54 }
  55 
  56 const struct export_operations cifs_export_ops = {
  57         .get_parent = cifs_get_parent,
  58 /*      Following five export operations are unneeded so far and can default:
  59         .get_dentry =
  60         .get_name =
  61         .find_exported_dentry =
  62         .decode_fh =
  63         .encode_fs =  */
  64 };
  65 
  66 #endif /* CONFIG_CIFS_NFSD_EXPORT */
  67 

/* [<][>][^][v][top][bottom][index][help] */