]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
libcli/smb: Use gnutls_error_to_ntstatus() in smb2_signing_check_pdu()
authorAndrew Bartlett <abartlet@samba.org>
Fri, 16 Aug 2019 03:50:03 +0000 (15:50 +1200)
committerAndreas Schneider <asn@cryptomilk.org>
Wed, 21 Aug 2019 09:57:32 +0000 (09:57 +0000)
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
libcli/smb/smb2_signing.c

index 5bf61bd477b18665087d78a2f96fee4df5a64262..1ec60a4f9a555fb0cd6a1bfecebcecf6256ef093 100644 (file)
@@ -229,18 +229,18 @@ NTSTATUS smb2_signing_check_pdu(struct smb2_signing_key *signing_key,
                                              key.data,
                                              key.size);
                        if (rc < 0) {
-                               return NT_STATUS_NO_MEMORY;
+                               return gnutls_error_to_ntstatus(rc, NT_STATUS_HMAC_NOT_SUPPORTED);
                        }
                }
 
                rc = gnutls_hmac(signing_key->hmac_hnd, hdr, SMB2_HDR_SIGNATURE);
                if (rc < 0) {
-                       return NT_STATUS_INTERNAL_ERROR;
+                       return gnutls_error_to_ntstatus(rc, NT_STATUS_HMAC_NOT_SUPPORTED);
                }
 
                rc = gnutls_hmac(signing_key->hmac_hnd, zero_sig, 16);
                if (rc < 0) {
-                       return NT_STATUS_INTERNAL_ERROR;
+                       return gnutls_error_to_ntstatus(rc, NT_STATUS_HMAC_NOT_SUPPORTED);
                }
 
                for (i = 1; i < count; i++) {
@@ -248,7 +248,7 @@ NTSTATUS smb2_signing_check_pdu(struct smb2_signing_key *signing_key,
                                         vector[i].iov_base,
                                         vector[i].iov_len);
                        if (rc < 0) {
-                               return NT_STATUS_INTERNAL_ERROR;
+                               return gnutls_error_to_ntstatus(rc, NT_STATUS_HMAC_NOT_SUPPORTED);
                        }
                }
                gnutls_hmac_output(signing_key->hmac_hnd, res);