Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
structs.h File Reference
#include <linux/time.h>
#include <linux/socket.h>
#include <linux/in.h>
#include <linux/in6.h>
#include <linux/ipv6.h>
#include <asm/param.h>
#include <linux/atomic.h>
#include <linux/skbuff.h>
#include <linux/workqueue.h>
#include <linux/sctp.h>
#include <net/sctp/auth.h>
#include <net/sctp/tsnmap.h>
#include <net/sctp/ulpevent.h>
#include <net/sctp/ulpqueue.h>

Go to the source code of this file.

Data Structures

union  sctp_addr
 
struct  sctp_bind_bucket
 
struct  sctp_bind_hashbucket
 
struct  sctp_hashbucket
 
struct  sctp_globals
 
struct  sctp_sock
 
struct  sctp_cookie
 
struct  sctp_signed_cookie
 
union  sctp_addr_param
 
union  sctp_params
 
struct  sctp_sender_hb_info
 
struct  sctp_stream
 
struct  sctp_ssnmap
 
struct  sctp_af
 
struct  sctp_pf
 
struct  sctp_datamsg
 
struct  sctp_chunk
 
struct  sctp_sockaddr_entry
 
struct  sctp_packet
 
struct  sctp_transport
 
struct  sctp_inq
 
struct  sctp_outq
 
struct  sctp_bind_addr
 
struct  sctp_ep_common
 
struct  sctp_endpoint
 
struct  sctp_inithdr_host
 
struct  sctp_association
 
struct  sctp_cmsgs
 
struct  sctp_dbg_objcnt_entry_t
 

Macros

#define sctp_max_instreams   (sctp_globals.max_instreams)
 
#define sctp_max_outstreams   (sctp_globals.max_outstreams)
 
#define sctp_address_families   (sctp_globals.address_families)
 
#define sctp_ep_hashsize   (sctp_globals.ep_hashsize)
 
#define sctp_ep_hashtable   (sctp_globals.ep_hashtable)
 
#define sctp_assoc_hashsize   (sctp_globals.assoc_hashsize)
 
#define sctp_assoc_hashtable   (sctp_globals.assoc_hashtable)
 
#define sctp_port_hashsize   (sctp_globals.port_hashsize)
 
#define sctp_port_hashtable   (sctp_globals.port_hashtable)
 
#define sctp_checksum_disable   (sctp_globals.checksum_disable)
 
#define SCTP_CAN_FRTX   0x0
 
#define SCTP_NEED_FRTX   0x1
 
#define SCTP_DONT_FRTX   0x2
 
#define SCTP_ADDRESS_TICK_DELAY   500
 

Typedefs

typedef struct sctp_sender_hb_info sctp_sender_hb_info_t
 
typedef struct sctp_chunk *( sctp_packet_phandler_t )(struct sctp_association *)
 
typedef struct sctp_cmsgs sctp_cmsgs_t
 

Enumerations

enum  sctp_socket_type_t { SCTP_SOCKET_UDP = 0, SCTP_SOCKET_UDP_HIGH_BANDWIDTH, SCTP_SOCKET_TCP }
 
enum  { SCTP_ADDR_NEW, SCTP_ADDR_SRC, SCTP_ADDR_DEL }
 
enum  sctp_endpoint_type_t { SCTP_EP_TYPE_SOCKET, SCTP_EP_TYPE_ASSOCIATION }
 
enum  { SCTP_ASSOC_EYECATCHER = 0xa550c123 }
 

Functions

struct sctp_hashbucket __attribute__ ((__aligned__(8)))
 
struct sctp_ssnmapsctp_ssnmap_new (__u16 in, __u16 out, gfp_t gfp)
 
void sctp_ssnmap_free (struct sctp_ssnmap *map)
 
void sctp_ssnmap_clear (struct sctp_ssnmap *map)
 
struct sctp_afsctp_get_af_specific (sa_family_t)
 
int sctp_register_af (struct sctp_af *)
 
struct sctp_datamsgsctp_datamsg_from_user (struct sctp_association *, struct sctp_sndrcvinfo *, struct msghdr *, int len)
 
void sctp_datamsg_free (struct sctp_datamsg *)
 
void sctp_datamsg_put (struct sctp_datamsg *)
 
void sctp_chunk_fail (struct sctp_chunk *, int error)
 
int sctp_chunk_abandoned (struct sctp_chunk *)
 
void sctp_chunk_hold (struct sctp_chunk *)
 
void sctp_chunk_put (struct sctp_chunk *)
 
int sctp_user_addto_chunk (struct sctp_chunk *chunk, int off, int len, struct iovec *data)
 
void sctp_chunk_free (struct sctp_chunk *)
 
voidsctp_addto_chunk (struct sctp_chunk *, int len, const void *data)
 
voidsctp_addto_chunk_fixed (struct sctp_chunk *, int len, const void *data)
 
struct sctp_chunksctp_chunkify (struct sk_buff *, const struct sctp_association *, struct sock *)
 
void sctp_init_addrs (struct sctp_chunk *, union sctp_addr *, union sctp_addr *)
 
union sctp_addrsctp_source (const struct sctp_chunk *chunk)
 
struct sctp_packetsctp_packet_init (struct sctp_packet *, struct sctp_transport *, __u16 sport, __u16 dport)
 
struct sctp_packetsctp_packet_config (struct sctp_packet *, __u32 vtag, int)
 
sctp_xmit_t sctp_packet_transmit_chunk (struct sctp_packet *, struct sctp_chunk *, int)
 
sctp_xmit_t sctp_packet_append_chunk (struct sctp_packet *, struct sctp_chunk *)
 
int sctp_packet_transmit (struct sctp_packet *)
 
void sctp_packet_free (struct sctp_packet *)
 
struct sctp_transportsctp_transport_new (struct net *, const union sctp_addr *, gfp_t)
 
void sctp_transport_set_owner (struct sctp_transport *, struct sctp_association *)
 
void sctp_transport_route (struct sctp_transport *, union sctp_addr *, struct sctp_sock *)
 
void sctp_transport_pmtu (struct sctp_transport *, struct sock *sk)
 
void sctp_transport_free (struct sctp_transport *)
 
void sctp_transport_reset_timers (struct sctp_transport *)
 
void sctp_transport_hold (struct sctp_transport *)
 
void sctp_transport_put (struct sctp_transport *)
 
void sctp_transport_update_rto (struct sctp_transport *, __u32)
 
void sctp_transport_raise_cwnd (struct sctp_transport *, __u32, __u32)
 
void sctp_transport_lower_cwnd (struct sctp_transport *, sctp_lower_cwnd_t)
 
void sctp_transport_burst_limited (struct sctp_transport *)
 
void sctp_transport_burst_reset (struct sctp_transport *)
 
unsigned long sctp_transport_timeout (struct sctp_transport *)
 
void sctp_transport_reset (struct sctp_transport *)
 
void sctp_transport_update_pmtu (struct sock *, struct sctp_transport *, u32)
 
void sctp_transport_immediate_rtx (struct sctp_transport *)
 
void sctp_inq_init (struct sctp_inq *)
 
void sctp_inq_free (struct sctp_inq *)
 
void sctp_inq_push (struct sctp_inq *, struct sctp_chunk *packet)
 
struct sctp_chunksctp_inq_pop (struct sctp_inq *)
 
struct sctp_chunkhdrsctp_inq_peek (struct sctp_inq *)
 
void sctp_inq_set_th_handler (struct sctp_inq *, work_func_t)
 
void sctp_outq_init (struct sctp_association *, struct sctp_outq *)
 
void sctp_outq_teardown (struct sctp_outq *)
 
void sctp_outq_free (struct sctp_outq *)
 
int sctp_outq_tail (struct sctp_outq *, struct sctp_chunk *chunk)
 
int sctp_outq_sack (struct sctp_outq *, struct sctp_chunk *)
 
int sctp_outq_is_empty (const struct sctp_outq *)
 
void sctp_outq_restart (struct sctp_outq *)
 
void sctp_retransmit (struct sctp_outq *, struct sctp_transport *, sctp_retransmit_reason_t)
 
void sctp_retransmit_mark (struct sctp_outq *, struct sctp_transport *, __u8)
 
int sctp_outq_uncork (struct sctp_outq *)
 
void sctp_bind_addr_init (struct sctp_bind_addr *, __u16 port)
 
void sctp_bind_addr_free (struct sctp_bind_addr *)
 
int sctp_bind_addr_copy (struct net *net, struct sctp_bind_addr *dest, const struct sctp_bind_addr *src, sctp_scope_t scope, gfp_t gfp, int flags)
 
int sctp_bind_addr_dup (struct sctp_bind_addr *dest, const struct sctp_bind_addr *src, gfp_t gfp)
 
int sctp_add_bind_addr (struct sctp_bind_addr *, union sctp_addr *, __u8 addr_state, gfp_t gfp)
 
int sctp_del_bind_addr (struct sctp_bind_addr *, union sctp_addr *)
 
int sctp_bind_addr_match (struct sctp_bind_addr *, const union sctp_addr *, struct sctp_sock *)
 
int sctp_bind_addr_conflict (struct sctp_bind_addr *, const union sctp_addr *, struct sctp_sock *, struct sctp_sock *)
 
int sctp_bind_addr_state (const struct sctp_bind_addr *bp, const union sctp_addr *addr)
 
union sctp_addrsctp_find_unmatch_addr (struct sctp_bind_addr *bp, const union sctp_addr *addrs, int addrcnt, struct sctp_sock *opt)
 
union sctp_params sctp_bind_addrs_to_raw (const struct sctp_bind_addr *bp, int *addrs_len, gfp_t gfp)
 
int sctp_raw_to_bind_addrs (struct sctp_bind_addr *bp, __u8 *raw, int len, __u16 port, gfp_t gfp)
 
sctp_scope_t sctp_scope (const union sctp_addr *)
 
int sctp_in_scope (struct net *net, const union sctp_addr *addr, const sctp_scope_t scope)
 
int sctp_is_any (struct sock *sk, const union sctp_addr *addr)
 
int sctp_addr_is_valid (const union sctp_addr *addr)
 
int sctp_is_ep_boundall (struct sock *sk)
 
struct sctp_endpointsctp_endpoint_new (struct sock *, gfp_t)
 
void sctp_endpoint_free (struct sctp_endpoint *)
 
void sctp_endpoint_put (struct sctp_endpoint *)
 
void sctp_endpoint_hold (struct sctp_endpoint *)
 
void sctp_endpoint_add_asoc (struct sctp_endpoint *, struct sctp_association *)
 
struct sctp_associationsctp_endpoint_lookup_assoc (const struct sctp_endpoint *ep, const union sctp_addr *paddr, struct sctp_transport **)
 
int sctp_endpoint_is_peeled_off (struct sctp_endpoint *, const union sctp_addr *)
 
struct sctp_endpointsctp_endpoint_is_match (struct sctp_endpoint *, struct net *, const union sctp_addr *)
 
int sctp_has_association (struct net *net, const union sctp_addr *laddr, const union sctp_addr *paddr)
 
int sctp_verify_init (struct net *net, const struct sctp_association *asoc, sctp_cid_t, sctp_init_chunk_t *peer_init, struct sctp_chunk *chunk, struct sctp_chunk **err_chunk)
 
int sctp_process_init (struct sctp_association *, struct sctp_chunk *chunk, const union sctp_addr *peer, sctp_init_chunk_t *init, gfp_t gfp)
 
__u32 sctp_generate_tag (const struct sctp_endpoint *)
 
__u32 sctp_generate_tsn (const struct sctp_endpoint *)
 
struct sctp_associationsctp_association_new (const struct sctp_endpoint *, const struct sock *, sctp_scope_t scope, gfp_t gfp)
 
void sctp_association_free (struct sctp_association *)
 
void sctp_association_put (struct sctp_association *)
 
void sctp_association_hold (struct sctp_association *)
 
struct sctp_transportsctp_assoc_choose_alter_transport (struct sctp_association *, struct sctp_transport *)
 
void sctp_assoc_update_retran_path (struct sctp_association *)
 
struct sctp_transportsctp_assoc_lookup_paddr (const struct sctp_association *, const union sctp_addr *)
 
int sctp_assoc_lookup_laddr (struct sctp_association *asoc, const union sctp_addr *laddr)
 
struct sctp_transportsctp_assoc_add_peer (struct sctp_association *, const union sctp_addr *address, const gfp_t gfp, const int peer_state)
 
void sctp_assoc_del_peer (struct sctp_association *asoc, const union sctp_addr *addr)
 
void sctp_assoc_rm_peer (struct sctp_association *asoc, struct sctp_transport *peer)
 
void sctp_assoc_control_transport (struct sctp_association *, struct sctp_transport *, sctp_transport_cmd_t, sctp_sn_error_t)
 
struct sctp_transportsctp_assoc_lookup_tsn (struct sctp_association *, __u32)
 
struct sctp_transportsctp_assoc_is_match (struct sctp_association *, struct net *, const union sctp_addr *, const union sctp_addr *)
 
void sctp_assoc_migrate (struct sctp_association *, struct sock *)
 
void sctp_assoc_update (struct sctp_association *old, struct sctp_association *new)
 
__u32 sctp_association_get_next_tsn (struct sctp_association *)
 
void sctp_assoc_sync_pmtu (struct sock *, struct sctp_association *)
 
void sctp_assoc_rwnd_increase (struct sctp_association *, unsigned int)
 
void sctp_assoc_rwnd_decrease (struct sctp_association *, unsigned int)
 
void sctp_assoc_set_primary (struct sctp_association *, struct sctp_transport *)
 
void sctp_assoc_del_nonprimary_peers (struct sctp_association *, struct sctp_transport *)
 
int sctp_assoc_set_bind_addr_from_ep (struct sctp_association *, sctp_scope_t, gfp_t)
 
int sctp_assoc_set_bind_addr_from_cookie (struct sctp_association *, struct sctp_cookie *, gfp_t gfp)
 
int sctp_assoc_set_id (struct sctp_association *, gfp_t)
 
void sctp_assoc_clean_asconf_ack_cache (const struct sctp_association *asoc)
 
struct sctp_chunksctp_assoc_lookup_asconf_ack (const struct sctp_association *asoc, __be32 serial)
 
void sctp_asconf_queue_teardown (struct sctp_association *asoc)
 
int sctp_cmp_addr_exact (const union sctp_addr *ss1, const union sctp_addr *ss2)
 
struct sctp_chunksctp_get_ecne_prepend (struct sctp_association *asoc)
 

Variables

rwlock_t lock
 
struct hlist_head chain
 
struct sctp_globals sctp_globals
 
struct sctp_signed_cookie __packed
 

Macro Definition Documentation

#define sctp_address_families   (sctp_globals.address_families)

Definition at line 152 of file structs.h.

#define SCTP_ADDRESS_TICK_DELAY   500

Definition at line 683 of file structs.h.

#define sctp_assoc_hashsize   (sctp_globals.assoc_hashsize)

Definition at line 155 of file structs.h.

#define sctp_assoc_hashtable   (sctp_globals.assoc_hashtable)

Definition at line 156 of file structs.h.

#define SCTP_CAN_FRTX   0x0

Definition at line 636 of file structs.h.

#define sctp_checksum_disable   (sctp_globals.checksum_disable)

Definition at line 159 of file structs.h.

#define SCTP_DONT_FRTX   0x2

Definition at line 638 of file structs.h.

#define sctp_ep_hashsize   (sctp_globals.ep_hashsize)

Definition at line 153 of file structs.h.

#define sctp_ep_hashtable   (sctp_globals.ep_hashtable)

Definition at line 154 of file structs.h.

#define sctp_max_instreams   (sctp_globals.max_instreams)

Definition at line 150 of file structs.h.

#define sctp_max_outstreams   (sctp_globals.max_outstreams)

Definition at line 151 of file structs.h.

#define SCTP_NEED_FRTX   0x1

Definition at line 637 of file structs.h.

#define sctp_port_hashsize   (sctp_globals.port_hashsize)

Definition at line 157 of file structs.h.

#define sctp_port_hashtable   (sctp_globals.port_hashtable)

Definition at line 158 of file structs.h.

Typedef Documentation

typedef struct sctp_chunk*( sctp_packet_phandler_t)(struct sctp_association *)
read

Definition at line 685 of file structs.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
SCTP_ADDR_NEW 
SCTP_ADDR_SRC 
SCTP_ADDR_DEL 

Definition at line 668 of file structs.h.

anonymous enum
Enumerator:
SCTP_ASSOC_EYECATCHER 

Definition at line 1838 of file structs.h.

Enumerator:
SCTP_EP_TYPE_SOCKET 
SCTP_EP_TYPE_ASSOCIATION 

Definition at line 1142 of file structs.h.

Enumerator:
SCTP_SOCKET_UDP 
SCTP_SOCKET_UDP_HIGH_BANDWIDTH 
SCTP_SOCKET_TCP 

Definition at line 162 of file structs.h.

Function Documentation

struct sctp_hashbucket __attribute__ ( (__aligned__(8))  )
int sctp_add_bind_addr ( struct sctp_bind_addr ,
union sctp_addr ,
__u8  addr_state,
gfp_t  gfp 
)

Definition at line 166 of file bind_addr.c.

int sctp_addr_is_valid ( const union sctp_addr addr)
void* sctp_addto_chunk ( struct sctp_chunk ,
int  len,
const void data 
)

Definition at line 1419 of file sm_make_chunk.c.

void* sctp_addto_chunk_fixed ( struct sctp_chunk ,
int  len,
const void data 
)

Definition at line 1442 of file sm_make_chunk.c.

void sctp_asconf_queue_teardown ( struct sctp_association asoc)

Definition at line 1680 of file associola.c.

struct sctp_transport* sctp_assoc_add_peer ( struct sctp_association ,
const union sctp_addr address,
const gfp_t  gfp,
const int  peer_state 
)
read

Definition at line 640 of file associola.c.

struct sctp_transport* sctp_assoc_choose_alter_transport ( struct sctp_association ,
struct sctp_transport  
)
read

Definition at line 1372 of file associola.c.

void sctp_assoc_clean_asconf_ack_cache ( const struct sctp_association asoc)

Definition at line 1641 of file associola.c.

void sctp_assoc_control_transport ( struct sctp_association ,
struct sctp_transport ,
sctp_transport_cmd_t  ,
sctp_sn_error_t   
)

Definition at line 840 of file associola.c.

void sctp_assoc_del_nonprimary_peers ( struct sctp_association ,
struct sctp_transport  
)

Definition at line 822 of file associola.c.

void sctp_assoc_del_peer ( struct sctp_association asoc,
const union sctp_addr addr 
)

Definition at line 786 of file associola.c.

struct sctp_transport* sctp_assoc_is_match ( struct sctp_association ,
struct net ,
const union sctp_addr ,
const union sctp_addr  
)
read

Definition at line 1093 of file associola.c.

struct sctp_chunk* sctp_assoc_lookup_asconf_ack ( const struct sctp_association asoc,
__be32  serial 
)
read

Definition at line 1661 of file associola.c.

int sctp_assoc_lookup_laddr ( struct sctp_association asoc,
const union sctp_addr laddr 
)

Definition at line 1571 of file associola.c.

struct sctp_transport* sctp_assoc_lookup_paddr ( const struct sctp_association ,
const union sctp_addr  
)
read

Definition at line 804 of file associola.c.

struct sctp_transport* sctp_assoc_lookup_tsn ( struct sctp_association ,
__u32   
)
read

Definition at line 1037 of file associola.c.

void sctp_assoc_migrate ( struct sctp_association ,
struct sock  
)

Definition at line 1179 of file associola.c.

void sctp_assoc_rm_peer ( struct sctp_association asoc,
struct sctp_transport peer 
)

Definition at line 549 of file associola.c.

void sctp_assoc_rwnd_decrease ( struct sctp_association ,
unsigned  int 
)

Definition at line 1498 of file associola.c.

void sctp_assoc_rwnd_increase ( struct sctp_association ,
unsigned  int 
)

Definition at line 1441 of file associola.c.

int sctp_assoc_set_bind_addr_from_cookie ( struct sctp_association ,
struct sctp_cookie ,
gfp_t  gfp 
)

Definition at line 1558 of file associola.c.

int sctp_assoc_set_bind_addr_from_ep ( struct sctp_association ,
sctp_scope_t  ,
gfp_t   
)

Definition at line 1537 of file associola.c.

int sctp_assoc_set_id ( struct sctp_association ,
gfp_t   
)

Definition at line 1585 of file associola.c.

void sctp_assoc_set_primary ( struct sctp_association ,
struct sctp_transport  
)

Definition at line 492 of file associola.c.

void sctp_assoc_sync_pmtu ( struct sock ,
struct sctp_association  
)

Definition at line 1391 of file associola.c.

void sctp_assoc_update ( struct sctp_association old,
struct sctp_association new 
)

Definition at line 1210 of file associola.c.

void sctp_assoc_update_retran_path ( struct sctp_association )

Definition at line 1312 of file associola.c.

void sctp_association_free ( struct sctp_association )

Definition at line 386 of file associola.c.

__u32 sctp_association_get_next_tsn ( struct sctp_association )

Definition at line 986 of file associola.c.

void sctp_association_hold ( struct sctp_association )

Definition at line 969 of file associola.c.

struct sctp_association* sctp_association_new ( const struct sctp_endpoint ,
const struct sock ,
sctp_scope_t  scope,
gfp_t  gfp 
)
read

Definition at line 357 of file associola.c.

void sctp_association_put ( struct sctp_association )

Definition at line 977 of file associola.c.

int sctp_bind_addr_conflict ( struct sctp_bind_addr ,
const union sctp_addr ,
struct sctp_sock ,
struct sctp_sock  
)

Definition at line 352 of file bind_addr.c.

int sctp_bind_addr_copy ( struct net net,
struct sctp_bind_addr dest,
const struct sctp_bind_addr src,
sctp_scope_t  scope,
gfp_t  gfp,
int  flags 
)

Definition at line 65 of file bind_addr.c.

int sctp_bind_addr_dup ( struct sctp_bind_addr dest,
const struct sctp_bind_addr src,
gfp_t  gfp 
)

Definition at line 110 of file bind_addr.c.

void sctp_bind_addr_free ( struct sctp_bind_addr )

Definition at line 154 of file bind_addr.c.

void sctp_bind_addr_init ( struct sctp_bind_addr ,
__u16  port 
)

Definition at line 132 of file bind_addr.c.

int sctp_bind_addr_match ( struct sctp_bind_addr ,
const union sctp_addr ,
struct sctp_sock  
)

Definition at line 328 of file bind_addr.c.

int sctp_bind_addr_state ( const struct sctp_bind_addr bp,
const union sctp_addr addr 
)

Definition at line 387 of file bind_addr.c.

union sctp_params sctp_bind_addrs_to_raw ( const struct sctp_bind_addr bp,
int addrs_len,
gfp_t  gfp 
)
write

Definition at line 233 of file bind_addr.c.

int sctp_chunk_abandoned ( struct sctp_chunk )

Definition at line 354 of file chunk.c.

void sctp_chunk_fail ( struct sctp_chunk ,
int  error 
)

Definition at line 368 of file chunk.c.

void sctp_chunk_free ( struct sctp_chunk )

Definition at line 1394 of file sm_make_chunk.c.

void sctp_chunk_hold ( struct sctp_chunk )

Definition at line 1404 of file sm_make_chunk.c.

void sctp_chunk_put ( struct sctp_chunk )

Definition at line 1410 of file sm_make_chunk.c.

struct sctp_chunk* sctp_chunkify ( struct sk_buff ,
const struct sctp_association ,
struct sock  
)
read

Definition at line 1261 of file sm_make_chunk.c.

int sctp_cmp_addr_exact ( const union sctp_addr ss1,
const union sctp_addr ss2 
)

Definition at line 1003 of file associola.c.

void sctp_datamsg_free ( struct sctp_datamsg )

Definition at line 80 of file chunk.c.

struct sctp_datamsg* sctp_datamsg_from_user ( struct sctp_association ,
struct sctp_sndrcvinfo ,
struct msghdr ,
int  len 
)
read

Definition at line 172 of file chunk.c.

void sctp_datamsg_put ( struct sctp_datamsg )

Definition at line 151 of file chunk.c.

int sctp_del_bind_addr ( struct sctp_bind_addr ,
union sctp_addr  
)

Definition at line 201 of file bind_addr.c.

void sctp_endpoint_add_asoc ( struct sctp_endpoint ,
struct sctp_association  
)

Definition at line 214 of file endpointola.c.

void sctp_endpoint_free ( struct sctp_endpoint )

Definition at line 237 of file endpointola.c.

void sctp_endpoint_hold ( struct sctp_endpoint )

Definition at line 290 of file endpointola.c.

struct sctp_endpoint* sctp_endpoint_is_match ( struct sctp_endpoint ,
struct net ,
const union sctp_addr  
)
read

Definition at line 305 of file endpointola.c.

int sctp_endpoint_is_peeled_off ( struct sctp_endpoint ,
const union sctp_addr  
)

Definition at line 388 of file endpointola.c.

struct sctp_association* sctp_endpoint_lookup_assoc ( const struct sctp_endpoint ep,
const union sctp_addr paddr,
struct sctp_transport **   
)
read

Definition at line 371 of file endpointola.c.

struct sctp_endpoint* sctp_endpoint_new ( struct sock ,
gfp_t   
)
read

Definition at line 193 of file endpointola.c.

void sctp_endpoint_put ( struct sctp_endpoint )

Definition at line 298 of file endpointola.c.

union sctp_addr* sctp_find_unmatch_addr ( struct sctp_bind_addr bp,
const union sctp_addr addrs,
int  addrcnt,
struct sctp_sock opt 
)
write

Definition at line 415 of file bind_addr.c.

__u32 sctp_generate_tag ( const struct sctp_endpoint )

Definition at line 2676 of file sm_make_chunk.c.

__u32 sctp_generate_tsn ( const struct sctp_endpoint )

Definition at line 2691 of file sm_make_chunk.c.

struct sctp_af* sctp_get_af_specific ( sa_family_t  )
read

Definition at line 845 of file protocol.c.

struct sctp_chunk* sctp_get_ecne_prepend ( struct sctp_association asoc)
read

Definition at line 1019 of file associola.c.

int sctp_has_association ( struct net net,
const union sctp_addr laddr,
const union sctp_addr paddr 
)

Definition at line 925 of file input.c.

int sctp_in_scope ( struct net net,
const union sctp_addr addr,
const sctp_scope_t  scope 
)

Definition at line 497 of file bind_addr.c.

void sctp_init_addrs ( struct sctp_chunk ,
union sctp_addr ,
union sctp_addr  
)

Definition at line 1314 of file sm_make_chunk.c.

void sctp_inq_free ( struct sctp_inq )

Definition at line 66 of file inqueue.c.

void sctp_inq_init ( struct sctp_inq )

Definition at line 54 of file inqueue.c.

struct sctp_chunkhdr* sctp_inq_peek ( struct sctp_inq )
read

Definition at line 111 of file inqueue.c.

struct sctp_chunk* sctp_inq_pop ( struct sctp_inq )
read

Definition at line 134 of file inqueue.c.

void sctp_inq_push ( struct sctp_inq ,
struct sctp_chunk packet 
)

Definition at line 93 of file inqueue.c.

void sctp_inq_set_th_handler ( struct sctp_inq ,
work_func_t   
)

Definition at line 242 of file inqueue.c.

int sctp_is_any ( struct sock sk,
const union sctp_addr addr 
)

Definition at line 478 of file bind_addr.c.

int sctp_is_ep_boundall ( struct sock sk)

Definition at line 537 of file bind_addr.c.

void sctp_outq_free ( struct sctp_outq )

Definition at line 290 of file outqueue.c.

void sctp_outq_init ( struct sctp_association ,
struct sctp_outq  
)

Definition at line 207 of file outqueue.c.

int sctp_outq_is_empty ( const struct sctp_outq )

Definition at line 1310 of file outqueue.c.

void sctp_outq_restart ( struct sctp_outq )
int sctp_outq_sack ( struct sctp_outq ,
struct sctp_chunk  
)

Definition at line 1143 of file outqueue.c.

int sctp_outq_tail ( struct sctp_outq ,
struct sctp_chunk chunk 
)

Definition at line 301 of file outqueue.c.

void sctp_outq_teardown ( struct sctp_outq )

Definition at line 227 of file outqueue.c.

int sctp_outq_uncork ( struct sctp_outq )

Definition at line 703 of file outqueue.c.

sctp_xmit_t sctp_packet_append_chunk ( struct sctp_packet ,
struct sctp_chunk  
)

Definition at line 333 of file output.c.

struct sctp_packet* sctp_packet_config ( struct sctp_packet ,
__u32  vtag,
int   
)
read

Definition at line 91 of file output.c.

void sctp_packet_free ( struct sctp_packet )

Definition at line 144 of file output.c.

struct sctp_packet* sctp_packet_init ( struct sctp_packet ,
struct sctp_transport ,
__u16  sport,
__u16  dport 
)
read

Definition at line 115 of file output.c.

int sctp_packet_transmit ( struct sctp_packet )

6.10 Bundling

An endpoint bundles chunks by simply including multiple chunks in one outbound SCTP packet. ...

3.2 Chunk Field Descriptions

The total length of a chunk (including Type, Length and Value fields) MUST be a multiple of 4 bytes. If the length of the chunk is not a multiple of 4 bytes, the sender MUST pad the chunk with all zero bytes and this padding is not included in the chunk length field. The sender should never pad with more than 3 bytes.

[This whole comment explains WORD_ROUND() below.]

Definition at line 391 of file output.c.

sctp_xmit_t sctp_packet_transmit_chunk ( struct sctp_packet ,
struct sctp_chunk ,
int   
)

Definition at line 166 of file output.c.

int sctp_process_init ( struct sctp_association ,
struct sctp_chunk chunk,
const union sctp_addr peer,
sctp_init_chunk_t init,
gfp_t  gfp 
)

Definition at line 2272 of file sm_make_chunk.c.

int sctp_raw_to_bind_addrs ( struct sctp_bind_addr bp,
__u8 raw,
int  len,
__u16  port,
gfp_t  gfp 
)

Definition at line 285 of file bind_addr.c.

int sctp_register_af ( struct sctp_af )

Definition at line 820 of file protocol.c.

void sctp_retransmit ( struct sctp_outq ,
struct sctp_transport ,
sctp_retransmit_reason_t   
)

Definition at line 480 of file outqueue.c.

void sctp_retransmit_mark ( struct sctp_outq ,
struct sctp_transport ,
__u8   
)

Definition at line 389 of file outqueue.c.

sctp_scope_t sctp_scope ( const union sctp_addr )

Definition at line 557 of file bind_addr.c.

union sctp_addr* sctp_source ( const struct sctp_chunk chunk)
write

Definition at line 1322 of file sm_make_chunk.c.

void sctp_ssnmap_clear ( struct sctp_ssnmap map)

Definition at line 112 of file ssnmap.c.

void sctp_ssnmap_free ( struct sctp_ssnmap map)

Definition at line 121 of file ssnmap.c.

struct sctp_ssnmap* sctp_ssnmap_new ( __u16  in,
__u16  out,
gfp_t  gfp 
)
read

Definition at line 61 of file ssnmap.c.

void sctp_transport_burst_limited ( struct sctp_transport )

Definition at line 570 of file transport.c.

void sctp_transport_burst_reset ( struct sctp_transport )

Definition at line 589 of file transport.c.

void sctp_transport_free ( struct sctp_transport )

Definition at line 141 of file transport.c.

void sctp_transport_hold ( struct sctp_transport )

Definition at line 297 of file transport.c.

void sctp_transport_immediate_rtx ( struct sctp_transport )

Definition at line 644 of file transport.c.

void sctp_transport_lower_cwnd ( struct sctp_transport ,
sctp_lower_cwnd_t   
)

Definition at line 470 of file transport.c.

struct sctp_transport* sctp_transport_new ( struct net ,
const union sctp_addr ,
gfp_t   
)
read

Definition at line 113 of file transport.c.

void sctp_transport_pmtu ( struct sctp_transport ,
struct sock sk 
)

Definition at line 219 of file transport.c.

void sctp_transport_put ( struct sctp_transport )

Definition at line 305 of file transport.c.

void sctp_transport_raise_cwnd ( struct sctp_transport ,
__u32  ,
__u32   
)

Definition at line 381 of file transport.c.

void sctp_transport_reset ( struct sctp_transport )

Definition at line 610 of file transport.c.

void sctp_transport_reset_timers ( struct sctp_transport )

Definition at line 186 of file transport.c.

void sctp_transport_route ( struct sctp_transport ,
union sctp_addr ,
struct sctp_sock  
)

Definition at line 266 of file transport.c.

void sctp_transport_set_owner ( struct sctp_transport ,
struct sctp_association  
)

Definition at line 211 of file transport.c.

unsigned long sctp_transport_timeout ( struct sctp_transport )

Definition at line 598 of file transport.c.

void sctp_transport_update_pmtu ( struct sock ,
struct sctp_transport ,
u32   
)

Definition at line 234 of file transport.c.

void sctp_transport_update_rto ( struct sctp_transport ,
__u32   
)

Definition at line 312 of file transport.c.

int sctp_user_addto_chunk ( struct sctp_chunk chunk,
int  off,
int  len,
struct iovec data 
)

Definition at line 1455 of file sm_make_chunk.c.

int sctp_verify_init ( struct net net,
const struct sctp_association asoc,
sctp_cid_t  ,
sctp_init_chunk_t peer_init,
struct sctp_chunk chunk,
struct sctp_chunk **  err_chunk 
)

Definition at line 2204 of file sm_make_chunk.c.

Variable Documentation

Definition at line 119 of file structs.h.

rwlock_t lock

Definition at line 118 of file structs.h.