webkit
2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
|
#include <errno.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
Go to the source code of this file.
Macros | |
#define | MSG_NOTIFICATION 0x2000 |
#define | IPPROTO_SCTP 132 |
#define | AF_CONN 123 |
#define | SCTP_FUTURE_ASSOC 0 |
#define | SCTP_CURRENT_ASSOC 1 |
#define | SCTP_ALL_ASSOC 2 |
#define | SCTP_ALIGN_RESV_PAD 92 |
#define | SCTP_ALIGN_RESV_PAD_SHORT 76 |
#define | SCTP_NO_NEXT_MSG 0x0000 |
#define | SCTP_NEXT_MSG_AVAIL 0x0001 |
#define | SCTP_NEXT_MSG_ISCOMPLETE 0x0002 |
#define | SCTP_NEXT_MSG_IS_UNORDERED 0x0004 |
#define | SCTP_NEXT_MSG_IS_NOTIFICATION 0x0008 |
#define | SCTP_RECVV_NOINFO 0 |
#define | SCTP_RECVV_RCVINFO 1 |
#define | SCTP_RECVV_NXTINFO 2 |
#define | SCTP_RECVV_RN 3 |
#define | SCTP_SENDV_NOINFO 0 |
#define | SCTP_SENDV_SNDINFO 1 |
#define | SCTP_SENDV_PRINFO 2 |
#define | SCTP_SENDV_AUTHINFO 3 |
#define | SCTP_SENDV_SPA 4 |
#define | SCTP_SEND_SNDINFO_VALID 0x00000001 |
#define | SCTP_SEND_PRINFO_VALID 0x00000002 |
#define | SCTP_SEND_AUTHINFO_VALID 0x00000004 |
#define | SCTP_ASSOC_CHANGE 0x0001 |
#define | SCTP_PEER_ADDR_CHANGE 0x0002 |
#define | SCTP_REMOTE_ERROR 0x0003 |
#define | SCTP_SEND_FAILED 0x0004 |
#define | SCTP_SHUTDOWN_EVENT 0x0005 |
#define | SCTP_ADAPTATION_INDICATION 0x0006 |
#define | SCTP_PARTIAL_DELIVERY_EVENT 0x0007 |
#define | SCTP_AUTHENTICATION_EVENT 0x0008 |
#define | SCTP_STREAM_RESET_EVENT 0x0009 |
#define | SCTP_SENDER_DRY_EVENT 0x000a |
#define | SCTP_NOTIFICATIONS_STOPPED_EVENT 0x000b |
#define | SCTP_ASSOC_RESET_EVENT 0x000c |
#define | SCTP_STREAM_CHANGE_EVENT 0x000d |
#define | SCTP_SEND_FAILED_EVENT 0x000e |
#define | SCTP_COMM_UP 0x0001 |
#define | SCTP_COMM_LOST 0x0002 |
#define | SCTP_RESTART 0x0003 |
#define | SCTP_SHUTDOWN_COMP 0x0004 |
#define | SCTP_CANT_STR_ASSOC 0x0005 |
#define | SCTP_ASSOC_SUPPORTS_PR 0x01 |
#define | SCTP_ASSOC_SUPPORTS_AUTH 0x02 |
#define | SCTP_ASSOC_SUPPORTS_ASCONF 0x03 |
#define | SCTP_ASSOC_SUPPORTS_MULTIBUF 0x04 |
#define | SCTP_ASSOC_SUPPORTS_RE_CONFIG 0x05 |
#define | SCTP_ASSOC_SUPPORTS_MAX 0x05 |
#define | SCTP_ADDR_AVAILABLE 0x0001 |
#define | SCTP_ADDR_UNREACHABLE 0x0002 |
#define | SCTP_ADDR_REMOVED 0x0003 |
#define | SCTP_ADDR_ADDED 0x0004 |
#define | SCTP_ADDR_MADE_PRIM 0x0005 |
#define | SCTP_ADDR_CONFIRMED 0x0006 |
#define | SCTP_PARTIAL_DELIVERY_ABORTED 0x0001 |
#define | SCTP_AUTH_NEW_KEY 0x0001 |
#define | SCTP_AUTH_NO_AUTH 0x0002 |
#define | SCTP_AUTH_FREE_KEY 0x0003 |
#define | SCTP_STREAM_RESET_INCOMING_SSN 0x0001 |
#define | SCTP_STREAM_RESET_OUTGOING_SSN 0x0002 |
#define | SCTP_STREAM_RESET_DENIED 0x0004 /* SCTP_STRRESET_FAILED */ |
#define | SCTP_STREAM_RESET_FAILED 0x0008 /* SCTP_STRRESET_FAILED */ |
#define | SCTP_STREAM_CHANGED_DENIED 0x0010 |
#define | SCTP_STREAM_RESET_INCOMING 0x00000001 |
#define | SCTP_STREAM_RESET_OUTGOING 0x00000002 |
#define | SCTP_ASSOC_RESET_DENIED 0x0004 |
#define | SCTP_ASSOC_RESET_FAILED 0x0008 |
#define | SCTP_STREAM_CHANGE_DENIED 0x0004 |
#define | SCTP_STREAM_CHANGE_FAILED 0x0008 |
#define | SCTP_DATA_UNSENT 0x0001 /* inqueue never on wire */ |
#define | SCTP_DATA_SENT 0x0002 /* on wire at failure */ |
#define | SCTP_NOTIFICATION 0x0010 /* next message is a notification */ |
#define | SCTP_COMPLETE 0x0020 /* next message is complete */ |
#define | SCTP_EOF 0x0100 /* Start shutdown procedures */ |
#define | SCTP_ABORT 0x0200 /* Send an ABORT to peer */ |
#define | SCTP_UNORDERED 0x0400 /* Message is un-ordered */ |
#define | SCTP_ADDR_OVER 0x0800 /* Override the primary-address */ |
#define | SCTP_SENDALL 0x1000 /* Send this on all associations */ |
#define | SCTP_EOR 0x2000 /* end of message signal */ |
#define | SCTP_SACK_IMMEDIATELY 0x4000 /* Set I-Bit */ |
#define | INVALID_SINFO_FLAG(x) |
#define | SCTP_PR_SCTP_NONE 0x0000 /* Reliable transfer */ |
#define | SCTP_PR_SCTP_TTL 0x0001 /* Time based PR-SCTP */ |
#define | SCTP_PR_SCTP_BUF 0x0002 /* Buffer based PR-SCTP */ |
#define | SCTP_PR_SCTP_RTX 0x0003 /* Number of retransmissions based PR-SCTP */ |
#define | PR_SCTP_POLICY(x) ((x) & 0x0f) |
#define | PR_SCTP_ENABLED(x) (PR_SCTP_POLICY(x) != SCTP_PR_SCTP_NONE) |
#define | PR_SCTP_TTL_ENABLED(x) (PR_SCTP_POLICY(x) == SCTP_PR_SCTP_TTL) |
#define | PR_SCTP_BUF_ENABLED(x) (PR_SCTP_POLICY(x) == SCTP_PR_SCTP_BUF) |
#define | PR_SCTP_RTX_ENABLED(x) (PR_SCTP_POLICY(x) == SCTP_PR_SCTP_RTX) |
#define | PR_SCTP_INVALID_POLICY(x) (PR_SCTP_POLICY(x) > SCTP_PR_SCTP_RTX) |
#define | SCTP_RTOINFO 0x00000001 |
#define | SCTP_ASSOCINFO 0x00000002 |
#define | SCTP_INITMSG 0x00000003 |
#define | SCTP_NODELAY 0x00000004 |
#define | SCTP_AUTOCLOSE 0x00000005 |
#define | SCTP_PRIMARY_ADDR 0x00000007 |
#define | SCTP_ADAPTATION_LAYER 0x00000008 |
#define | SCTP_DISABLE_FRAGMENTS 0x00000009 |
#define | SCTP_PEER_ADDR_PARAMS 0x0000000a |
#define | SCTP_I_WANT_MAPPED_V4_ADDR 0x0000000d |
#define | SCTP_MAXSEG 0x0000000e |
#define | SCTP_DELAYED_SACK 0x0000000f |
#define | SCTP_FRAGMENT_INTERLEAVE 0x00000010 |
#define | SCTP_PARTIAL_DELIVERY_POINT 0x00000011 |
#define | SCTP_HMAC_IDENT 0x00000014 |
#define | SCTP_AUTH_ACTIVE_KEY 0x00000015 |
#define | SCTP_AUTO_ASCONF 0x00000018 |
#define | SCTP_MAX_BURST 0x00000019 |
#define | SCTP_CONTEXT 0x0000001a |
#define | SCTP_EXPLICIT_EOR 0x0000001b |
#define | SCTP_REUSE_PORT 0x0000001c |
#define | SCTP_EVENT 0x0000001e |
#define | SCTP_RECVRCVINFO 0x0000001f |
#define | SCTP_RECVNXTINFO 0x00000020 |
#define | SCTP_DEFAULT_SNDINFO 0x00000021 |
#define | SCTP_DEFAULT_PRINFO 0x00000022 |
#define | SCTP_REMOTE_UDP_ENCAPS_PORT 0x00000024 |
#define | SCTP_ENABLE_STREAM_RESET 0x00000900 /* struct sctp_assoc_value */ |
#define | SCTP_PLUGGABLE_SS 0x00001203 |
#define | SCTP_SS_VALUE 0x00001204 |
#define | SCTP_STATUS 0x00000100 |
#define | SCTP_GET_PEER_ADDR_INFO 0x00000101 |
#define | SCTP_PEER_AUTH_CHUNKS 0x00000102 |
#define | SCTP_LOCAL_AUTH_CHUNKS 0x00000103 |
#define | SCTP_GET_ASSOC_NUMBER 0x00000104 |
#define | SCTP_GET_ASSOC_ID_LIST 0x00000105 |
#define | SCTP_TIMEOUTS 0x00000106 |
#define | SCTP_PR_STREAM_STATUS 0x00000107 |
#define | SCTP_PR_ASSOC_STATUS 0x00000108 |
#define | SCTP_SET_PEER_PRIMARY_ADDR 0x00000006 |
#define | SCTP_AUTH_CHUNK 0x00000012 |
#define | SCTP_AUTH_KEY 0x00000013 |
#define | SCTP_AUTH_DEACTIVATE_KEY 0x0000001d |
#define | SCTP_AUTH_DELETE_KEY 0x00000016 |
#define | SCTP_RESET_STREAMS 0x00000901 /* struct sctp_reset_streams */ |
#define | SCTP_RESET_ASSOC 0x00000902 /* sctp_assoc_t */ |
#define | SCTP_ADD_STREAMS 0x00000903 /* struct sctp_add_streams */ |
#define | SPP_HB_ENABLE 0x00000001 |
#define | SPP_HB_DISABLE 0x00000002 |
#define | SPP_HB_DEMAND 0x00000004 |
#define | SPP_PMTUD_ENABLE 0x00000008 |
#define | SPP_PMTUD_DISABLE 0x00000010 |
#define | SPP_HB_TIME_IS_ZERO 0x00000080 |
#define | SPP_IPV6_FLOWLABEL 0x00000100 |
#define | SPP_DSCP 0x00000200 |
#define | SCTP_ENABLE_RESET_STREAM_REQ 0x00000001 |
#define | SCTP_ENABLE_RESET_ASSOC_REQ 0x00000002 |
#define | SCTP_ENABLE_CHANGE_ASSOC_REQ 0x00000004 |
#define | SCTP_ENABLE_VALUE_MASK 0x00000007 |
#define | SCTP_AUTH_HMAC_ID_RSVD 0x0000 |
#define | SCTP_AUTH_HMAC_ID_SHA1 0x0001 /* default, mandatory */ |
#define | SCTP_AUTH_HMAC_ID_SHA256 0x0003 |
#define | SCTP_AUTH_HMAC_ID_SHA224 0x0004 |
#define | SCTP_AUTH_HMAC_ID_SHA384 0x0005 |
#define | SCTP_AUTH_HMAC_ID_SHA512 0x0006 |
#define | SCTP_CLOSED 0x0000 |
#define | SCTP_BOUND 0x1000 |
#define | SCTP_LISTEN 0x2000 |
#define | SCTP_COOKIE_WAIT 0x0002 |
#define | SCTP_COOKIE_ECHOED 0x0004 |
#define | SCTP_ESTABLISHED 0x0008 |
#define | SCTP_SHUTDOWN_SENT 0x0010 |
#define | SCTP_SHUTDOWN_RECEIVED 0x0020 |
#define | SCTP_SHUTDOWN_ACK_SENT 0x0040 |
#define | SCTP_SHUTDOWN_PENDING 0x0080 |
#define | SCTP_ACTIVE 0x0001 /* SCTP_ADDR_REACHABLE */ |
#define | SCTP_INACTIVE |
#define | SCTP_UNCONFIRMED 0x0200 /* SCTP_ADDR_UNCONFIRMED */ |
#define | SCTP_DATA 0x00 |
#define | SCTP_INITIATION 0x01 |
#define | SCTP_INITIATION_ACK 0x02 |
#define | SCTP_SELECTIVE_ACK 0x03 |
#define | SCTP_HEARTBEAT_REQUEST 0x04 |
#define | SCTP_HEARTBEAT_ACK 0x05 |
#define | SCTP_ABORT_ASSOCIATION 0x06 |
#define | SCTP_SHUTDOWN 0x07 |
#define | SCTP_SHUTDOWN_ACK 0x08 |
#define | SCTP_OPERATION_ERROR 0x09 |
#define | SCTP_COOKIE_ECHO 0x0a |
#define | SCTP_COOKIE_ACK 0x0b |
#define | SCTP_ECN_ECHO 0x0c |
#define | SCTP_ECN_CWR 0x0d |
#define | SCTP_SHUTDOWN_COMPLETE 0x0e |
#define | SCTP_AUTHENTICATION 0x0f |
#define | SCTP_NR_SELECTIVE_ACK 0x10 |
#define | SCTP_ASCONF_ACK 0x80 |
#define | SCTP_PACKET_DROPPED 0x81 |
#define | SCTP_STREAM_RESET 0x82 |
#define | SCTP_PAD_CHUNK 0x84 |
#define | SCTP_FORWARD_CUM_TSN 0xc0 |
#define | SCTP_ASCONF 0xc1 |
#define | SCTP_CC_RFC2581 0x00000000 |
#define | SCTP_CC_HSTCP 0x00000001 |
#define | SCTP_CC_HTCP 0x00000002 |
#define | SCTP_CC_RTCC 0x00000003 |
#define | SCTP_CC_OPT_RTCC_SETMODE 0x00002000 |
#define | SCTP_CC_OPT_USE_DCCC_EC 0x00002001 |
#define | SCTP_CC_OPT_STEADY_STEP 0x00002002 |
#define | SCTP_CMT_OFF 0 |
#define | SCTP_CMT_BASE 1 |
#define | SCTP_CMT_RPV1 2 |
#define | SCTP_CMT_RPV2 3 |
#define | SCTP_CMT_MPTCP 4 |
#define | SCTP_CMT_MAX SCTP_CMT_MPTCP |
#define | SCTP_SS_DEFAULT 0x00000000 |
#define | SCTP_SS_ROUND_ROBIN 0x00000001 |
#define | SCTP_SS_ROUND_ROBIN_PACKET 0x00000002 |
#define | SCTP_SS_PRIORITY 0x00000003 |
#define | SCTP_SS_FAIR_BANDWITH 0x00000004 |
#define | SCTP_SS_FIRST_COME 0x00000005 |
#define | SCTP_BINDX_ADD_ADDR 0x00008001 |
#define | SCTP_BINDX_REM_ADDR 0x00008002 |
#define | SCTP_DUMP_OUTBOUND 1 |
#define | SCTP_DUMP_INBOUND 0 |
#define | USRSCTP_SYSCTL_DECL(__field) |
Typedefs | |
typedef uint32_t | sctp_assoc_t |
Functions | |
void | usrsctp_init (uint16_t, int(*)(void *addr, void *buffer, size_t length, uint8_t tos, uint8_t set_df), void(*)(const char *format,...)) |
struct socket * | usrsctp_socket (int domain, int type, int protocol, int(*receive_cb)(struct socket *sock, union sctp_sockstore addr, void *data, size_t datalen, struct sctp_rcvinfo, int flags, void *ulp_info), int(*send_cb)(struct socket *sock, uint32_t sb_free), uint32_t sb_threshold, void *ulp_info) |
int | usrsctp_setsockopt (struct socket *so, int level, int option_name, const void *option_value, socklen_t option_len) |
int | usrsctp_getsockopt (struct socket *so, int level, int option_name, void *option_value, socklen_t *option_len) |
int | usrsctp_getpaddrs (struct socket *so, sctp_assoc_t id, struct sockaddr **raddrs) |
void | usrsctp_freepaddrs (struct sockaddr *addrs) |
int | usrsctp_getladdrs (struct socket *so, sctp_assoc_t id, struct sockaddr **raddrs) |
void | usrsctp_freeladdrs (struct sockaddr *addrs) |
ssize_t | usrsctp_sendv (struct socket *so, const void *data, size_t len, struct sockaddr *to, int addrcnt, void *info, socklen_t infolen, unsigned int infotype, int flags) |
ssize_t | usrsctp_recvv (struct socket *so, void *dbuf, size_t len, struct sockaddr *from, socklen_t *fromlen, void *info, socklen_t *infolen, unsigned int *infotype, int *msg_flags) |
int | usrsctp_bind (struct socket *so, struct sockaddr *name, socklen_t namelen) |
int | usrsctp_bindx (struct socket *so, struct sockaddr *addrs, int addrcnt, int flags) |
int | usrsctp_listen (struct socket *so, int backlog) |
struct socket * | usrsctp_accept (struct socket *so, struct sockaddr *aname, socklen_t *anamelen) |
struct socket * | usrsctp_peeloff (struct socket *, sctp_assoc_t) |
int | usrsctp_connect (struct socket *so, struct sockaddr *name, socklen_t namelen) |
int | usrsctp_connectx (struct socket *so, const struct sockaddr *addrs, int addrcnt, sctp_assoc_t *id) |
void | usrsctp_close (struct socket *so) |
sctp_assoc_t | usrsctp_getassocid (struct socket *, struct sockaddr *) |
int | usrsctp_finish (void) |
int | usrsctp_shutdown (struct socket *so, int how) |
void | usrsctp_conninput (void *, const void *, size_t, uint8_t) |
int | usrsctp_set_non_blocking (struct socket *, int) |
int | usrsctp_get_non_blocking (struct socket *) |
void | usrsctp_register_address (void *) |
void | usrsctp_deregister_address (void *) |
int | usrsctp_set_ulpinfo (struct socket *, void *) |
char * | usrsctp_dumppacket (const void *, size_t, int) |
void | usrsctp_freedumpbuffer (char *) |
void | usrsctp_get_stat (struct sctpstat *) |
#define AF_CONN 123 |
#define INVALID_SINFO_FLAG | ( | x | ) |
#define IPPROTO_SCTP 132 |
#define MSG_NOTIFICATION 0x2000 |
#define PR_SCTP_BUF_ENABLED | ( | x | ) | (PR_SCTP_POLICY(x) == SCTP_PR_SCTP_BUF) |
#define PR_SCTP_ENABLED | ( | x | ) | (PR_SCTP_POLICY(x) != SCTP_PR_SCTP_NONE) |
#define PR_SCTP_INVALID_POLICY | ( | x | ) | (PR_SCTP_POLICY(x) > SCTP_PR_SCTP_RTX) |
#define PR_SCTP_RTX_ENABLED | ( | x | ) | (PR_SCTP_POLICY(x) == SCTP_PR_SCTP_RTX) |
#define PR_SCTP_TTL_ENABLED | ( | x | ) | (PR_SCTP_POLICY(x) == SCTP_PR_SCTP_TTL) |
#define SCTP_ABORT 0x0200 /* Send an ABORT to peer */ |
#define SCTP_ABORT_ASSOCIATION 0x06 |
#define SCTP_ACTIVE 0x0001 /* SCTP_ADDR_REACHABLE */ |
#define SCTP_ADAPTATION_INDICATION 0x0006 |
#define SCTP_ADAPTATION_LAYER 0x00000008 |
#define SCTP_ADD_STREAMS 0x00000903 /* struct sctp_add_streams */ |
#define SCTP_ADDR_ADDED 0x0004 |
#define SCTP_ADDR_AVAILABLE 0x0001 |
#define SCTP_ADDR_CONFIRMED 0x0006 |
#define SCTP_ADDR_MADE_PRIM 0x0005 |
#define SCTP_ADDR_OVER 0x0800 /* Override the primary-address */ |
#define SCTP_ADDR_REMOVED 0x0003 |
#define SCTP_ADDR_UNREACHABLE 0x0002 |
#define SCTP_ALIGN_RESV_PAD 92 |
#define SCTP_ALIGN_RESV_PAD_SHORT 76 |
#define SCTP_ALL_ASSOC 2 |
#define SCTP_ASCONF 0xc1 |
#define SCTP_ASCONF_ACK 0x80 |
#define SCTP_ASSOC_CHANGE 0x0001 |
#define SCTP_ASSOC_RESET_DENIED 0x0004 |
#define SCTP_ASSOC_RESET_EVENT 0x000c |
#define SCTP_ASSOC_RESET_FAILED 0x0008 |
#define SCTP_ASSOC_SUPPORTS_ASCONF 0x03 |
#define SCTP_ASSOC_SUPPORTS_AUTH 0x02 |
#define SCTP_ASSOC_SUPPORTS_MAX 0x05 |
#define SCTP_ASSOC_SUPPORTS_MULTIBUF 0x04 |
#define SCTP_ASSOC_SUPPORTS_PR 0x01 |
#define SCTP_ASSOC_SUPPORTS_RE_CONFIG 0x05 |
#define SCTP_ASSOCINFO 0x00000002 |
#define SCTP_AUTH_ACTIVE_KEY 0x00000015 |
#define SCTP_AUTH_CHUNK 0x00000012 |
#define SCTP_AUTH_DEACTIVATE_KEY 0x0000001d |
#define SCTP_AUTH_DELETE_KEY 0x00000016 |
#define SCTP_AUTH_FREE_KEY 0x0003 |
#define SCTP_AUTH_HMAC_ID_RSVD 0x0000 |
#define SCTP_AUTH_HMAC_ID_SHA1 0x0001 /* default, mandatory */ |
#define SCTP_AUTH_HMAC_ID_SHA224 0x0004 |
#define SCTP_AUTH_HMAC_ID_SHA256 0x0003 |
#define SCTP_AUTH_HMAC_ID_SHA384 0x0005 |
#define SCTP_AUTH_HMAC_ID_SHA512 0x0006 |
#define SCTP_AUTH_KEY 0x00000013 |
#define SCTP_AUTH_NEW_KEY 0x0001 |
#define SCTP_AUTH_NO_AUTH 0x0002 |
#define SCTP_AUTHENTICATION 0x0f |
#define SCTP_AUTHENTICATION_EVENT 0x0008 |
#define SCTP_AUTO_ASCONF 0x00000018 |
#define SCTP_AUTOCLOSE 0x00000005 |
#define SCTP_BINDX_ADD_ADDR 0x00008001 |
#define SCTP_BINDX_REM_ADDR 0x00008002 |
#define SCTP_BOUND 0x1000 |
#define SCTP_CANT_STR_ASSOC 0x0005 |
#define SCTP_CC_HSTCP 0x00000001 |
#define SCTP_CC_HTCP 0x00000002 |
#define SCTP_CC_OPT_RTCC_SETMODE 0x00002000 |
#define SCTP_CC_OPT_STEADY_STEP 0x00002002 |
#define SCTP_CC_OPT_USE_DCCC_EC 0x00002001 |
#define SCTP_CC_RFC2581 0x00000000 |
#define SCTP_CC_RTCC 0x00000003 |
#define SCTP_CLOSED 0x0000 |
#define SCTP_CMT_BASE 1 |
#define SCTP_CMT_MAX SCTP_CMT_MPTCP |
#define SCTP_CMT_MPTCP 4 |
#define SCTP_CMT_OFF 0 |
#define SCTP_CMT_RPV1 2 |
#define SCTP_CMT_RPV2 3 |
#define SCTP_COMM_LOST 0x0002 |
#define SCTP_COMM_UP 0x0001 |
#define SCTP_COMPLETE 0x0020 /* next message is complete */ |
#define SCTP_CONTEXT 0x0000001a |
#define SCTP_COOKIE_ACK 0x0b |
#define SCTP_COOKIE_ECHO 0x0a |
#define SCTP_COOKIE_ECHOED 0x0004 |
#define SCTP_COOKIE_WAIT 0x0002 |
#define SCTP_CURRENT_ASSOC 1 |
#define SCTP_DATA 0x00 |
#define SCTP_DATA_SENT 0x0002 /* on wire at failure */ |
#define SCTP_DATA_UNSENT 0x0001 /* inqueue never on wire */ |
#define SCTP_DEFAULT_PRINFO 0x00000022 |
#define SCTP_DEFAULT_SNDINFO 0x00000021 |
#define SCTP_DELAYED_SACK 0x0000000f |
#define SCTP_DISABLE_FRAGMENTS 0x00000009 |
#define SCTP_DUMP_INBOUND 0 |
#define SCTP_DUMP_OUTBOUND 1 |
#define SCTP_ECN_CWR 0x0d |
#define SCTP_ECN_ECHO 0x0c |
#define SCTP_ENABLE_CHANGE_ASSOC_REQ 0x00000004 |
#define SCTP_ENABLE_RESET_ASSOC_REQ 0x00000002 |
#define SCTP_ENABLE_RESET_STREAM_REQ 0x00000001 |
#define SCTP_ENABLE_STREAM_RESET 0x00000900 /* struct sctp_assoc_value */ |
#define SCTP_ENABLE_VALUE_MASK 0x00000007 |
#define SCTP_EOF 0x0100 /* Start shutdown procedures */ |
#define SCTP_EOR 0x2000 /* end of message signal */ |
#define SCTP_ESTABLISHED 0x0008 |
#define SCTP_EVENT 0x0000001e |
#define SCTP_EXPLICIT_EOR 0x0000001b |
#define SCTP_FORWARD_CUM_TSN 0xc0 |
#define SCTP_FRAGMENT_INTERLEAVE 0x00000010 |
#define SCTP_FUTURE_ASSOC 0 |
#define SCTP_GET_ASSOC_ID_LIST 0x00000105 |
#define SCTP_GET_ASSOC_NUMBER 0x00000104 |
#define SCTP_GET_PEER_ADDR_INFO 0x00000101 |
#define SCTP_HEARTBEAT_ACK 0x05 |
#define SCTP_HEARTBEAT_REQUEST 0x04 |
#define SCTP_HMAC_IDENT 0x00000014 |
#define SCTP_I_WANT_MAPPED_V4_ADDR 0x0000000d |
#define SCTP_INACTIVE |
#define SCTP_INITIATION 0x01 |
#define SCTP_INITIATION_ACK 0x02 |
#define SCTP_INITMSG 0x00000003 |
#define SCTP_LISTEN 0x2000 |
#define SCTP_LOCAL_AUTH_CHUNKS 0x00000103 |
#define SCTP_MAX_BURST 0x00000019 |
#define SCTP_MAXSEG 0x0000000e |
#define SCTP_NEXT_MSG_AVAIL 0x0001 |
#define SCTP_NEXT_MSG_IS_NOTIFICATION 0x0008 |
#define SCTP_NEXT_MSG_IS_UNORDERED 0x0004 |
#define SCTP_NEXT_MSG_ISCOMPLETE 0x0002 |
#define SCTP_NO_NEXT_MSG 0x0000 |
#define SCTP_NODELAY 0x00000004 |
#define SCTP_NOTIFICATION 0x0010 /* next message is a notification */ |
#define SCTP_NOTIFICATIONS_STOPPED_EVENT 0x000b |
#define SCTP_NR_SELECTIVE_ACK 0x10 |
#define SCTP_OPERATION_ERROR 0x09 |
#define SCTP_PACKET_DROPPED 0x81 |
#define SCTP_PAD_CHUNK 0x84 |
#define SCTP_PARTIAL_DELIVERY_ABORTED 0x0001 |
#define SCTP_PARTIAL_DELIVERY_EVENT 0x0007 |
#define SCTP_PARTIAL_DELIVERY_POINT 0x00000011 |
#define SCTP_PEER_ADDR_CHANGE 0x0002 |
#define SCTP_PEER_ADDR_PARAMS 0x0000000a |
#define SCTP_PEER_AUTH_CHUNKS 0x00000102 |
#define SCTP_PLUGGABLE_SS 0x00001203 |
#define SCTP_PR_ASSOC_STATUS 0x00000108 |
#define SCTP_PR_SCTP_BUF 0x0002 /* Buffer based PR-SCTP */ |
#define SCTP_PR_SCTP_NONE 0x0000 /* Reliable transfer */ |
#define SCTP_PR_SCTP_RTX 0x0003 /* Number of retransmissions based PR-SCTP */ |
#define SCTP_PR_SCTP_TTL 0x0001 /* Time based PR-SCTP */ |
#define SCTP_PR_STREAM_STATUS 0x00000107 |
#define SCTP_PRIMARY_ADDR 0x00000007 |
#define SCTP_RECVNXTINFO 0x00000020 |
#define SCTP_RECVRCVINFO 0x0000001f |
#define SCTP_RECVV_NOINFO 0 |
#define SCTP_RECVV_NXTINFO 2 |
#define SCTP_RECVV_RCVINFO 1 |
#define SCTP_RECVV_RN 3 |
#define SCTP_REMOTE_ERROR 0x0003 |
#define SCTP_REMOTE_UDP_ENCAPS_PORT 0x00000024 |
#define SCTP_RESET_ASSOC 0x00000902 /* sctp_assoc_t */ |
#define SCTP_RESET_STREAMS 0x00000901 /* struct sctp_reset_streams */ |
#define SCTP_RESTART 0x0003 |
#define SCTP_REUSE_PORT 0x0000001c |
#define SCTP_RTOINFO 0x00000001 |
#define SCTP_SACK_IMMEDIATELY 0x4000 /* Set I-Bit */ |
#define SCTP_SELECTIVE_ACK 0x03 |
#define SCTP_SEND_AUTHINFO_VALID 0x00000004 |
#define SCTP_SEND_FAILED 0x0004 |
#define SCTP_SEND_FAILED_EVENT 0x000e |
#define SCTP_SEND_PRINFO_VALID 0x00000002 |
#define SCTP_SEND_SNDINFO_VALID 0x00000001 |
#define SCTP_SENDALL 0x1000 /* Send this on all associations */ |
#define SCTP_SENDER_DRY_EVENT 0x000a |
#define SCTP_SENDV_AUTHINFO 3 |
#define SCTP_SENDV_NOINFO 0 |
#define SCTP_SENDV_PRINFO 2 |
#define SCTP_SENDV_SNDINFO 1 |
#define SCTP_SENDV_SPA 4 |
#define SCTP_SET_PEER_PRIMARY_ADDR 0x00000006 |
#define SCTP_SHUTDOWN 0x07 |
#define SCTP_SHUTDOWN_ACK 0x08 |
#define SCTP_SHUTDOWN_ACK_SENT 0x0040 |
#define SCTP_SHUTDOWN_COMP 0x0004 |
#define SCTP_SHUTDOWN_COMPLETE 0x0e |
#define SCTP_SHUTDOWN_EVENT 0x0005 |
#define SCTP_SHUTDOWN_PENDING 0x0080 |
#define SCTP_SHUTDOWN_RECEIVED 0x0020 |
#define SCTP_SHUTDOWN_SENT 0x0010 |
#define SCTP_SS_DEFAULT 0x00000000 |
#define SCTP_SS_FAIR_BANDWITH 0x00000004 |
#define SCTP_SS_FIRST_COME 0x00000005 |
#define SCTP_SS_PRIORITY 0x00000003 |
#define SCTP_SS_ROUND_ROBIN 0x00000001 |
#define SCTP_SS_ROUND_ROBIN_PACKET 0x00000002 |
#define SCTP_SS_VALUE 0x00001204 |
#define SCTP_STATUS 0x00000100 |
#define SCTP_STREAM_CHANGE_DENIED 0x0004 |
#define SCTP_STREAM_CHANGE_EVENT 0x000d |
#define SCTP_STREAM_CHANGE_FAILED 0x0008 |
#define SCTP_STREAM_CHANGED_DENIED 0x0010 |
#define SCTP_STREAM_RESET 0x82 |
#define SCTP_STREAM_RESET_DENIED 0x0004 /* SCTP_STRRESET_FAILED */ |
#define SCTP_STREAM_RESET_EVENT 0x0009 |
#define SCTP_STREAM_RESET_FAILED 0x0008 /* SCTP_STRRESET_FAILED */ |
#define SCTP_STREAM_RESET_INCOMING 0x00000001 |
#define SCTP_STREAM_RESET_INCOMING_SSN 0x0001 |
#define SCTP_STREAM_RESET_OUTGOING 0x00000002 |
#define SCTP_STREAM_RESET_OUTGOING_SSN 0x0002 |
#define SCTP_TIMEOUTS 0x00000106 |
#define SCTP_UNCONFIRMED 0x0200 /* SCTP_ADDR_UNCONFIRMED */ |
#define SCTP_UNORDERED 0x0400 /* Message is un-ordered */ |
#define SPP_DSCP 0x00000200 |
#define SPP_HB_DEMAND 0x00000004 |
#define SPP_HB_DISABLE 0x00000002 |
#define SPP_HB_ENABLE 0x00000001 |
#define SPP_HB_TIME_IS_ZERO 0x00000080 |
#define SPP_IPV6_FLOWLABEL 0x00000100 |
#define SPP_PMTUD_DISABLE 0x00000010 |
#define SPP_PMTUD_ENABLE 0x00000008 |
#define USRSCTP_SYSCTL_DECL | ( | __field | ) |
int usrsctp_bind | ( | struct socket * | so, |
struct sockaddr * | name, | ||
socklen_t | namelen | ||
) |
int usrsctp_bindx | ( | struct socket * | so, |
struct sockaddr * | addrs, | ||
int | addrcnt, | ||
int | flags | ||
) |
int usrsctp_connect | ( | struct socket * | so, |
struct sockaddr * | name, | ||
socklen_t | namelen | ||
) |
int usrsctp_connectx | ( | struct socket * | so, |
const struct sockaddr * | addrs, | ||
int | addrcnt, | ||
sctp_assoc_t * | id | ||
) |
int usrsctp_finish | ( | void | ) |
void usrsctp_freedumpbuffer | ( | char * | ) |
void usrsctp_freeladdrs | ( | struct sockaddr * | addrs | ) |
void usrsctp_freepaddrs | ( | struct sockaddr * | addrs | ) |
int usrsctp_get_non_blocking | ( | struct socket * | ) |
sctp_assoc_t usrsctp_getassocid | ( | struct socket * | , |
struct sockaddr * | |||
) |
int usrsctp_getladdrs | ( | struct socket * | so, |
sctp_assoc_t | id, | ||
struct sockaddr ** | raddrs | ||
) |
int usrsctp_getpaddrs | ( | struct socket * | so, |
sctp_assoc_t | id, | ||
struct sockaddr ** | raddrs | ||
) |
int usrsctp_getsockopt | ( | struct socket * | so, |
int | level, | ||
int | option_name, | ||
void * | option_value, | ||
socklen_t * | option_len | ||
) |
void usrsctp_init | ( | uint16_t | , |
int(*)(void *addr, void *buffer, size_t length, uint8_t tos, uint8_t set_df) | , | ||
void(*)(const char *format,...) | |||
) |
int usrsctp_listen | ( | struct socket * | so, |
int | backlog | ||
) |
struct socket* usrsctp_peeloff | ( | struct socket * | , |
sctp_assoc_t | |||
) |
ssize_t usrsctp_recvv | ( | struct socket * | so, |
void * | dbuf, | ||
size_t | len, | ||
struct sockaddr * | from, | ||
socklen_t * | fromlen, | ||
void * | info, | ||
socklen_t * | infolen, | ||
unsigned int * | infotype, | ||
int * | msg_flags | ||
) |
ssize_t usrsctp_sendv | ( | struct socket * | so, |
const void * | data, | ||
size_t | len, | ||
struct sockaddr * | to, | ||
int | addrcnt, | ||
void * | info, | ||
socklen_t | infolen, | ||
unsigned int | infotype, | ||
int | flags | ||
) |
int usrsctp_set_non_blocking | ( | struct socket * | , |
int | |||
) |
int usrsctp_setsockopt | ( | struct socket * | so, |
int | level, | ||
int | option_name, | ||
const void * | option_value, | ||
socklen_t | option_len | ||
) |
int usrsctp_shutdown | ( | struct socket * | so, |
int | how | ||
) |
struct socket* usrsctp_socket | ( | int | domain, |
int | type, | ||
int | protocol, | ||
int(*)(struct socket *sock, union sctp_sockstore addr, void *data, size_t datalen, struct sctp_rcvinfo, int flags, void *ulp_info) | receive_cb, | ||
int(*)(struct socket *sock, uint32_t sb_free) | send_cb, | ||
uint32_t | sb_threshold, | ||
void * | ulp_info | ||
) |