diff --git a/media/webrtc/signaling/src/media/VcmSIPCCBinding.cpp b/media/webrtc/signaling/src/media/VcmSIPCCBinding.cpp index b7b63607616..cb146bc74c5 100644 --- a/media/webrtc/signaling/src/media/VcmSIPCCBinding.cpp +++ b/media/webrtc/signaling/src/media/VcmSIPCCBinding.cpp @@ -28,6 +28,7 @@ #include #include #include +#include extern "C" { #include "ccsdp.h" @@ -2639,7 +2640,12 @@ vcmCreateTransportFlow(sipcc::PeerConnectionImpl *pc, int level, bool rtcp, CSFLogError(logTag, "Could not convert fingerprint"); return NULL; } - res = dtls->SetVerificationDigest(fingerprint_alg, remote_digest, digest_len); + + std::string fingerprint_str(fingerprint_alg); + // Downcase because SDP is case-insensitive. + std::transform(fingerprint_str.begin(), fingerprint_str.end(), + fingerprint_str.begin(), ::tolower); + res = dtls->SetVerificationDigest(fingerprint_str, remote_digest, digest_len); if (!NS_SUCCEEDED(res)) { CSFLogError(logTag, "Could not set remote DTLS digest"); return NULL;