SCTP over UDP

I’m getting close. I enable comedia on the transport, usrsctp_bind() and usrsctp_connect() from the client, which then sends the INITMSG through onSendSctpData, Mediasoup server sees this and ‘sctpconnectionstate’ changes to “connecting” and receives the correct remote endpoint from the comedia behavior… but then nothing happens, stays stuck in “connecting” sctp state.

Am I missing a final step?

Then the mediasoup PlainTransport will send SCTP messages to your client to complete the SCTP handshake and your client must reply to them.

Yea, something must be missing. I send a 100 byte INIT on connect, Mediasoup receives it and replies with a 100 byte packet, and then a 412 byte packet - both of which I feed into usrsctp_conninput(…) on the client but then nothing happens. The receive_cb doesn’t get called, or anything else. Do I need to manually fashion a reply or should usrsctp_conninput(…) do it’s thing and then the send callback will send what it needs to?

Well, sorry, I cannot give support about usrsctp. You can check how usrsctp is used in mediasoup or check the examples that come with usrsctp.

Ok, I understand. I found the issue that occurs when I call usrsctp_conninput(…) but don’t understand what it means. I imagine this is still in usrsctp land so don’t expect any support on this, but if it’s something you’ve ran into or have a quick answer to it may help me to complete the handshake and quit bugging you

Bad CSUM on SCTP packet calc_check:adf1b272 check:25d25106 m:000001ACB7F7B420 mlen:16 iphlen:0

Never seen that, no idea, but it seems that it’s not a SCTP packet. You could use Wireshark or tshark to captura traffic and inspect what you are passing to usrsctp. Wireshark has a SCTP parser.