From: Andreas Schneider Date: Thu, 11 Apr 2019 08:24:49 +0000 (+0200) Subject: libcli:smb: Check return code of smb_signing_md5() X-Git-Tag: ldb-2.0.5~732 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=39a665464fe2fafd6b567ffd5b60aea00efd0076;p=thirdparty%2Fsamba.git libcli:smb: Check return code of smb_signing_md5() Signed-off-by: Andreas Schneider Reviewed-by: Andrew Bartlett --- diff --git a/libcli/smb/smb_signing.c b/libcli/smb/smb_signing.c index 93e2c82ee7f..89b57b58f40 100644 --- a/libcli/smb/smb_signing.c +++ b/libcli/smb/smb_signing.c @@ -316,6 +316,7 @@ bool smb_signing_check_pdu(struct smb_signing_state *si, bool good; uint8_t calc_md5_mac[16]; const uint8_t *reply_sent_mac; + NTSTATUS status; if (si->mac_key.length == 0) { return true; @@ -328,8 +329,16 @@ bool smb_signing_check_pdu(struct smb_signing_state *si, return false; } - smb_signing_md5(&si->mac_key, inhdr, len, - seqnum, calc_md5_mac); + status = smb_signing_md5(&si->mac_key, + inhdr, + len, + seqnum, + calc_md5_mac); + if (!NT_STATUS_IS_OK(status)) { + DBG_ERR("Failed to calculate signing mac: %s\n", + nt_errstr(status)); + return false; + } reply_sent_mac = &inhdr[HDR_SS_FIELD]; good = (memcmp(reply_sent_mac, calc_md5_mac, 8) == 0);