X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/fe8ab488e9161c46dd9885d58fc52996dc0249ff..eee3565979933af707c711411001ba11fe406a3c:/bsd/nfs/nfsmount.h diff --git a/bsd/nfs/nfsmount.h b/bsd/nfs/nfsmount.h index 4d28a9774..feb205951 100644 --- a/bsd/nfs/nfsmount.h +++ b/bsd/nfs/nfsmount.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2000-2014 Apple Inc. All rights reserved. + * Copyright (c) 2000-2015 Apple Inc. All rights reserved. * * @APPLE_OSREFERENCE_LICENSE_HEADER_START@ * @@ -172,6 +172,8 @@ struct nfs_socket { uint32_t nso_protocol; /* RPC protocol */ uint32_t nso_version; /* RPC protocol version */ uint32_t nso_pingxid; /* RPC XID of NULL ping request */ + uint32_t nso_nfs_min_vers; /* minimum nfs version for connecting sockets */ + uint32_t nso_nfs_max_vers; /* maximum nfs version for connecting sockets */ int nso_error; /* saved error/status */ struct nfs_rpc_record_state nso_rrs; /* RPC record parsing state (TCP) */ }; @@ -206,6 +208,7 @@ struct nfs_socket_search { /* nss_flags */ #define NSS_VERBOSE 0x00000001 /* OK to log info about socket search */ #define NSS_WARNED 0x00000002 /* logged warning about socket search taking a while */ +#define NSS_FALLBACK2PMAP 0x00000004 /* Try V4 on NFS_PORT first, if that fails fall back to portmapper */ /* * function table for calling version-specific NFS functions @@ -261,6 +264,9 @@ struct nfsmount { int nm_ref; /* Reference count on this mount */ int nm_state; /* Internal state flags */ int nm_vers; /* NFS version */ + uint32_t nm_minor_vers; /* minor version of above */ + uint32_t nm_min_vers; /* minimum packed version to try */ + uint32_t nm_max_vers; /* maximum packed version to try */ struct nfs_funcs *nm_funcs; /* version-specific functions */ kauth_cred_t nm_mcred; /* credential used for the mount */ mount_t nm_mountp; /* VFS structure for this filesystem */ @@ -268,7 +274,6 @@ struct nfsmount { struct nfs_fs_locations nm_locations; /* file system locations */ uint32_t nm_numgrps; /* Max. size of groupslist */ TAILQ_HEAD(, nfs_gss_clnt_ctx) nm_gsscl; /* GSS user contexts */ - TAILQ_HEAD(, nfs_gss_clnt_ctx) nm_gssnccl; /* GSS neg cache contexts */ uint32_t nm_ncentries; /* GSS expired negative cache entries */ int nm_timeo; /* Init timer for NFSMNT_DUMBTIMR */ int nm_retry; /* Max retries */ @@ -286,6 +291,7 @@ struct nfsmount { uint32_t nm_mappers; /* Number of nodes that have mmapped */ struct nfs_sec nm_sec; /* acceptable security mechanism flavors */ struct nfs_sec nm_servsec; /* server's acceptable security mechanism flavors */ + struct nfs_etype nm_etype; /* If using kerberos, the support session key encryption types */ fhandle_t *nm_fh; /* initial file handle */ uint8_t nm_lockmode; /* advisory file locking mode */ /* mount info */