webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Classes | Macros | Functions
sctp_pcb.h File Reference
#include <netinet/sctp_os.h>
#include <netinet/sctp.h>
#include <netinet/sctp_constants.h>
#include <netinet/sctp_sysctl.h>
#include <netinet/sctp_structs.h>
#include <netinet/sctp_auth.h>
#include <netinet/sctp_lock_empty.h>

Go to the source code of this file.

Classes

struct  sctp_vrf
 
struct  sctp_ifn
 
struct  sctp_ifa
 
struct  sctp_laddr
 
struct  sctp_block_entry
 
struct  sctp_timewait
 
struct  sctp_tagblock
 
struct  sctp_epinfo
 
struct  sctp_base_info
 
struct  sctp_pcb
 
struct  sctp_pcbtsn_rlog
 
struct  sctp_inpcb
 
struct  sctp_tcb
 

Macros

#define _NETINET_SCTP_PCB_H_
 
#define SCTP_PCBHASH_ALLADDR(port, mask)   (port & mask)
 
#define SCTP_PCBHASH_ASOC(tag, mask)   (tag & mask)
 
#define SCTP_ADDR_VALID   0x00000001 /* its up and active */
 
#define SCTP_BEING_DELETED
 
#define SCTP_ADDR_DEFER_USE   0x00000004 /* Hold off using this one */
 
#define SCTP_ADDR_IFA_UNUSEABLE   0x00000008
 
#define SCTP_ALIGNMENT   32
 
#define SCTP_ALIGNM1   (SCTP_ALIGNMENT-1)
 
#define sctp_lport   ip_inp.inp.inp_lport
 
#define SCTP_READ_LOG_SIZE   135 /* we choose the number to make a pcb a page */
 
#define INP_IPV6   0x1
 
#define INP_IPV4   0x2
 

Functions

 LIST_HEAD (sctppcbhead, sctp_inpcb)
 
 LIST_HEAD (sctpasochead, sctp_tcb)
 
 LIST_HEAD (sctpladdr, sctp_laddr)
 
 LIST_HEAD (sctpvtaghead, sctp_tagblock)
 
 LIST_HEAD (sctp_vrflist, sctp_vrf)
 
 LIST_HEAD (sctp_ifnlist, sctp_ifn)
 
 LIST_HEAD (sctp_ifalist, sctp_ifa)
 
 TAILQ_HEAD (sctp_readhead, sctp_queued_to_read)
 
 TAILQ_HEAD (sctp_streamhead, sctp_stream_queue_pending)
 

Macro Definition Documentation

◆ _NETINET_SCTP_PCB_H_

#define _NETINET_SCTP_PCB_H_

◆ INP_IPV4

#define INP_IPV4   0x2

◆ INP_IPV6

#define INP_IPV6   0x1

◆ SCTP_ADDR_DEFER_USE

#define SCTP_ADDR_DEFER_USE   0x00000004 /* Hold off using this one */

◆ SCTP_ADDR_IFA_UNUSEABLE

#define SCTP_ADDR_IFA_UNUSEABLE   0x00000008

◆ SCTP_ADDR_VALID

#define SCTP_ADDR_VALID   0x00000001 /* its up and active */

◆ SCTP_ALIGNM1

#define SCTP_ALIGNM1   (SCTP_ALIGNMENT-1)

◆ SCTP_ALIGNMENT

#define SCTP_ALIGNMENT   32

◆ SCTP_BEING_DELETED

#define SCTP_BEING_DELETED
Value:
0x00000002 /* being deleted,
* when refcount = 0. Note
* that it is pulled from the ifn list
* and ifa_p is nulled right away but
* it cannot be freed until the last *net
* pointing to it is deleted.
*/

◆ sctp_lport

#define sctp_lport   ip_inp.inp.inp_lport

◆ SCTP_PCBHASH_ALLADDR

#define SCTP_PCBHASH_ALLADDR (   port,
  mask 
)    (port & mask)

◆ SCTP_PCBHASH_ASOC

#define SCTP_PCBHASH_ASOC (   tag,
  mask 
)    (tag & mask)

◆ SCTP_READ_LOG_SIZE

#define SCTP_READ_LOG_SIZE   135 /* we choose the number to make a pcb a page */

Function Documentation

◆ LIST_HEAD() [1/7]

LIST_HEAD ( sctppcbhead  ,
sctp_inpcb   
)

◆ LIST_HEAD() [2/7]

LIST_HEAD ( sctpasochead  ,
sctp_tcb   
)

◆ LIST_HEAD() [3/7]

LIST_HEAD ( sctpladdr  ,
sctp_laddr   
)

◆ LIST_HEAD() [4/7]

LIST_HEAD ( sctpvtaghead  ,
sctp_tagblock   
)

◆ LIST_HEAD() [5/7]

LIST_HEAD ( sctp_vrflist  ,
sctp_vrf   
)

◆ LIST_HEAD() [6/7]

LIST_HEAD ( sctp_ifnlist  ,
sctp_ifn   
)

◆ LIST_HEAD() [7/7]

LIST_HEAD ( sctp_ifalist  ,
sctp_ifa   
)

◆ TAILQ_HEAD() [1/2]

TAILQ_HEAD ( sctp_readhead  ,
sctp_queued_to_read   
)

◆ TAILQ_HEAD() [2/2]

TAILQ_HEAD ( sctp_streamhead  ,
sctp_stream_queue_pending   
)