s4:libcli: Return if encryption is requested for SMB1
[amitay/samba.git] / source4 / libcli / smb_composite / sesssetup.c
index 6ee4929e8d769726b49ced1e2d55779f6a9eef95..51e121bdce6bd561c23293d5bb610cc1abd0593a 100644 (file)
@@ -620,10 +620,17 @@ struct composite_context *smb_composite_sesssetup_send(struct smbcli_session *se
        struct composite_context *c;
        struct sesssetup_state *state;
        NTSTATUS status;
+       enum smb_encryption_setting encryption_state =
+               cli_credentials_get_smb_encryption(io->in.credentials);
 
        c = composite_create(session, session->transport->ev);
        if (c == NULL) return NULL;
 
+       if (encryption_state > SMB_ENCRYPTION_DESIRED) {
+               composite_error(c, NT_STATUS_PROTOCOL_NOT_SUPPORTED);
+               return c;
+       }
+
        state = talloc_zero(c, struct sesssetup_state);
        if (composite_nomem(state, c)) return c;
        c->private_data = state;