summaryrefslogtreecommitdiff
path: root/device
diff options
context:
space:
mode:
authorMarin Ramesa <mpr@hi.t-com.hr>2013-12-09 23:57:40 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2013-12-10 00:54:18 +0100
commit8ae2160beab7e58c60265648b21b3c1754fe4989 (patch)
treebac18ca625cac791b4fecb61f708cf5204e941ef /device
parentf66e92d3627d28ec7f62ec9b6a57f36373b7209c (diff)
device/net_io.c: remove forward declarations
* device/net_io.c (bpf_hash, net_do_filter, bpf_do_filter, hash_ent_remove, net_free_dead_infp, net_free_dead_entp, bpf_validate, bpf_eq, net_add_q_info, bpf_match): Remove forward declarations. * device/net_io.h (net_rcv_port, net_hash_entry, net_hash_header): Declare forward. (bpf_hash, net_do_filter, bpf_do_filter, hash_ent_remove, net_free_dead_infp, net_free_dead_entp, bpf_validate, bpf_eq, net_add_q_info, bpf_match): Add prototypes.
Diffstat (limited to 'device')
-rw-r--r--device/net_io.c38
-rw-r--r--device/net_io.h58
2 files changed, 58 insertions, 38 deletions
diff --git a/device/net_io.c b/device/net_io.c
index ee475ef..b3ec292 100644
--- a/device/net_io.c
+++ b/device/net_io.c
@@ -305,13 +305,10 @@ typedef struct net_rcv_port *net_rcv_port_t;
struct kmem_cache net_rcv_cache; /* cache of net_rcv_port structs */
-
#define NET_HASH_SIZE 256
#define N_NET_HASH 4
#define N_NET_HASH_KEYS 4
-unsigned int bpf_hash (int, unsigned int *);
-
/*
* A single hash entry.
*/
@@ -351,7 +348,6 @@ decl_simple_lock_data(,net_hash_header_lock)
(elt) = (net_hash_entry_t) queue_next((queue_entry_t) (elt)); \
} while ((elt) != (head));
-
#define FILTER_ITERATE(if_port_list, fp, nextfp, chain) \
for ((fp) = (net_rcv_port_t) queue_first(if_port_list); \
!queue_end(if_port_list, (queue_entry_t)(fp)); \
@@ -365,40 +361,6 @@ decl_simple_lock_data(,net_hash_header_lock)
(dead) = (queue_entry_t)(entry_p); \
}
-extern boolean_t net_do_filter(); /* CSPF */
-extern int bpf_do_filter(); /* BPF */
-
-int hash_ent_remove (
- struct ifnet *ifp,
- net_hash_header_t hp,
- int used,
- net_hash_entry_t *head,
- net_hash_entry_t entp,
- queue_entry_t *dead_p);
-
-void net_free_dead_infp (queue_entry_t dead_infp);
-void net_free_dead_entp (queue_entry_t dead_entp);
-
-int bpf_validate(
- bpf_insn_t f,
- int bytes,
- bpf_insn_t *match);
-
-int bpf_eq (
- bpf_insn_t f1,
- bpf_insn_t f2,
- int bytes);
-
-int net_add_q_info (ipc_port_t rcv_port);
-
-int bpf_match (
- net_hash_header_t hash,
- int n_keys,
- unsigned int *keys,
- net_hash_entry_t **hash_headpp,
- net_hash_entry_t *entpp);
-
-
/*
* ethernet_priority:
*
diff --git a/device/net_io.h b/device/net_io.h
index cbf6845..0cdd712 100644
--- a/device/net_io.h
+++ b/device/net_io.h
@@ -46,6 +46,15 @@
#include <device/io_req.h>
#include <device/net_status.h>
+struct net_rcv_port;
+typedef struct net_rcv_port *net_rcv_port_t;
+
+struct net_hash_entry;
+typedef struct net_hash_entry *net_hash_entry_t;
+
+struct net_hash_header;
+typedef struct net_hash_header *net_hash_header_t;
+
/*
* A network packet is wrapped in a kernel message while in
* the kernel.
@@ -91,4 +100,53 @@ extern unsigned short int ntohs(unsigned short int);
extern unsigned int htonl(unsigned int);
extern unsigned short int htons(unsigned short int);
+unsigned int bpf_hash(int n, unsigned int *keys);
+
+extern boolean_t
+net_do_filter(
+ net_rcv_port_t infp,
+ char * data,
+ unsigned int data_count,
+ char * header); /* CSPF */
+
+extern int
+bpf_do_filter(
+ net_rcv_port_t infp,
+ char * p,
+ unsigned int wirelen,
+ char * header,
+ unsigned int hlen,
+ net_hash_entry_t **hash_headpp,
+ net_hash_entry_t *entpp); /* BPF */
+
+int hash_ent_remove(
+ struct ifnet *ifp,
+ net_hash_header_t hp,
+ int used,
+ net_hash_entry_t *head,
+ net_hash_entry_t entp,
+ queue_entry_t *dead_p);
+
+void net_free_dead_infp(queue_entry_t dead_infp);
+void net_free_dead_entp (queue_entry_t dead_entp);
+
+int bpf_validate(
+ bpf_insn_t f,
+ int bytes,
+ bpf_insn_t *match);
+
+int bpf_eq(
+ bpf_insn_t f1,
+ bpf_insn_t f2,
+ int bytes);
+
+int net_add_q_info(ipc_port_t rcv_port);
+
+int bpf_match (
+ net_hash_header_t hash,
+ int n_keys,
+ unsigned int *keys,
+ net_hash_entry_t **hash_headpp,
+ net_hash_entry_t *entpp);
+
#endif /* _DEVICE_NET_IO_H_ */