sctp: Take some socket configurations from Firefox's datachannel code
authorSebastian Dröge <sebastian@centricular.com>
Thu, 6 Feb 2020 17:40:20 +0000 (19:40 +0200)
committerSebastian Dröge <slomo@coaxion.net>
Wed, 12 Feb 2020 16:11:15 +0000 (16:11 +0000)
commit26a6b175937fe3b0fece6fb98f623a51c7c905d0
treeeec4ce6a744f37dbc2ebce26d0c67af8d23acb24
parentc497370254b03fc1ecd72221e6359996ceb73e0c
sctp: Take some socket configurations from Firefox's datachannel code

- Do not send ABORTs for unexpected packets are as response to INIT
- Enable interleaving of messages of different streams
- Configure 1MB send and receive buffer for the socket
- Enable SCTP_SEND_FAILED_EVENT and SCTP_PARTIAL_DELIVERY_EVENT events
- Set SCTP_REUSE_PORT configuration
- Set SCTP_EXPLICIT_EOR and the corresponding send flag. We probably
  want to split packets to a maximum size later and only set the flag
  on the last packet. Firefox uses 0x4000 as maximum size here.
- Enable SCTP_ENABLE_CHANGE_ASSOC_REQ
- Disable PMTUD and set an maximum initial MTU of 1200
ext/sctp/sctpassociation.c