aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Tuexen <tuexen@fh-muenster.de>2021-04-25 10:20:30 +0200
committerMark Johnston <markjdb@gmail.com>2021-04-25 14:48:08 -0400
commit2a82f1b39f0c4d6c8c45fe4baf7cdd555c9e4af8 (patch)
treec1f8b3c57cc5611da83fb50c33aa0725105f36ed
parent33592ceefd8b333ec24684777fc4ddcdfe7822f5 (diff)
pkg/build, sys/freebsd: add support for SCTP over UDP
-rw-r--r--pkg/build/freebsd.go1
-rw-r--r--sys/freebsd/socket_inet_sctp.txt11
-rw-r--r--sys/freebsd/socket_inet_sctp.txt.const1
3 files changed, 13 insertions, 0 deletions
diff --git a/pkg/build/freebsd.go b/pkg/build/freebsd.go
index 54267d32c..7b7c10ebf 100644
--- a/pkg/build/freebsd.go
+++ b/pkg/build/freebsd.go
@@ -84,6 +84,7 @@ mqueuefs_load="YES"
__EOF__
cat | sudo tee -a ${tmpdir}/etc/sysctl.conf <<__EOF__
+net.inet.sctp.udp_tunneling_port=9899
net.inet.tcp.udp_tunneling_port=9811
__EOF__
diff --git a/sys/freebsd/socket_inet_sctp.txt b/sys/freebsd/socket_inet_sctp.txt
index 1b4c2bcd3..a7fb83a37 100644
--- a/sys/freebsd/socket_inet_sctp.txt
+++ b/sys/freebsd/socket_inet_sctp.txt
@@ -325,6 +325,11 @@ getsockopt$inet6_sctp_SCTP_GET_LOCAL_ADDRESSES(fd sock_sctp6, level const[IPPROT
setsockopt$inet_sctp_SCTP_CONNECT_X(fd sock_sctp, level const[IPPROTO_SCTP], opt const[SCTP_CONNECT_X], val ptr[in, sctp_connectx], len ptr[inout, len[val, int32]])
setsockopt$inet6_sctp_SCTP_CONNECT_X(fd sock_sctp6, level const[IPPROTO_SCTP], opt const[SCTP_CONNECT_X], val ptr[in, sctp_connectx], len ptr[inout, len[val, int32]])
+setsockopt$inet_sctp_SCTP_REMOTE_UDP_ENCAPS_PORT(fd sock_sctp, level const[IPPROTO_SCTP], opt const[SCTP_REMOTE_UDP_ENCAPS_PORT], val ptr[in, sctp_udpencaps], len len[val])
+setsockopt$inet6_sctp_SCTP_REMOTE_UDP_ENCAPS_PORT(fd sock_sctp6, level const[IPPROTO_SCTP], opt const[SCTP_REMOTE_UDP_ENCAPS_PORT], val ptr[in, sctp_udpencaps], len len[val])
+getsockopt$inet_sctp_SCTP_REMOTE_UDP_ENCAPS_PORT(fd sock_sctp, level const[IPPROTO_SCTP], opt const[SCTP_REMOTE_UDP_ENCAPS_PORT], val ptr[inout, sctp_udpencaps], len ptr[inout, len[val, int32]])
+getsockopt$inet6_sctp_SCTP_REMOTE_UDP_ENCAPS_PORT(fd sock_sctp6, level const[IPPROTO_SCTP], opt const[SCTP_REMOTE_UDP_ENCAPS_PORT], val ptr[inout, sctp_udpencaps], len ptr[inout, len[val, int32]])
+
sctp_rtoinfo {
srto_assoc_id assoc_id
srto_initial int32
@@ -535,3 +540,9 @@ sctp_add_streams {
sas_instrms int16
sas_outstrms int16
}
+
+sctp_udpencaps {
+ sue_assoc_id assoc_id
+ sue_address sockaddr_storage_sctp
+ sue_port int16
+}
diff --git a/sys/freebsd/socket_inet_sctp.txt.const b/sys/freebsd/socket_inet_sctp.txt.const
index 19d5ba249..df3dde31c 100644
--- a/sys/freebsd/socket_inet_sctp.txt.const
+++ b/sys/freebsd/socket_inet_sctp.txt.const
@@ -74,6 +74,7 @@ SCTP_RECONFIG_SUPPORTED = 41
SCTP_RECVNXTINFO = 32
SCTP_RECVRCVINFO = 31
SCTP_REMOTE_ERROR = 3
+SCTP_REMOTE_UDP_ENCAPS_PORT = 36
SCTP_RESET_ASSOC = 2306
SCTP_RESET_STREAMS = 2305
SCTP_REUSE_PORT = 28