Print this page
2988 nfssrv: need ability to go to submounts for v3 and v2 protocols
Portions contributed by: Marcel Telka <marcel.telka@nexenta.com>
Portions contributed by: Jean McCormack <jean.mccormack@nexenta.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
Reviewed by: Alek Pinchuk <alek.pinchuk@nexenta.com>
Reviewed by: Dan Fields <dan.fields@nexenta.com>
Reviewed by: Dan McDonald <danmcd@joyent.com>
Change-Id: I6fdf110cc17e789353c4442b83a46cb80643456e

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/nfs/nfs.h
          +++ new/usr/src/uts/common/nfs/nfs.h
↓ open down ↓ 23 lines elided ↑ open up ↑
  24   24   * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
  25   25   * Copyright (c) 2013 by Delphix. All rights reserved.
  26   26   */
  27   27  
  28   28  /*      Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T     */
  29   29  /*        All Rights Reserved   */
  30   30  
  31   31  #ifndef _NFS_NFS_H
  32   32  #define _NFS_NFS_H
  33   33  
  34      -/*      nfs.h 2.38 88/08/19 SMI         */
       34 +/*      nfs.h 2.38 88/08/19 SMI */
  35   35  
  36   36  #include <sys/isa_defs.h>
  37   37  #include <sys/vfs.h>
  38   38  #include <sys/stream.h>
  39   39  #include <rpc/types.h>
  40   40  #include <sys/types32.h>
  41   41  #ifdef _KERNEL
  42   42  #include <rpc/rpc_rdma.h>
  43   43  #include <rpc/rpc.h>
  44   44  #include <sys/fcntl.h>
↓ open down ↓ 2226 lines elided ↑ open up ↑
2271 2271  extern int      nfs3init(int, char *);
2272 2272  extern void     nfs3fini(void);
2273 2273  extern int      nfs3_vfsinit(void);
2274 2274  extern void     nfs3_vfsfini(void);
2275 2275  extern void     vattr_to_post_op_attr(struct vattr *, post_op_attr *);
2276 2276  extern void     mblk_to_iov(mblk_t *, int, struct iovec *);
2277 2277  extern int      rfs_publicfh_mclookup(char *, vnode_t *, cred_t *, vnode_t **,
2278 2278      struct exportinfo **, struct sec_ol *);
2279 2279  extern int      rfs_pathname(char *, vnode_t **, vnode_t **, vnode_t *,
2280 2280      cred_t *, int);
     2281 +extern int      rfs_cross_mnt(vnode_t **, struct exportinfo **);
     2282 +extern int      rfs_climb_crossmnt(vnode_t **, struct exportinfo **, cred_t *);
2281 2283  
2282 2284  extern vtype_t          nf3_to_vt[];
2283 2285  extern kstat_named_t    *rfsproccnt_v3_ptr;
2284 2286  extern vfsops_t         *nfs3_vfsops;
2285 2287  extern struct vnodeops  *nfs3_vnodeops;
2286 2288  extern const struct fs_operation_def nfs3_vnodeops_template[];
2287 2289  
2288 2290  /*
2289 2291   * Some servers do not properly update the attributes of the
2290 2292   * directory when changes are made.  To allow interoperability
↓ open down ↓ 56 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX