diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2012-05-14 13:14:14 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2012-08-06 14:49:55 +0200 |
commit | f40eabb01163f383e2471942da45f32361031e39 (patch) | |
tree | 1a27a16cac2e83bb6fada0db0a8e0deb1b68f5ac /include/libnetfilter_queue/pktbuff.h | |
parent | a0c885ae5a79457aa592cb70c27a7dee619762a4 (diff) |
add pkt_buff and protocol helper functions
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'include/libnetfilter_queue/pktbuff.h')
-rw-r--r-- | include/libnetfilter_queue/pktbuff.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/include/libnetfilter_queue/pktbuff.h b/include/libnetfilter_queue/pktbuff.h new file mode 100644 index 0000000..a0e7abf --- /dev/null +++ b/include/libnetfilter_queue/pktbuff.h @@ -0,0 +1,22 @@ +#ifndef _PKTBUFF_H_ +#define _PKTBUFF_H_ + +struct pkt_buff; + +struct pkt_buff *pktb_alloc(int family, void *data, size_t len, size_t extra); +void pktb_free(struct pkt_buff *pktb); + +uint8_t *pktb_data(struct pkt_buff *pktb); +uint32_t pktb_len(struct pkt_buff *pktb); + +void pktb_push(struct pkt_buff *pktb, unsigned int len); +void pktb_pull(struct pkt_buff *pktb, unsigned int len); +void pktb_put(struct pkt_buff *pktb, unsigned int len); +void pktb_trim(struct pkt_buff *pktb, unsigned int len); +unsigned int pktb_tailroom(struct pkt_buff *pktb); + +uint8_t *pktb_mac_header(struct pkt_buff *pktb); +uint8_t *pktb_network_header(struct pkt_buff *pktb); +uint8_t *pktb_transport_header(struct pkt_buff *pktb); + +#endif |