1pub mod consts;
9pub use self::consts::*;
10
11use libc::{c_int, c_ulong, c_ushort, c_void, size_t, sockaddr, socklen_t, ssize_t};
12
13use super::common::{sctp_assoc_t, sctp_sndrcvinfo};
14
15extern "system" {
16 pub fn sctp_bindx(sock: c_int, sock_addr: *mut sockaddr, num: c_int, ty: c_int) -> c_int;
17 pub fn sctp_connectx(
18 sock: c_int,
19 sock_addr: *mut sockaddr,
20 addrcnt: c_int,
21 assoc: *mut sctp_assoc_t,
22 ) -> c_int;
23 pub fn sctp_freepaddrs(addrs: *mut sockaddr);
24 pub fn sctp_freeladdrs(addrs: *mut sockaddr);
25 pub fn sctp_getaddrlen(family: c_int) -> c_int;
26 pub fn sctp_getpaddrs(s: c_int, assoc: sctp_assoc_t, addrs: *mut *mut sockaddr) -> c_int;
27 pub fn sctp_getladdrs(s: c_int, assoc: sctp_assoc_t, addrs: *mut *mut sockaddr) -> c_int;
28 pub fn sctp_opt_info(
29 s: c_int,
30 assoc: sctp_assoc_t,
31 opt: c_int,
32 arg: *mut c_void,
33 size: *mut socklen_t,
34 ) -> c_int;
35 pub fn sctp_peeloff(s: c_int, assoc: sctp_assoc_t) -> c_int;
36 pub fn sctp_recvmsg(
37 s: c_int,
38 msg: *mut c_void,
39 len: size_t,
40 from: *mut sockaddr,
41 fromlen: *mut socklen_t,
42 sinfo: *mut sctp_sndrcvinfo,
43 flags: *mut c_int,
44 ) -> ssize_t;
45 pub fn sctp_send(
46 s: c_int,
47 msg: *const c_void,
48 len: size_t,
49 sinfo: *const sctp_sndrcvinfo,
50 flags: c_int,
51 ) -> ssize_t;
52 pub fn sctp_sendmsg(
53 s: c_int,
54 msg: *const c_void,
55 len: size_t,
56 to: *mut sockaddr,
57 tolen: socklen_t,
58 ppid: c_ulong,
59 flags: c_ulong,
60 stream_no: c_ushort,
61 ttl: c_ulong,
62 ctx: c_ulong,
63 ) -> ssize_t;
64}