diff options
| author | David S. Miller <davem@nuts.ninka.net> | 2002-10-04 14:15:41 -0700 |
|---|---|---|
| committer | David S. Miller <davem@nuts.ninka.net> | 2002-10-04 14:15:41 -0700 |
| commit | 8280687b7b5453ea99ab0b0b10069ff16e6b6daf (patch) | |
| tree | c28b314bbdc34fbf923587649598f76fee743d04 /include | |
| parent | eff95566d740e14a3b50ac698d567191bc433993 (diff) | |
| parent | 9aecd91819797f9114b44c7b8ca0b8a1f4bc288d (diff) | |
Merge nuts.ninka.net:/home/davem/src/BK/network-2.5
into nuts.ninka.net:/home/davem/src/BK/net-2.5
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/netdevice.h | 1 | ||||
| -rw-r--r-- | include/linux/sctp.h | 17 | ||||
| -rw-r--r-- | include/net/sctp/sctp.h | 8 | ||||
| -rw-r--r-- | include/net/sctp/sm.h | 11 | ||||
| -rw-r--r-- | include/net/sctp/structs.h | 14 |
5 files changed, 41 insertions, 10 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 93b4d5f1e64d..f2c8daf526aa 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h @@ -587,7 +587,6 @@ static inline void dev_kfree_skb_any(struct sk_buff *skb) dev_kfree_skb(skb); } -extern void net_call_rx_atomic(void (*fn)(void)); #define HAVE_NETIF_RX 1 extern int netif_rx(struct sk_buff *skb); #define HAVE_NETIF_RECEIVE_SKB 1 diff --git a/include/linux/sctp.h b/include/linux/sctp.h index 77502f62b660..1d54c9488601 100644 --- a/include/linux/sctp.h +++ b/include/linux/sctp.h @@ -155,15 +155,15 @@ typedef struct sctp_paramhdr { typedef enum { /* RFC 2960 Section 3.3.5 */ - SCTP_PARAM_HEATBEAT_INFO = __constant_htons(1), + SCTP_PARAM_HEARTBEAT_INFO = __constant_htons(1), /* RFC 2960 Section 3.3.2.1 */ - SCTP_PARAM_IPV4_ADDRESS = __constant_htons(5), - SCTP_PARAM_IPV6_ADDRESS = __constant_htons(6), - SCTP_PARAM_STATE_COOKIE = __constant_htons(7), - SCTP_PARAM_UNRECOGNIZED_PARAMETERS = __constant_htons(8), - SCTP_PARAM_COOKIE_PRESERVATIVE = __constant_htons(9), - SCTP_PARAM_HOST_NAME_ADDRESS = __constant_htons(11), - SCTP_PARAM_SUPPORTED_ADDRESS_TYPES = __constant_htons(12), + SCTP_PARAM_IPV4_ADDRESS = __constant_htons(5), + SCTP_PARAM_IPV6_ADDRESS = __constant_htons(6), + SCTP_PARAM_STATE_COOKIE = __constant_htons(7), + SCTP_PARAM_UNRECOGNIZED_PARAMETERS = __constant_htons(8), + SCTP_PARAM_COOKIE_PRESERVATIVE = __constant_htons(9), + SCTP_PARAM_HOST_NAME_ADDRESS = __constant_htons(11), + SCTP_PARAM_SUPPORTED_ADDRESS_TYPES = __constant_htons(12), SCTP_PARAM_ECN_CAPABLE = __constant_htons(0x8000), /* Add-IP Extension. Section 3.2 */ @@ -190,6 +190,7 @@ typedef enum { SCTP_PARAM_ACTION_SKIP_ERR = __constant_htons(0xc000), } sctp_param_action_t; +enum { SCTP_PARAM_ACTION_MASK = __constant_htons(0xc000), }; /* RFC 2960 Section 3.3.1 Payload Data (DATA) (0) */ diff --git a/include/net/sctp/sctp.h b/include/net/sctp/sctp.h index d45cdd15f939..56de3338ade2 100644 --- a/include/net/sctp/sctp.h +++ b/include/net/sctp/sctp.h @@ -103,6 +103,14 @@ #define SCTP_PROTOSW_FLAG INET_PROTOSW_PERMANENT #endif + +/* Certain internal static functions need to be exported when + * compiled into the test frame. + */ +#ifndef SCTP_STATIC +#define SCTP_STATIC static +#endif + /* * Function declarations. */ diff --git a/include/net/sctp/sm.h b/include/net/sctp/sm.h index 5cb4858fac34..9459322a411b 100644 --- a/include/net/sctp/sm.h +++ b/include/net/sctp/sm.h @@ -215,7 +215,8 @@ sctp_chunk_t *sctp_make_init(const sctp_association_t *, int priority); sctp_chunk_t *sctp_make_init_ack(const sctp_association_t *, const sctp_chunk_t *, - const int priority); + const int priority, + const int unkparam_len); sctp_chunk_t *sctp_make_cookie_echo(const sctp_association_t *, const sctp_chunk_t *); sctp_chunk_t *sctp_make_cookie_ack(const sctp_association_t *, @@ -304,6 +305,14 @@ void sctp_generate_t3_rtx_event(unsigned long peer); void sctp_generate_heartbeat_event(unsigned long peer); sctp_sackhdr_t *sctp_sm_pull_sack(sctp_chunk_t *); +sctp_packet_t *sctp_abort_pkt_new(const sctp_endpoint_t *ep, + const sctp_association_t *asoc, + sctp_chunk_t *chunk, + const void *payload, + size_t paylen); +sctp_packet_t *sctp_ootb_pkt_new(const sctp_association_t *asoc, + const sctp_chunk_t *chunk); +void sctp_ootb_pkt_free(sctp_packet_t *packet); sctp_cookie_param_t * sctp_pack_cookie(const sctp_endpoint_t *, const sctp_association_t *, diff --git a/include/net/sctp/structs.h b/include/net/sctp/structs.h index a405d9b517d8..d1748a73e6b0 100644 --- a/include/net/sctp/structs.h +++ b/include/net/sctp/structs.h @@ -1044,6 +1044,20 @@ sctp_association_t *sctp_endpoint_lookup_assoc(const sctp_endpoint_t *ep, sctp_endpoint_t *sctp_endpoint_is_match(sctp_endpoint_t *, const sockaddr_storage_t *); +int sctp_verify_init(const sctp_association_t *asoc, + sctp_cid_t cid, + sctp_init_chunk_t *peer_init, + sctp_chunk_t *chunk, + sctp_chunk_t **err_chunk); +int sctp_verify_param(const sctp_association_t *asoc, + sctpParam_t param, + sctp_cid_t cid, + sctp_chunk_t *chunk, + sctp_chunk_t **err_chunk); +int sctp_process_unk_param(const sctp_association_t *asoc, + sctpParam_t param, + sctp_chunk_t *chunk, + sctp_chunk_t **err_chunk); void sctp_process_init(sctp_association_t *asoc, sctp_cid_t cid, const sockaddr_storage_t *peer_addr, sctp_init_chunk_t *peer_init, int priority); |
