FreeBSD kernel IPv4 code
sctp_uio.h File Reference
#include <sys/cdefs.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <sys/endian.h>
Include dependency graph for sctp_uio.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  sctp_event
 
struct  sctp_event_subscribe
 
struct  sctp_initmsg
 
struct  sctp_sndrcvinfo
 
struct  sctp_extrcvinfo
 
struct  sctp_sndinfo
 
struct  sctp_prinfo
 
struct  sctp_default_prinfo
 
struct  sctp_authinfo
 
struct  sctp_rcvinfo
 
struct  sctp_nxtinfo
 
struct  sctp_recvv_rn
 
struct  sctp_sendv_spa
 
struct  sctp_snd_all_completes
 
struct  sctp_pcbinfo
 
struct  sctp_sockstat
 
struct  sctp_assoc_change
 
struct  sctp_paddr_change
 
struct  sctp_remote_error
 
struct  sctp_send_failed
 
struct  sctp_send_failed_event
 
struct  sctp_shutdown_event
 
struct  sctp_adaptation_event
 
struct  sctp_setadaptation
 
struct  sctp_adaption_event
 
struct  sctp_setadaption
 
struct  sctp_pdapi_event
 
struct  sctp_authkey_event
 
struct  sctp_sender_dry_event
 
struct  sctp_stream_reset_event
 
struct  sctp_assoc_reset_event
 
struct  sctp_stream_change_event
 
struct  sctp_tlv
 
union  sctp_notification
 
struct  sctp_paddrparams
 
struct  sctp_paddrthlds
 
struct  sctp_paddrinfo
 
struct  sctp_rtoinfo
 
struct  sctp_assocparams
 
struct  sctp_setprim
 
struct  sctp_setpeerprim
 
union  sctp_sockstore
 
struct  sctp_getaddresses
 
struct  sctp_status
 
struct  sctp_authchunk
 
struct  sctp_authkey
 
struct  sctp_hmacalgo
 
struct  sctp_authkeyid
 
struct  sctp_authchunks
 
struct  sctp_assoc_value
 
struct  sctp_cc_option
 
struct  sctp_stream_value
 
struct  sctp_assoc_ids
 
struct  sctp_sack_info
 
struct  sctp_timeouts
 
struct  sctp_udpencaps
 
struct  sctp_prstatus
 
struct  sctp_cwnd_args
 
struct  sctp_blk_args
 
struct  sctp_reset_streams
 
struct  sctp_add_streams
 
struct  sctp_get_nonce_values
 
struct  sctp_str_log
 
struct  sctp_sb_log
 
struct  sctp_fr_log
 
struct  sctp_fr_map
 
struct  sctp_rwnd_log
 
struct  sctp_mbcnt_log
 
struct  sctp_sack_log
 
struct  sctp_lock_log
 
struct  sctp_rto_log
 
struct  sctp_nagle_log
 
struct  sctp_sbwake_log
 
struct  sctp_misc_info
 
struct  sctp_log_closing
 
struct  sctp_mbuf_log
 
struct  sctp_cwnd_log
 
struct  sctp_cwnd_log_req
 
struct  sctp_timeval
 
struct  sctpstat
 
struct  xsctp_inpcb
 
struct  xsctp_tcb
 
struct  xsctp_laddr
 
struct  xsctp_raddr
 
struct  sctp_log_entry
 
struct  sctp_log
 

Macros

#define _NETINET_SCTP_UIO_H_
 
#define SCTP_FUTURE_ASSOC   0
 
#define SCTP_CURRENT_ASSOC   1
 
#define SCTP_ALL_ASSOC   2
 
#define sctp_stream_reset_events   sctp_stream_reset_event
 
#define SCTP_INIT   0x0001
 
#define SCTP_SNDRCV   0x0002
 
#define SCTP_EXTRCV   0x0003
 
#define SCTP_SNDINFO   0x0004
 
#define SCTP_RCVINFO   0x0005
 
#define SCTP_NXTINFO   0x0006
 
#define SCTP_PRINFO   0x0007
 
#define SCTP_AUTHINFO   0x0008
 
#define SCTP_DSTADDRV4   0x0009
 
#define SCTP_DSTADDRV6   0x000a
 
#define SCTP_ALIGN_RESV_PAD   92
 
#define SCTP_ALIGN_RESV_PAD_SHORT   76
 
#define sinfo_pr_value   sinfo_timetolive
 
#define sreinfo_next_flags   serinfo_next_flags
 
#define sreinfo_next_stream   serinfo_next_stream
 
#define sreinfo_next_aid   serinfo_next_aid
 
#define sreinfo_next_length   serinfo_next_length
 
#define sreinfo_next_ppid   serinfo_next_ppid
 
#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_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_PRIO   0x0002 /* Buffer based PR-SCTP */
 
#define SCTP_PR_SCTP_BUF   SCTP_PR_SCTP_PRIO /* For backwards compatibility */
 
#define SCTP_PR_SCTP_RTX
 
#define SCTP_PR_SCTP_MAX   SCTP_PR_SCTP_RTX
 
#define SCTP_PR_SCTP_ALL   0x000f /* Used for aggregated stats */
 
#define PR_SCTP_POLICY(x)   ((x) & 0x0f)
 
#define PR_SCTP_ENABLED(x)
 
#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_MAX)
 
#define PR_SCTP_VALID_POLICY(x)   (PR_SCTP_POLICY(x) <= SCTP_PR_SCTP_MAX)
 
#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_INTERLEAVING   0x06
 
#define SCTP_ASSOC_SUPPORTS_MAX   0x06
 
#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_ACTIVE   0x0001 /* SCTP_ADDR_REACHABLE */
 
#define SCTP_INACTIVE
 
#define SCTP_UNCONFIRMED   0x0200 /* SCTP_ADDR_UNCONFIRMED */
 
#define SCTP_DATA_UNSENT   0x0001 /* inqueue never on wire */
 
#define SCTP_DATA_SENT   0x0002 /* on wire at failure */
 
#define SCTP_PARTIAL_DELIVERY_ABORTED   0x0001
 
#define SCTP_AUTH_NEW_KEY   0x0001
 
#define SCTP_AUTH_NEWKEY   SCTP_AUTH_NEW_KEY
 
#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
 
#define SCTP_STREAM_RESET_FAILED   0x0008
 
#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_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_ADAPTION_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 /* we don't send this */
 
#define SCTP_ASSOC_RESET_EVENT   0x000c
 
#define SCTP_STREAM_CHANGE_EVENT   0x000d
 
#define SCTP_SEND_FAILED_EVENT   0x000e
 
#define spp_ipv4_tos   spp_dscp
 
#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 SPP_IPV4_TOS   SPP_DSCP
 
#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_MAX_EXPLICT_STR_RESET   1000
 
#define SCTP_STAT_INCR(_x)   SCTP_STAT_INCR_BY(_x,1)
 
#define SCTP_STAT_DECR(_x)   SCTP_STAT_DECR_BY(_x,1)
 
#define SCTP_STAT_INCR_BY(_x, _d)   atomic_add_int(&SCTP_BASE_STAT(_x), _d)
 
#define SCTP_STAT_DECR_BY(_x, _d)   atomic_subtract_int(&SCTP_BASE_STAT(_x), _d)
 
#define SCTP_STAT_INCR_COUNTER32(_x)   SCTP_STAT_INCR(_x)
 
#define SCTP_STAT_INCR_COUNTER64(_x)   SCTP_STAT_INCR(_x)
 
#define SCTP_STAT_INCR_GAUGE32(_x)   SCTP_STAT_INCR(_x)
 
#define SCTP_STAT_DECR_COUNTER32(_x)   SCTP_STAT_DECR(_x)
 
#define SCTP_STAT_DECR_COUNTER64(_x)   SCTP_STAT_DECR(_x)
 
#define SCTP_STAT_DECR_GAUGE32(_x)   SCTP_STAT_DECR(_x)
 
#define ntohll(x)   be64toh(x)
 
#define htonll(x)   htobe64(x)
 
#define SCTP_MAX_LOGGING_SIZE   30000
 
#define SCTP_TRACE_PARAMS   6 /* This number MUST be even */
 

Typedefs

typedef uint32_t sctp_assoc_t
 

Functions

 __FBSDID ("$FreeBSD$")
 
int sctp_lower_sosend (struct socket *so, struct sockaddr *addr, struct uio *uio, struct mbuf *i_pak, struct mbuf *control, int flags, struct sctp_sndrcvinfo *srcv, struct thread *p)
 
int sctp_sorecvmsg (struct socket *so, struct uio *uio, struct mbuf **mp, struct sockaddr *from, int fromlen, int *msg_flags, struct sctp_sndrcvinfo *sinfo, int filling_sinfo)
 

Macro Definition Documentation

◆ _NETINET_SCTP_UIO_H_

#define _NETINET_SCTP_UIO_H_

Definition at line 39 of file sctp_uio.h.

◆ htonll

#define htonll (   x)    htobe64(x)

Definition at line 1153 of file sctp_uio.h.

◆ INVALID_SINFO_FLAG

#define INVALID_SINFO_FLAG (   x)
Value:
(((x) & 0xfffffff0 \
#define SCTP_UNORDERED
Definition: sctp_uio.h:246
#define SCTP_ABORT
Definition: sctp_uio.h:245
#define SCTP_SENDALL
Definition: sctp_uio.h:248
#define SCTP_EOF
Definition: sctp_uio.h:244
#define SCTP_SACK_IMMEDIATELY
Definition: sctp_uio.h:250
#define SCTP_EOR
Definition: sctp_uio.h:249
#define SCTP_ADDR_OVER
Definition: sctp_uio.h:247

Definition at line 252 of file sctp_uio.h.

◆ ntohll

#define ntohll (   x)    be64toh(x)

Definition at line 1148 of file sctp_uio.h.

◆ PR_SCTP_BUF_ENABLED

#define PR_SCTP_BUF_ENABLED (   x)    (PR_SCTP_POLICY(x) == SCTP_PR_SCTP_BUF)

Definition at line 271 of file sctp_uio.h.

◆ PR_SCTP_ENABLED

#define PR_SCTP_ENABLED (   x)
Value:
#define SCTP_PR_SCTP_ALL
Definition: sctp_uio.h:265
#define SCTP_PR_SCTP_NONE
Definition: sctp_uio.h:259
#define PR_SCTP_POLICY(x)
Definition: sctp_uio.h:267

Definition at line 268 of file sctp_uio.h.

◆ PR_SCTP_INVALID_POLICY

#define PR_SCTP_INVALID_POLICY (   x)    (PR_SCTP_POLICY(x) > SCTP_PR_SCTP_MAX)

Definition at line 273 of file sctp_uio.h.

◆ PR_SCTP_POLICY

#define PR_SCTP_POLICY (   x)    ((x) & 0x0f)

Definition at line 267 of file sctp_uio.h.

◆ PR_SCTP_RTX_ENABLED

#define PR_SCTP_RTX_ENABLED (   x)    (PR_SCTP_POLICY(x) == SCTP_PR_SCTP_RTX)

Definition at line 272 of file sctp_uio.h.

◆ PR_SCTP_TTL_ENABLED

#define PR_SCTP_TTL_ENABLED (   x)    (PR_SCTP_POLICY(x) == SCTP_PR_SCTP_TTL)

Definition at line 270 of file sctp_uio.h.

◆ PR_SCTP_VALID_POLICY

#define PR_SCTP_VALID_POLICY (   x)    (PR_SCTP_POLICY(x) <= SCTP_PR_SCTP_MAX)

Definition at line 274 of file sctp_uio.h.

◆ SCTP_ABORT

#define SCTP_ABORT   0x0200 /* Send an ABORT to peer */

Definition at line 245 of file sctp_uio.h.

◆ SCTP_ACTIVE

#define SCTP_ACTIVE   0x0001 /* SCTP_ADDR_REACHABLE */

Definition at line 349 of file sctp_uio.h.

◆ SCTP_ADAPTATION_INDICATION

#define SCTP_ADAPTATION_INDICATION   0x0006

Definition at line 544 of file sctp_uio.h.

◆ SCTP_ADAPTION_INDICATION

#define SCTP_ADAPTION_INDICATION   0x0006

Definition at line 546 of file sctp_uio.h.

◆ SCTP_ADDR_ADDED

#define SCTP_ADDR_ADDED   0x0004

Definition at line 345 of file sctp_uio.h.

◆ SCTP_ADDR_AVAILABLE

#define SCTP_ADDR_AVAILABLE   0x0001

Definition at line 342 of file sctp_uio.h.

◆ SCTP_ADDR_CONFIRMED

#define SCTP_ADDR_CONFIRMED   0x0006

Definition at line 347 of file sctp_uio.h.

◆ SCTP_ADDR_MADE_PRIM

#define SCTP_ADDR_MADE_PRIM   0x0005

Definition at line 346 of file sctp_uio.h.

◆ SCTP_ADDR_OVER

#define SCTP_ADDR_OVER   0x0800 /* Override the primary-address */

Definition at line 247 of file sctp_uio.h.

◆ SCTP_ADDR_REMOVED

#define SCTP_ADDR_REMOVED   0x0003

Definition at line 344 of file sctp_uio.h.

◆ SCTP_ADDR_UNREACHABLE

#define SCTP_ADDR_UNREACHABLE   0x0002

Definition at line 343 of file sctp_uio.h.

◆ SCTP_ALIGN_RESV_PAD

#define SCTP_ALIGN_RESV_PAD   92

Definition at line 113 of file sctp_uio.h.

◆ SCTP_ALIGN_RESV_PAD_SHORT

#define SCTP_ALIGN_RESV_PAD_SHORT   76

Definition at line 114 of file sctp_uio.h.

◆ SCTP_ALL_ASSOC

#define SCTP_ALL_ASSOC   2

Definition at line 52 of file sctp_uio.h.

◆ SCTP_ASSOC_CHANGE

#define SCTP_ASSOC_CHANGE   0x0001

Definition at line 539 of file sctp_uio.h.

◆ SCTP_ASSOC_RESET_DENIED

#define SCTP_ASSOC_RESET_DENIED   0x0004

Definition at line 494 of file sctp_uio.h.

◆ SCTP_ASSOC_RESET_EVENT

#define SCTP_ASSOC_RESET_EVENT   0x000c

Definition at line 552 of file sctp_uio.h.

◆ SCTP_ASSOC_RESET_FAILED

#define SCTP_ASSOC_RESET_FAILED   0x0008

Definition at line 495 of file sctp_uio.h.

◆ SCTP_ASSOC_SUPPORTS_ASCONF

#define SCTP_ASSOC_SUPPORTS_ASCONF   0x03

Definition at line 323 of file sctp_uio.h.

◆ SCTP_ASSOC_SUPPORTS_AUTH

#define SCTP_ASSOC_SUPPORTS_AUTH   0x02

Definition at line 322 of file sctp_uio.h.

◆ SCTP_ASSOC_SUPPORTS_INTERLEAVING

#define SCTP_ASSOC_SUPPORTS_INTERLEAVING   0x06

Definition at line 326 of file sctp_uio.h.

◆ SCTP_ASSOC_SUPPORTS_MAX

#define SCTP_ASSOC_SUPPORTS_MAX   0x06

Definition at line 327 of file sctp_uio.h.

◆ SCTP_ASSOC_SUPPORTS_MULTIBUF

#define SCTP_ASSOC_SUPPORTS_MULTIBUF   0x04

Definition at line 324 of file sctp_uio.h.

◆ SCTP_ASSOC_SUPPORTS_PR

#define SCTP_ASSOC_SUPPORTS_PR   0x01

Definition at line 321 of file sctp_uio.h.

◆ SCTP_ASSOC_SUPPORTS_RE_CONFIG

#define SCTP_ASSOC_SUPPORTS_RE_CONFIG   0x05

Definition at line 325 of file sctp_uio.h.

◆ SCTP_AUTH_FREE_KEY

#define SCTP_AUTH_FREE_KEY   0x0003

Definition at line 456 of file sctp_uio.h.

◆ SCTP_AUTH_HMAC_ID_RSVD

#define SCTP_AUTH_HMAC_ID_RSVD   0x0000

Definition at line 673 of file sctp_uio.h.

◆ SCTP_AUTH_HMAC_ID_SHA1

#define SCTP_AUTH_HMAC_ID_SHA1   0x0001 /* default, mandatory */

Definition at line 674 of file sctp_uio.h.

◆ SCTP_AUTH_HMAC_ID_SHA256

#define SCTP_AUTH_HMAC_ID_SHA256   0x0003

Definition at line 675 of file sctp_uio.h.

◆ SCTP_AUTH_NEW_KEY

#define SCTP_AUTH_NEW_KEY   0x0001

Definition at line 453 of file sctp_uio.h.

◆ SCTP_AUTH_NEWKEY

#define SCTP_AUTH_NEWKEY   SCTP_AUTH_NEW_KEY

Definition at line 454 of file sctp_uio.h.

◆ SCTP_AUTH_NO_AUTH

#define SCTP_AUTH_NO_AUTH   0x0002

Definition at line 455 of file sctp_uio.h.

◆ SCTP_AUTHENTICATION_EVENT

#define SCTP_AUTHENTICATION_EVENT   0x0008

Definition at line 548 of file sctp_uio.h.

◆ SCTP_AUTHINFO

#define SCTP_AUTHINFO   0x0008

Definition at line 86 of file sctp_uio.h.

◆ SCTP_CANT_STR_ASSOC

#define SCTP_CANT_STR_ASSOC   0x0005

Definition at line 318 of file sctp_uio.h.

◆ SCTP_COMM_LOST

#define SCTP_COMM_LOST   0x0002

Definition at line 315 of file sctp_uio.h.

◆ SCTP_COMM_UP

#define SCTP_COMM_UP   0x0001

Definition at line 314 of file sctp_uio.h.

◆ SCTP_COMPLETE

#define SCTP_COMPLETE   0x0020 /* next message is complete */

Definition at line 243 of file sctp_uio.h.

◆ SCTP_CURRENT_ASSOC

#define SCTP_CURRENT_ASSOC   1

Definition at line 51 of file sctp_uio.h.

◆ SCTP_DATA_SENT

#define SCTP_DATA_SENT   0x0002 /* on wire at failure */

Definition at line 387 of file sctp_uio.h.

◆ SCTP_DATA_UNSENT

#define SCTP_DATA_UNSENT   0x0001 /* inqueue never on wire */

Definition at line 386 of file sctp_uio.h.

◆ SCTP_DSTADDRV4

#define SCTP_DSTADDRV4   0x0009

Definition at line 87 of file sctp_uio.h.

◆ SCTP_DSTADDRV6

#define SCTP_DSTADDRV6   0x000a

Definition at line 88 of file sctp_uio.h.

◆ SCTP_EOF

#define SCTP_EOF   0x0100 /* Start shutdown procedures */

Definition at line 244 of file sctp_uio.h.

◆ SCTP_EOR

#define SCTP_EOR   0x2000 /* end of message signal */

Definition at line 249 of file sctp_uio.h.

◆ SCTP_EXTRCV

#define SCTP_EXTRCV   0x0003

Definition at line 81 of file sctp_uio.h.

◆ SCTP_FUTURE_ASSOC

#define SCTP_FUTURE_ASSOC   0

Definition at line 50 of file sctp_uio.h.

◆ SCTP_INACTIVE

#define SCTP_INACTIVE
Value:
0x0002 /* neither SCTP_ADDR_REACHABLE nor
* SCTP_ADDR_UNCONFIRMED */

Definition at line 350 of file sctp_uio.h.

◆ SCTP_INIT

#define SCTP_INIT   0x0001

Definition at line 79 of file sctp_uio.h.

◆ SCTP_MAX_EXPLICT_STR_RESET

#define SCTP_MAX_EXPLICT_STR_RESET   1000

Definition at line 770 of file sctp_uio.h.

◆ SCTP_MAX_LOGGING_SIZE

#define SCTP_MAX_LOGGING_SIZE   30000

Definition at line 1236 of file sctp_uio.h.

◆ SCTP_NEXT_MSG_AVAIL

#define SCTP_NEXT_MSG_AVAIL   0x0001

Definition at line 200 of file sctp_uio.h.

◆ SCTP_NEXT_MSG_IS_NOTIFICATION

#define SCTP_NEXT_MSG_IS_NOTIFICATION   0x0008

Definition at line 203 of file sctp_uio.h.

◆ SCTP_NEXT_MSG_IS_UNORDERED

#define SCTP_NEXT_MSG_IS_UNORDERED   0x0004

Definition at line 202 of file sctp_uio.h.

◆ SCTP_NEXT_MSG_ISCOMPLETE

#define SCTP_NEXT_MSG_ISCOMPLETE   0x0002

Definition at line 201 of file sctp_uio.h.

◆ SCTP_NO_NEXT_MSG

#define SCTP_NO_NEXT_MSG   0x0000

Definition at line 199 of file sctp_uio.h.

◆ SCTP_NOTIFICATION

#define SCTP_NOTIFICATION   0x0010 /* next message is a notification */

Definition at line 242 of file sctp_uio.h.

◆ SCTP_NOTIFICATIONS_STOPPED_EVENT

#define SCTP_NOTIFICATIONS_STOPPED_EVENT   0x000b /* we don't send this */

Definition at line 551 of file sctp_uio.h.

◆ SCTP_NXTINFO

#define SCTP_NXTINFO   0x0006

Definition at line 84 of file sctp_uio.h.

◆ SCTP_PARTIAL_DELIVERY_ABORTED

#define SCTP_PARTIAL_DELIVERY_ABORTED   0x0001

Definition at line 437 of file sctp_uio.h.

◆ SCTP_PARTIAL_DELIVERY_EVENT

#define SCTP_PARTIAL_DELIVERY_EVENT   0x0007

Definition at line 547 of file sctp_uio.h.

◆ SCTP_PEER_ADDR_CHANGE

#define SCTP_PEER_ADDR_CHANGE   0x0002

Definition at line 540 of file sctp_uio.h.

◆ SCTP_PR_SCTP_ALL

#define SCTP_PR_SCTP_ALL   0x000f /* Used for aggregated stats */

Definition at line 265 of file sctp_uio.h.

◆ SCTP_PR_SCTP_BUF

#define SCTP_PR_SCTP_BUF   SCTP_PR_SCTP_PRIO /* For backwards compatibility */

Definition at line 262 of file sctp_uio.h.

◆ SCTP_PR_SCTP_MAX

#define SCTP_PR_SCTP_MAX   SCTP_PR_SCTP_RTX

Definition at line 264 of file sctp_uio.h.

◆ SCTP_PR_SCTP_NONE

#define SCTP_PR_SCTP_NONE   0x0000 /* Reliable transfer */

Definition at line 259 of file sctp_uio.h.

◆ SCTP_PR_SCTP_PRIO

#define SCTP_PR_SCTP_PRIO   0x0002 /* Buffer based PR-SCTP */

Definition at line 261 of file sctp_uio.h.

◆ SCTP_PR_SCTP_RTX

#define SCTP_PR_SCTP_RTX
Value:
0x0003 /* Number of retransmissions based
* PR-SCTP */

Definition at line 263 of file sctp_uio.h.

◆ SCTP_PR_SCTP_TTL

#define SCTP_PR_SCTP_TTL   0x0001 /* Time based PR-SCTP */

Definition at line 260 of file sctp_uio.h.

◆ SCTP_PRINFO

#define SCTP_PRINFO   0x0007

Definition at line 85 of file sctp_uio.h.

◆ SCTP_RCVINFO

#define SCTP_RCVINFO   0x0005

Definition at line 83 of file sctp_uio.h.

◆ SCTP_RECVV_NOINFO

#define SCTP_RECVV_NOINFO   0

Definition at line 210 of file sctp_uio.h.

◆ SCTP_RECVV_NXTINFO

#define SCTP_RECVV_NXTINFO   2

Definition at line 212 of file sctp_uio.h.

◆ SCTP_RECVV_RCVINFO

#define SCTP_RECVV_RCVINFO   1

Definition at line 211 of file sctp_uio.h.

◆ SCTP_RECVV_RN

#define SCTP_RECVV_RN   3

Definition at line 213 of file sctp_uio.h.

◆ SCTP_REMOTE_ERROR

#define SCTP_REMOTE_ERROR   0x0003

Definition at line 541 of file sctp_uio.h.

◆ SCTP_RESTART

#define SCTP_RESTART   0x0003

Definition at line 316 of file sctp_uio.h.

◆ SCTP_SACK_IMMEDIATELY

#define SCTP_SACK_IMMEDIATELY   0x4000 /* Set I-Bit */

Definition at line 250 of file sctp_uio.h.

◆ SCTP_SEND_AUTHINFO_VALID

#define SCTP_SEND_AUTHINFO_VALID   0x00000004

Definition at line 230 of file sctp_uio.h.

◆ SCTP_SEND_FAILED

#define SCTP_SEND_FAILED   0x0004

Definition at line 542 of file sctp_uio.h.

◆ SCTP_SEND_FAILED_EVENT

#define SCTP_SEND_FAILED_EVENT   0x000e

Definition at line 554 of file sctp_uio.h.

◆ SCTP_SEND_PRINFO_VALID

#define SCTP_SEND_PRINFO_VALID   0x00000002

Definition at line 229 of file sctp_uio.h.

◆ SCTP_SEND_SNDINFO_VALID

#define SCTP_SEND_SNDINFO_VALID   0x00000001

Definition at line 228 of file sctp_uio.h.

◆ SCTP_SENDALL

#define SCTP_SENDALL   0x1000 /* Send this on all associations */

Definition at line 248 of file sctp_uio.h.

◆ SCTP_SENDER_DRY_EVENT

#define SCTP_SENDER_DRY_EVENT   0x000a

Definition at line 550 of file sctp_uio.h.

◆ SCTP_SENDV_AUTHINFO

#define SCTP_SENDV_AUTHINFO   3

Definition at line 218 of file sctp_uio.h.

◆ SCTP_SENDV_NOINFO

#define SCTP_SENDV_NOINFO   0

Definition at line 215 of file sctp_uio.h.

◆ SCTP_SENDV_PRINFO

#define SCTP_SENDV_PRINFO   2

Definition at line 217 of file sctp_uio.h.

◆ SCTP_SENDV_SNDINFO

#define SCTP_SENDV_SNDINFO   1

Definition at line 216 of file sctp_uio.h.

◆ SCTP_SENDV_SPA

#define SCTP_SENDV_SPA   4

Definition at line 219 of file sctp_uio.h.

◆ SCTP_SHUTDOWN_COMP

#define SCTP_SHUTDOWN_COMP   0x0004

Definition at line 317 of file sctp_uio.h.

◆ SCTP_SHUTDOWN_EVENT

#define SCTP_SHUTDOWN_EVENT   0x0005

Definition at line 543 of file sctp_uio.h.

◆ SCTP_SNDINFO

#define SCTP_SNDINFO   0x0004

Definition at line 82 of file sctp_uio.h.

◆ SCTP_SNDRCV

#define SCTP_SNDRCV   0x0002

Definition at line 80 of file sctp_uio.h.

◆ SCTP_STAT_DECR

#define SCTP_STAT_DECR (   _x)    SCTP_STAT_DECR_BY(_x,1)

Definition at line 1126 of file sctp_uio.h.

◆ SCTP_STAT_DECR_BY

#define SCTP_STAT_DECR_BY (   _x,
  _d 
)    atomic_subtract_int(&SCTP_BASE_STAT(_x), _d)

Definition at line 1132 of file sctp_uio.h.

◆ SCTP_STAT_DECR_COUNTER32

#define SCTP_STAT_DECR_COUNTER32 (   _x)    SCTP_STAT_DECR(_x)

Definition at line 1138 of file sctp_uio.h.

◆ SCTP_STAT_DECR_COUNTER64

#define SCTP_STAT_DECR_COUNTER64 (   _x)    SCTP_STAT_DECR(_x)

Definition at line 1139 of file sctp_uio.h.

◆ SCTP_STAT_DECR_GAUGE32

#define SCTP_STAT_DECR_GAUGE32 (   _x)    SCTP_STAT_DECR(_x)

Definition at line 1140 of file sctp_uio.h.

◆ SCTP_STAT_INCR

#define SCTP_STAT_INCR (   _x)    SCTP_STAT_INCR_BY(_x,1)

Definition at line 1125 of file sctp_uio.h.

◆ SCTP_STAT_INCR_BY

#define SCTP_STAT_INCR_BY (   _x,
  _d 
)    atomic_add_int(&SCTP_BASE_STAT(_x), _d)

Definition at line 1131 of file sctp_uio.h.

◆ SCTP_STAT_INCR_COUNTER32

#define SCTP_STAT_INCR_COUNTER32 (   _x)    SCTP_STAT_INCR(_x)

Definition at line 1135 of file sctp_uio.h.

◆ SCTP_STAT_INCR_COUNTER64

#define SCTP_STAT_INCR_COUNTER64 (   _x)    SCTP_STAT_INCR(_x)

Definition at line 1136 of file sctp_uio.h.

◆ SCTP_STAT_INCR_GAUGE32

#define SCTP_STAT_INCR_GAUGE32 (   _x)    SCTP_STAT_INCR(_x)

Definition at line 1137 of file sctp_uio.h.

◆ SCTP_STREAM_CHANGE_DENIED

#define SCTP_STREAM_CHANGE_DENIED   0x0004

Definition at line 509 of file sctp_uio.h.

◆ SCTP_STREAM_CHANGE_EVENT

#define SCTP_STREAM_CHANGE_EVENT   0x000d

Definition at line 553 of file sctp_uio.h.

◆ SCTP_STREAM_CHANGE_FAILED

#define SCTP_STREAM_CHANGE_FAILED   0x0008

Definition at line 510 of file sctp_uio.h.

◆ SCTP_STREAM_RESET_DENIED

#define SCTP_STREAM_RESET_DENIED   0x0004

Definition at line 479 of file sctp_uio.h.

◆ SCTP_STREAM_RESET_EVENT

#define SCTP_STREAM_RESET_EVENT   0x0009

Definition at line 549 of file sctp_uio.h.

◆ sctp_stream_reset_events

#define sctp_stream_reset_events   sctp_stream_reset_event

Definition at line 61 of file sctp_uio.h.

◆ SCTP_STREAM_RESET_FAILED

#define SCTP_STREAM_RESET_FAILED   0x0008

Definition at line 480 of file sctp_uio.h.

◆ SCTP_STREAM_RESET_INCOMING_SSN

#define SCTP_STREAM_RESET_INCOMING_SSN   0x0001

Definition at line 477 of file sctp_uio.h.

◆ SCTP_STREAM_RESET_OUTGOING_SSN

#define SCTP_STREAM_RESET_OUTGOING_SSN   0x0002

Definition at line 478 of file sctp_uio.h.

◆ SCTP_TRACE_PARAMS

#define SCTP_TRACE_PARAMS   6 /* This number MUST be even */

Definition at line 1237 of file sctp_uio.h.

◆ SCTP_UNCONFIRMED

#define SCTP_UNCONFIRMED   0x0200 /* SCTP_ADDR_UNCONFIRMED */

Definition at line 351 of file sctp_uio.h.

◆ SCTP_UNORDERED

#define SCTP_UNORDERED   0x0400 /* Message is un-ordered */

Definition at line 246 of file sctp_uio.h.

◆ sinfo_pr_value

#define sinfo_pr_value   sinfo_timetolive

Definition at line 150 of file sctp_uio.h.

◆ SPP_DSCP

#define SPP_DSCP   0x00000200

Definition at line 578 of file sctp_uio.h.

◆ SPP_HB_DEMAND

#define SPP_HB_DEMAND   0x00000004

Definition at line 573 of file sctp_uio.h.

◆ SPP_HB_DISABLE

#define SPP_HB_DISABLE   0x00000002

Definition at line 572 of file sctp_uio.h.

◆ SPP_HB_ENABLE

#define SPP_HB_ENABLE   0x00000001

Definition at line 571 of file sctp_uio.h.

◆ SPP_HB_TIME_IS_ZERO

#define SPP_HB_TIME_IS_ZERO   0x00000080

Definition at line 576 of file sctp_uio.h.

◆ spp_ipv4_tos

#define spp_ipv4_tos   spp_dscp

Definition at line 569 of file sctp_uio.h.

◆ SPP_IPV4_TOS

#define SPP_IPV4_TOS   SPP_DSCP

Definition at line 579 of file sctp_uio.h.

◆ SPP_IPV6_FLOWLABEL

#define SPP_IPV6_FLOWLABEL   0x00000100

Definition at line 577 of file sctp_uio.h.

◆ SPP_PMTUD_DISABLE

#define SPP_PMTUD_DISABLE   0x00000010

Definition at line 575 of file sctp_uio.h.

◆ SPP_PMTUD_ENABLE

#define SPP_PMTUD_ENABLE   0x00000008

Definition at line 574 of file sctp_uio.h.

◆ sreinfo_next_aid

#define sreinfo_next_aid   serinfo_next_aid

Definition at line 153 of file sctp_uio.h.

◆ sreinfo_next_flags

#define sreinfo_next_flags   serinfo_next_flags

Definition at line 151 of file sctp_uio.h.

◆ sreinfo_next_length

#define sreinfo_next_length   serinfo_next_length

Definition at line 154 of file sctp_uio.h.

◆ sreinfo_next_ppid

#define sreinfo_next_ppid   serinfo_next_ppid

Definition at line 155 of file sctp_uio.h.

◆ sreinfo_next_stream

#define sreinfo_next_stream   serinfo_next_stream

Definition at line 152 of file sctp_uio.h.

Typedef Documentation

◆ sctp_assoc_t

Definition at line 48 of file sctp_uio.h.

Function Documentation

◆ __FBSDID()

__FBSDID ( "$FreeBSD$"  )

◆ sctp_lower_sosend()

int sctp_lower_sosend ( struct socket *  so,
struct sockaddr *  addr,
struct uio *  uio,
struct mbuf *  i_pak,
struct mbuf *  control,
int  flags,
struct sctp_sndrcvinfo srcv,
struct thread *  p 
)

Pre-screen address, if one is given the sin-len must be set correctly!

Definition at line 12489 of file sctp_output.c.

References sctp_association::alternate, sctp_tcb::asoc, sctp_tcb::block_entry, sctp_association::chunks_on_out_queue, sctp_association::control_send_queue, sctp_nets::cwnd, sctp_stream_queue_pending::data, sctp_inpcb::def_send, sctp_association::def_send, sctp_inpcb::def_vrf_id, sctp_block_entry::error, sctp_nets::flight_size, sctp_association::idata_supported, sctp_association::ifp_had_enobuf, sctp_inpcb::inp, INVALID_SINFO_FLAG, sctp_stream_out::last_msg_incomplete, sctp_stream_queue_pending::length, sctp_stream_queue_pending::msg_is_complete, sctp_nets::mtu, next, sctp_stream_out::outqueue, sctp_paramhdr::param_length, sctp_paramhdr::param_type, sctp_association::peers_rwnd, sctp_pcb::port, PR_SCTP_INVALID_POLICY, sctp_pcb::pre_open_stream_count, sctp_association::primary_destination, sctp_stream_queue_pending::processing, sctp_association::prsctp_supported, sctp_association::refcnt, sctp_tcb::rport, sctp_sockstore::sa, sctp_association::sb_send_resv, SCTP_ABORT, sctp_abort_an_association(), SCTP_ADD_SUBSTATE, SCTP_ADDR_OVER, SCTP_ALL_ASSOC, sctp_aloc_assoc_connected(), SCTP_ASOC_CREATE_LOCK, SCTP_ASOC_CREATE_UNLOCK, sctp_inpcb::sctp_asoc_list, SCTP_BASE_SYSCTL, SCTP_BLK_LOGGING_ENABLE, SCTP_BLOCK_LOG_INTO_BLK, SCTP_BLOCK_LOG_INTO_BLKA, SCTP_BLOCK_LOG_OUTOF_BLK, SCTP_BUF_LEN, SCTP_BUF_NEXT, SCTP_CAUSE_USER_INITIATED_ABT, sctp_chunk_output(), sctp_association::sctp_cmt_on_off, sctp_copy_it_in(), sctp_copy_resume(), SCTP_CWNDLOG_PRESEND, SCTP_DATA_CHUNK_OVERHEAD, SCTP_DEBUG_OUTPUT1, SCTP_DEFAULT_ADD_MORE, SCTP_DIAG_INFO_LEN, SCTP_EOF, SCTP_EOR, sctp_inpcb::sctp_ep, sctp_tcb::sctp_ep, sctp_feature_off, sctp_findassociation_ep_addr(), sctp_findassociation_ep_asocid(), sctp_findnet(), sctp_inpcb::sctp_flags, sctp_free_assoc(), SCTP_FROM_SCTP_OUTPUT, sctp_generate_cause(), sctp_get_frag_point(), sctp_get_mbuf_for_msg(), SCTP_GET_STATE, SCTP_GETTIME_TIMEVAL, SCTP_HEADER_LEN, SCTP_HEADER_TO_CHAIN, SCTP_INITIALIZE_AUTH_PARAMS, SCTP_INP_DECR_REF, SCTP_INP_INCR_REF, SCTP_INP_RLOCK, SCTP_INP_RUNLOCK, SCTP_INP_WLOCK, SCTP_INP_WUNLOCK, sctp_is_feature_off, sctp_is_feature_on, SCTP_IS_LISTENING, sctp_is_there_unsent_data(), SCTP_LOC_6, sctp_log_block(), sctp_log_nagle_event(), SCTP_LTRACE_ERR_RET, sctp_m_freem, SCTP_MAX_DATA_BUNDLING, sctp_med_chunk_output(), SCTP_MIN_OVERHEAD, sctp_misc_ints(), sctp_msg_append(), SCTP_NAGLE_APPLIED, SCTP_NAGLE_LOGGING_ENABLE, SCTP_NAGLE_SKIPPED, SCTP_NORMAL_PROC, SCTP_OUTPUT_FROM_USR_SEND, SCTP_PCB_FLAGS_BOUND_V6, SCTP_PCB_FLAGS_CONNECTED, SCTP_PCB_FLAGS_EXPLICIT_EOR, SCTP_PCB_FLAGS_IN_TCPPOOL, SCTP_PCB_FLAGS_NO_FRAGMENT, SCTP_PCB_FLAGS_NODELAY, SCTP_PCB_FLAGS_SOCKET_ALLGONE, SCTP_PCB_FLAGS_SOCKET_GONE, SCTP_PCB_FLAGS_TCPTYPE, SCTP_PRINTF, sctp_process_cmsgs_for_init(), sctp_prune_prsctp(), SCTP_RELEASE_PKT, SCTP_SACK_IMMEDIATELY, SCTP_SB_LIMIT_SND, sctp_send_initiate(), sctp_send_shutdown(), sctp_sendall(), SCTP_SENDALL, SCTP_SET_STATE, sctp_snd_sb_alloc, SCTP_SNPRINTF, SCTP_SO_IS_NBIO, SCTP_SO_LOCKED, sctp_tcb::sctp_socket, sctp_ss_functions::sctp_ss_add_to_stream, sctp_ss_functions::sctp_ss_is_user_msgs_incomplete, SCTP_STAT_DECR_GAUGE32, SCTP_STAT_INCR, SCTP_STATE_ABOUT_TO_BE_FREED, SCTP_STATE_COOKIE_ECHOED, SCTP_STATE_COOKIE_WAIT, SCTP_STATE_OPEN, SCTP_STATE_PARTIAL_MSG_LEFT, SCTP_STATE_SHUTDOWN_ACK_SENT, SCTP_STATE_SHUTDOWN_PENDING, SCTP_STATE_SHUTDOWN_RECEIVED, SCTP_STATE_SHUTDOWN_SENT, SCTP_STATE_WAS_ABORTED, sctp_stop_timers_for_shutdown(), SCTP_STREAM_OPEN, SCTP_STREAM_OPENING, SCTP_TCB_LOCK, SCTP_TCB_LOCK_ASSERT, SCTP_TCB_SEND_LOCK, SCTP_TCB_SEND_UNLOCK, SCTP_TCB_TRYLOCK, SCTP_TCB_UNLOCK, sctp_timer_start(), SCTP_TIMER_TYPE_SHUTDOWN, SCTP_TIMER_TYPE_SHUTDOWNGUARD, SCTP_UNORDERED, SCTPDBG, sctp_association::send_queue, sctp_stream_queue_pending::sender_all_done, sctp_association::sent_queue, sctp_association::sent_queue_cnt_removeable, sctp_sockstore::sin, sctp_sockstore::sin6, sockaddr_in::sin_len, sockaddr_in::sin_port, sctp_nonpad_sndrcvinfo::sinfo_assoc_id, sctp_sndrcvinfo::sinfo_assoc_id, sctp_stream_queue_pending::sinfo_flags, sctp_nonpad_sndrcvinfo::sinfo_flags, sctp_sndrcvinfo::sinfo_flags, sctp_sndrcvinfo::sinfo_stream, sctp_association::smallest_mtu, sctp_association::ss_functions, sctp_stream_out::state, sctp_association::state, sctp_association::stream_locked, sctp_association::stream_locked_on, sctp_association::stream_queue_cnt, sctp_association::streamoutcnt, sctp_association::strmout, sctp_stream_queue_pending::tail_mbuf, sctp_tcb::tcb_mtx, sctp_tcb::tcb_send_mtx, sctp_association::time_entered, sctp_association::total_flight, sctp_association::total_flight_count, sctp_association::total_output_queue_size, and sctp_tcb::total_sends.

Referenced by sctp_sosend(), sys_sctp_generic_sendmsg(), and sys_sctp_generic_sendmsg_iov().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sctp_sorecvmsg()

int sctp_sorecvmsg ( struct socket *  so,
struct uio *  uio,
struct mbuf **  mp,
struct sockaddr *  from,
int  fromlen,
int *  msg_flags,
struct sctp_sndrcvinfo sinfo,
int  filling_sinfo 
)

Definition at line 5477 of file sctputil.c.

References sctp_net_route::_l_addr, sctp_tcb::asoc, sctp_queued_to_read::aux_data, sctp_inpcb::control, sctp_association::cumulative_tsn, sctp_queued_to_read::data, sctp_stream_in::delivery_started, sctp_queued_to_read::do_not_ref_stcb, sctp_queued_to_read::end_added, sctp_pcbtsn_rlog::flgs, sctp_tcb::freed_by_sorcv_sincelast, sctp_queued_to_read::held_length, sctp_inpcb::inp, sctp_inpcb::inp_rdata_mtx, sctp_queued_to_read::length, M_NOTIFICATION, sctp_queued_to_read::mid, sctp_association::my_rwnd, next, sctp_queued_to_read::on_strm_q, sctp_queued_to_read::pdapi_aborted, sctp_queued_to_read::port_from, sctp_inpcb::read_queue, sctp_association::refcnt, sctp_nets::ro, sctp_sockstore::sa, sctp_association::sb_cc, SCTP_BASE_SYSCTL, SCTP_BUF_LEN, SCTP_BUF_NEXT, SCTP_BUF_RESV_UF, SCTP_DATA_UNORDERED, sctp_inpcb::sctp_flags, sctp_free_a_readq, sctp_free_remote_addr, SCTP_FROM_SCTPUTIL, SCTP_INP_READ_LOCK, SCTP_INP_READ_UNLOCK, sctp_is_feature_on, SCTP_LOG_SBFREE, SCTP_LOG_SBRESULT, SCTP_LTRACE_ERR_RET, sctp_m_free, sctp_m_freem, SCTP_MIN_RWND, sctp_misc_ints(), SCTP_NEXT_MSG_AVAIL, SCTP_NEXT_MSG_IS_NOTIFICATION, SCTP_NEXT_MSG_IS_UNORDERED, SCTP_NEXT_MSG_ISCOMPLETE, SCTP_NO_NEXT_MSG, SCTP_PCB_FLAGS_CONNECTED, SCTP_PCB_FLAGS_EXPLICIT_EOR, SCTP_PCB_FLAGS_EXT_RCVINFO, SCTP_PCB_FLAGS_FRAG_INTERLEAVE, SCTP_PCB_FLAGS_IN_TCPPOOL, SCTP_PCB_FLAGS_INTERLEAVE_STRMS, SCTP_PCB_FLAGS_NEEDS_MAPPED_V4, SCTP_PCB_FLAGS_RECVNXTINFO, SCTP_PCB_FLAGS_SOCKET_ALLGONE, SCTP_PCB_FLAGS_SOCKET_GONE, SCTP_PCB_FLAGS_TCPTYPE, SCTP_PCB_FLAGS_WAS_ABORTED, SCTP_PCB_FLAGS_WAS_CONNECTED, SCTP_PRINTF, SCTP_READ_LOG_SIZE, SCTP_RECV_RWND_LOGGING_ENABLE, SCTP_RWND_HIWAT_SHIFT, SCTP_SB_LIMIT_RCV, SCTP_SB_LOGGING_ENABLE, sctp_sbfree, sctp_sblog(), SCTP_SO_IS_NBIO, SCTP_SORECV_DONE, SCTP_SORECV_ENTER, SCTP_SORECV_ENTERPL, sctp_sorwakeup, SCTP_STAT_INCR, SCTP_STATE_ABOUT_TO_BE_FREED, SCTP_UNORDERED, sctp_user_rcvd(), sctp_pcbtsn_rlog::seq, sctp_extrcvinfo::serinfo_next_aid, sctp_extrcvinfo::serinfo_next_flags, sctp_extrcvinfo::serinfo_next_length, sctp_extrcvinfo::serinfo_next_ppid, sctp_extrcvinfo::serinfo_next_stream, sctp_sockstore::sin, sctp_sockstore::sin6, sockaddr_in::sin_port, sctp_queued_to_read::sinfo_assoc_id, sctp_sndrcvinfo::sinfo_assoc_id, sctp_queued_to_read::sinfo_context, sctp_sndrcvinfo::sinfo_context, sctp_queued_to_read::sinfo_cumtsn, sctp_sndrcvinfo::sinfo_cumtsn, sctp_queued_to_read::sinfo_flags, sctp_sndrcvinfo::sinfo_flags, sctp_queued_to_read::sinfo_ppid, sctp_sndrcvinfo::sinfo_ppid, sctp_sndrcvinfo::sinfo_ssn, sctp_queued_to_read::sinfo_stream, sctp_sndrcvinfo::sinfo_stream, sctp_queued_to_read::sinfo_timetolive, sctp_sndrcvinfo::sinfo_timetolive, sctp_queued_to_read::sinfo_tsn, sctp_sndrcvinfo::sinfo_tsn, sctp_queued_to_read::some_taken, sctp_queued_to_read::spec_flags, sctp_association::state, sctp_queued_to_read::stcb, sctp_pcbtsn_rlog::strm, sctp_association::strmin, sctp_pcbtsn_rlog::sz, sctp_queued_to_read::tail_mbuf, sctp_pcbtsn_rlog::vtag, and sctp_queued_to_read::whoFrom.

Referenced by sctp_soreceive(), and sys_sctp_generic_recvmsg().

Here is the call graph for this function:
Here is the caller graph for this function: