Print this page
Send nfs_export_t to untraverse()


 634 extern void     nfs_exportfini(void);
 635 extern void     nfs_export_zone_init(nfs_globals_t *);
 636 extern void     nfs_export_zone_fini(nfs_globals_t *);
 637 extern void     nfs_export_zone_shutdown(nfs_globals_t *);
 638 extern int      nfs_export_get_rootfh(nfs_globals_t *);
 639 extern int      chk_clnt_sec(struct exportinfo *, struct svc_req *);
 640 extern int      makefh(fhandle_t *, struct vnode *, struct exportinfo *);
 641 extern int      makefh_ol(fhandle_t *, struct exportinfo *, uint_t);
 642 extern int      makefh3(nfs_fh3 *, struct vnode *, struct exportinfo *);
 643 extern int      makefh3_ol(nfs_fh3 *, struct exportinfo *, uint_t);
 644 extern vnode_t *nfs_fhtovp(fhandle_t *, struct exportinfo *);
 645 extern vnode_t *nfs3_fhtovp(nfs_fh3 *, struct exportinfo *);
 646 extern struct   exportinfo *checkexport(fsid_t *, struct fid *);
 647 extern struct   exportinfo *checkexport4(fsid_t *, struct fid *, vnode_t *);
 648 extern void     exi_hold(struct exportinfo *);
 649 extern void     exi_rele(struct exportinfo *);
 650 extern struct exportinfo *nfs_vptoexi(vnode_t *, vnode_t *, cred_t *, int *,
 651     int *, bool_t);
 652 extern int      nfs_check_vpexi(vnode_t *, vnode_t *, cred_t *,
 653                         struct exportinfo **);
 654 extern vnode_t *untraverse(vnode_t *);
 655 extern int      vn_is_nfs_reparse(vnode_t *, cred_t *);
 656 extern int      client_is_downrev(struct svc_req *);
 657 extern char    *build_symlink(vnode_t *, cred_t *, size_t *);
 658 
 659 extern fhandle_t nullfh2;       /* for comparing V2 filehandles */
 660 
 661 typedef struct nfs_export {
 662         /* Root of nfs pseudo namespace */
 663         treenode_t *ns_root;
 664 
 665         nfs_globals_t           *ne_globals;    /* "up" pointer */
 666 
 667         struct exportinfo *exptable_path_hash[PKP_HASH_SIZE];
 668         struct exportinfo *exptable[EXPTABLESIZE];
 669 
 670         /*
 671          * Read/Write lock that protects the exportinfo list.  This lock
 672          * must be held when searching or modifiying the exportinfo list.
 673          */
 674         krwlock_t exported_lock;




 634 extern void     nfs_exportfini(void);
 635 extern void     nfs_export_zone_init(nfs_globals_t *);
 636 extern void     nfs_export_zone_fini(nfs_globals_t *);
 637 extern void     nfs_export_zone_shutdown(nfs_globals_t *);
 638 extern int      nfs_export_get_rootfh(nfs_globals_t *);
 639 extern int      chk_clnt_sec(struct exportinfo *, struct svc_req *);
 640 extern int      makefh(fhandle_t *, struct vnode *, struct exportinfo *);
 641 extern int      makefh_ol(fhandle_t *, struct exportinfo *, uint_t);
 642 extern int      makefh3(nfs_fh3 *, struct vnode *, struct exportinfo *);
 643 extern int      makefh3_ol(nfs_fh3 *, struct exportinfo *, uint_t);
 644 extern vnode_t *nfs_fhtovp(fhandle_t *, struct exportinfo *);
 645 extern vnode_t *nfs3_fhtovp(nfs_fh3 *, struct exportinfo *);
 646 extern struct   exportinfo *checkexport(fsid_t *, struct fid *);
 647 extern struct   exportinfo *checkexport4(fsid_t *, struct fid *, vnode_t *);
 648 extern void     exi_hold(struct exportinfo *);
 649 extern void     exi_rele(struct exportinfo *);
 650 extern struct exportinfo *nfs_vptoexi(vnode_t *, vnode_t *, cred_t *, int *,
 651     int *, bool_t);
 652 extern int      nfs_check_vpexi(vnode_t *, vnode_t *, cred_t *,
 653                         struct exportinfo **);
 654 extern vnode_t *untraverse(struct nfs_export *, vnode_t *);
 655 extern int      vn_is_nfs_reparse(vnode_t *, cred_t *);
 656 extern int      client_is_downrev(struct svc_req *);
 657 extern char    *build_symlink(vnode_t *, cred_t *, size_t *);
 658 
 659 extern fhandle_t nullfh2;       /* for comparing V2 filehandles */
 660 
 661 typedef struct nfs_export {
 662         /* Root of nfs pseudo namespace */
 663         treenode_t *ns_root;
 664 
 665         nfs_globals_t           *ne_globals;    /* "up" pointer */
 666 
 667         struct exportinfo *exptable_path_hash[PKP_HASH_SIZE];
 668         struct exportinfo *exptable[EXPTABLESIZE];
 669 
 670         /*
 671          * Read/Write lock that protects the exportinfo list.  This lock
 672          * must be held when searching or modifiying the exportinfo list.
 673          */
 674         krwlock_t exported_lock;