summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDavid S. Miller <davem@nuts.ninka.net>2002-10-04 14:15:41 -0700
committerDavid S. Miller <davem@nuts.ninka.net>2002-10-04 14:15:41 -0700
commit8280687b7b5453ea99ab0b0b10069ff16e6b6daf (patch)
treec28b314bbdc34fbf923587649598f76fee743d04 /include
parenteff95566d740e14a3b50ac698d567191bc433993 (diff)
parent9aecd91819797f9114b44c7b8ca0b8a1f4bc288d (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.h1
-rw-r--r--include/linux/sctp.h17
-rw-r--r--include/net/sctp/sctp.h8
-rw-r--r--include/net/sctp/sm.h11
-rw-r--r--include/net/sctp/structs.h14
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);