package portallocator import ( "syscall" "unsafe" "github.com/ishidawataru/sctp" ) const sysSetsockopt = 14 // See https://elixir.bootlin.com/linux/v6.13.3/source/include/uapi/linux/net.h#L40 func setSCTPInitMsg(sd int, options sctp.InitMsg) syscall.Errno { _, _, errno := syscall.Syscall6(syscall.SYS_SOCKETCALL, // See `man 2 socketcall` sysSetsockopt, uintptr(sd), sctp.SOL_SCTP, sctp.SCTP_INITMSG, uintptr(unsafe.Pointer(&options)), // #nosec G103 -- Ignore "G103: Use of unsafe calls should be audited" unsafe.Sizeof(options)) return errno }