webrtc
webrtc copied to clipboard
"Failed to start manager dtls: unsupported fingerprint algorithm" trying to connect to Asterisk webrtc
Hi,
I am trying to connect to asterisk using the webrtc crate. I am the side offering. After accepting the other side's response I am getting:
2023-08-18T22:34:18.084980Z INFO webrtc_ice::agent::agent_internal: [controlling]: Setting new connection state: Connected
2023-08-18T22:34:18.085099Z INFO webrtc::peer_connection: ICE connection state changed: connected
Connection State has changed connected
Ctrl+C the remote client to stop the demo
2023-08-18T22:34:18.085532Z WARN webrtc_dtls::handshake::handshake_message_client_hello: Unsupported Extension Type 0 35
2023-08-18T22:34:18.085575Z WARN webrtc_dtls::handshake::handshake_message_client_hello: Unsupported Extension Type 0 22
2023-08-18T22:34:18.085716Z WARN webrtc_dtls::handshake::handshake_message_client_hello: Unsupported Extension Type 0 35
2023-08-18T22:34:18.085741Z WARN webrtc_dtls::handshake::handshake_message_client_hello: Unsupported Extension Type 0 22
2023-08-18T22:34:18.116241Z WARN webrtc_dtls::handshake::handshake_message_client_hello: Unsupported Extension Type 0 35
2023-08-18T22:34:18.116274Z WARN webrtc_dtls::handshake::handshake_message_client_hello: Unsupported Extension Type 0 22
2023-08-18T22:34:18.116360Z WARN webrtc_dtls::handshake::handshake_message_client_hello: Unsupported Extension Type 0 35
2023-08-18T22:34:18.116374Z WARN webrtc_dtls::handshake::handshake_message_client_hello: Unsupported Extension Type 0 22
2023-08-18T22:34:18.144129Z INFO webrtc::peer_connection: peer connection state changed: failed
Peer Connection State has changed: failed
Peer Connection has gone to failed exiting: Done forwarding
2023-08-18T22:34:18.144191Z WARN webrtc::peer_connection::peer_connection_internal: Failed to start manager dtls: unsupported fingerprint algorithm
2023-08-18T22:34:18.144283Z WARN webrtc::peer_connection::peer_connection_internal: undeclared_media_processor failed to open SrtcpSession
2023-08-18T22:34:18.144343Z WARN webrtc::peer_connection::peer_connection_internal: undeclared_media_processor failed to open SrtpSession
The SDP string from Asterisk is:
v=0
o=- 3550438371 104235760 IN IP4 <redacted>
s=Asterisk
c=IN IP4 <redacted>
t=0 0
a=msid-semantic:WMS *
a=group:BUNDLE 0
m=audio 13952 UDP/TLS/RTP/SAVPF 111
a=connection:new
a=setup:active
a=fingerprint:SHA-256 24:25:65:2F:CD:EC:37:49:DC:C1:3A:5B:C3:17:60:DC:B0:5F:6E:CB:FA:8F:CC:AC:8D:A5:E<redacted>
a=ice-ufrag:3daee1c417d8b8f97a2002977c6783ef
a=ice-pwd:<redacted>
a=candidate:H310d1869 1 UDP 2130706431 <redacted> 13952 typ host
a=candidate:Ha000002 1 UDP 2130706431 <redacted> 13952 typ host
a=rtpmap:111 opus/48000/2
a=fmtp:111 maxaveragebitrate=510000
a=ptime:20
a=maxptime:60
a=recvonly
a=rtcp-mux
a=ssrc:2095965366 cname:8fb93b21-4e6c-4ae9-8d28-f5c989397234
a=msid:ef83edfe-d6be-42c9-97d3-f71983b898c0 21ba9aee-ab91-4b23-acfe-6f5525f1fd3e
a=rtcp-fb:* transport-cc
a=mid:0
I assume that this check is case-sensitive and causes my issue:
https://github.com/webrtc-rs/webrtc/blob/dfe2363376f112ed1dd7d182b07f1cef8966a414/webrtc/src/dtls_transport/mod.rs#L542
I don't have enough knowledge of the crate or WebRTC however to confirm that. But the fingerprint in the response from asterisk seems to do uppercase "SHA" instead of lowercase. So it would seem like an obvious culprit.