TODO smb2_tcon: add some share flags/capabilities options (Default:off)
authorStefan Metzmacher <metze@samba.org>
Tue, 31 Jul 2012 06:55:20 +0000 (08:55 +0200)
committerStefan Metzmacher <metze@samba.org>
Mon, 13 Aug 2018 15:34:53 +0000 (17:34 +0200)
source3/smbd/smb2_tcon.c

index 3a4a15d3059ecc3229d4163ba1499ebdb659792e..3a999fc78cb72f39a1f950bf527ee31485be603e 100644 (file)
@@ -396,6 +396,22 @@ static NTSTATUS smbd_smb2_tree_connect(struct smbd_smb2_request *req,
                *out_share_flags |= SMB2_SHAREFLAG_ENCRYPT_DATA;
        }
 
+       if (lp_parm_bool(SNUM(tcon->compat), "smbd", "announce branch cache v1", false)) {
+               *out_share_flags |= SMB2_SHAREFLAG_ENABLE_HASH_V1;
+       }
+       if (lp_parm_bool(SNUM(tcon->compat), "smbd", "announce branch cache v2", false)) {
+               *out_share_flags |= SMB2_SHAREFLAG_ENABLE_HASH_V2;
+       }
+       if (lp_parm_bool(SNUM(tcon->compat), "smbd", "annouce CA", false) /* TODO: && >= SMB2_22 */) {
+               *out_capabilities |= SMB2_SHARE_CAP_CONTINUOUS_AVAILABILITY;
+       }
+       if (lp_parm_bool(SNUM(tcon->compat), "smbd", "annouce SO", false) /* TODO: && >= SMB2_22 */) {
+               *out_capabilities |= SMB2_SHARE_CAP_SCALEOUT;
+       }
+       if (lp_parm_bool(SNUM(tcon->compat), "smbd", "annouce CLUSTER", false) /* TODO: && >= SMB2_22 */) {
+               *out_capabilities |= SMB2_SHARE_CAP_CLUSTER;
+       }
+
        *out_maximal_access = tcon->compat->share_access;
 
        *out_tree_id = tcon->global->tcon_wire_id;