/* * netsniff-ng - the packet sniffing beast * Copyright 2009, 2010 Daniel Borkmann. * Subject to the GPL, version 2. */ #ifndef RX_RING_H #define RX_RING_H #include #include "ring.h" extern void ring_rx_setup(struct ring *ring, int sock, size_t size, int ifindex, struct pollfd *poll, bool v3, bool jumbo_support, bool verbose, uint32_t fanout_group, uint32_t fanout_type); extern void destroy_rx_ring(int sock, struct ring *ring); extern int get_rx_net_stats(int sock, uint64_t *packets, uint64_t *drops, bool v3); static inline int user_may_pull_from_rx(struct tpacket2_hdr *hdr) { return ((hdr->tp_status & TP_STATUS_USER) == TP_STATUS_USER); } static inline void kernel_may_pull_from_rx(struct tpacket2_hdr *hdr) { hdr->tp_status = TP_STATUS_KERNEL; } #ifdef HAVE_TPACKET3 static inline int user_may_pull_from_rx_block(struct block_desc *pbd) { return ((pbd->h1.block_status & TP_STATUS_USER) == TP_STATUS_USER); } static inline void kernel_may_pull_from_rx_block(struct block_desc *pbd) { pbd->h1.block_status = TP_STATUS_KERNEL; } #endif /* HAVE_TPACKET3 */ /* Fanout types. */ #ifndef PACKET_FANOUT_HASH # define PACKET_FANOUT_HASH 0 #endif #ifndef PACKET_FANOUT_LB # define PACKET_FANOUT_LB 1 #endif #ifndef PACKET_FANOUT_CPU # define PACKET_FANOUT_CPU 2 #endif #ifndef PACKET_FANOUT_ROLLOVER # define PACKET_FANOUT_ROLLOVER 3 #endif #ifndef PACKET_FANOUT_RND # define PACKET_FANOUT_RND 4 #endif #ifndef PACKET_FANOUT_QM # define PACKET_FANOUT_QM 5 #endif #ifndef PACKET_FANOUT_FLAG_ROLLOVER # define PACKET_FANOUT_FLAG_ROLLOVER 0x1000 #endif #ifndef PACKET_FANOUT_FLAG_DEFRAG # define PACKET_FANOUT_FLAG_DEFRAG 0x8000 #endif #endif /* RX_RING_H */ a85'>refslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2016-06-26 17:52:03 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2016-06-26 17:52:03 -0700
commit4c2e07c6a29e0129e975727b9f57eede813eea85 (patch)
tree2fad141a9352c0bd5430651fcc52087063fd5541 /Documentation
parent2ac9b9735b4d1924d7484e497c930ea013a29ac1 (diff)
Linux 4.7-rc5
Diffstat (limited to 'Documentation')