[CIFS] DFS no longer experimental
Also updates some DFS flag definitions Signed-off-by: Steve French <sfrench@us.ibm.com>
This commit is contained in:
Родитель
b298f22355
Коммит
10e70afa75
|
@ -118,6 +118,18 @@ config CIFS_DEBUG2
|
|||
option can be turned off unless you are debugging
|
||||
cifs problems. If unsure, say N.
|
||||
|
||||
config CIFS_DFS_UPCALL
|
||||
bool "DFS feature support"
|
||||
depends on CIFS && KEYS
|
||||
help
|
||||
Distributed File System (DFS) support is used to access shares
|
||||
transparently in an enterprise name space, even if the share
|
||||
moves to a different server. This feature also enables
|
||||
an upcall mechanism for CIFS which contacts userspace helper
|
||||
utilities to provide server name resolution (host names to
|
||||
IP addresses) which is needed for implicit mounts of DFS junction
|
||||
points. If unsure, say N.
|
||||
|
||||
config CIFS_EXPERIMENTAL
|
||||
bool "CIFS Experimental Features (EXPERIMENTAL)"
|
||||
depends on CIFS && EXPERIMENTAL
|
||||
|
@ -131,12 +143,3 @@ config CIFS_EXPERIMENTAL
|
|||
(which is disabled by default). See the file fs/cifs/README
|
||||
for more details. If unsure, say N.
|
||||
|
||||
config CIFS_DFS_UPCALL
|
||||
bool "DFS feature support (EXPERIMENTAL)"
|
||||
depends on CIFS_EXPERIMENTAL
|
||||
depends on KEYS
|
||||
help
|
||||
Enables an upcall mechanism for CIFS which contacts userspace
|
||||
helper utilities to provide server name resolution (host names to
|
||||
IP addresses) which is needed for implicit mounts of DFS junction
|
||||
points. If unsure, say N.
|
||||
|
|
|
@ -1931,19 +1931,19 @@ typedef struct smb_com_transaction2_get_dfs_refer_req {
|
|||
#define DFS_TYPE_ROOT 0x0001
|
||||
|
||||
/* Referral Entry Flags */
|
||||
#define DFS_NAME_LIST_REF 0x0200
|
||||
#define DFS_NAME_LIST_REF 0x0200 /* set for domain or DC referral responses */
|
||||
#define DFS_TARGET_SET_BOUNDARY 0x0400 /* only valid with version 4 dfs req */
|
||||
|
||||
typedef struct dfs_referral_level_3 {
|
||||
__le16 VersionNumber;
|
||||
typedef struct dfs_referral_level_3 { /* version 4 is same, + one flag bit */
|
||||
__le16 VersionNumber; /* must be 3 or 4 */
|
||||
__le16 Size;
|
||||
__le16 ServerType; /* 0x0001 = root targets; 0x0000 = link targets */
|
||||
__le16 ReferralEntryFlags; /* 0x0200 bit set only for domain
|
||||
or DC referral responce */
|
||||
__le16 ReferralEntryFlags;
|
||||
__le32 TimeToLive;
|
||||
__le16 DfsPathOffset;
|
||||
__le16 DfsAlternatePathOffset;
|
||||
__le16 NetworkAddressOffset; /* offset of the link target */
|
||||
__le16 ServiceSiteGuid;
|
||||
__u8 ServiceSiteGuid[16]; /* MBZ, ignored */
|
||||
} __attribute__((packed)) REFERRAL3;
|
||||
|
||||
typedef struct smb_com_transaction_get_dfs_refer_rsp {
|
||||
|
@ -1953,15 +1953,15 @@ typedef struct smb_com_transaction_get_dfs_refer_rsp {
|
|||
__u8 Pad;
|
||||
__le16 PathConsumed;
|
||||
__le16 NumberOfReferrals;
|
||||
__le16 DFSFlags;
|
||||
__u16 Pad2;
|
||||
__le32 DFSFlags;
|
||||
REFERRAL3 referrals[1]; /* array of level 3 dfs_referral structures */
|
||||
/* followed by the strings pointed to by the referral structures */
|
||||
} __attribute__((packed)) TRANSACTION2_GET_DFS_REFER_RSP;
|
||||
|
||||
/* DFS Flags */
|
||||
#define DFSREF_REFERRAL_SERVER 0x0001
|
||||
#define DFSREF_STORAGE_SERVER 0x0002
|
||||
#define DFSREF_REFERRAL_SERVER 0x00000001 /* all targets are DFS roots */
|
||||
#define DFSREF_STORAGE_SERVER 0x00000002 /* no further ref requests needed */
|
||||
#define DFSREF_TARGET_FAILBACK 0x00000004 /* only for DFS referral version 4 */
|
||||
|
||||
/* IOCTL information */
|
||||
/*
|
||||
|
|
Загрузка…
Ссылка в новой задаче