blob: 59c365fa20d7fb5a263d0d13d5b89e57997660d8 [file] [log] [blame]
James Kuszmaul4a42b182021-01-17 11:32:46 -08001#pragma once
2#include <rawrtcc/code.h>
3#include <rawrtcdc/data_channel.h>
4#include <rawrtcdc/sctp_transport.h>
5#include <re.h>
6
7// Dependencies
8struct rawrtc_dtls_transport;
9
10/*
11 * Create an SCTP transport.
12 * `*transportp` must be unreferenced.
13 */
14enum rawrtc_code rawrtc_sctp_transport_create(
15 struct rawrtc_sctp_transport** const transportp, // de-referenced
16 struct rawrtc_dtls_transport* const dtls_transport, // referenced
17 uint16_t const port, // zeroable
18 rawrtc_data_channel_handler const data_channel_handler, // nullable
19 rawrtc_sctp_transport_state_change_handler const state_change_handler, // nullable
20 void* const arg // nullable
21);