| /* |
| * |
| * (C) 2005-13 - ntop.org |
| * |
| * |
| * This program is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU Lesses General Public License as published by |
| * the Free Software Foundation; either version 2 of the License, or |
| * (at your option) any later version. |
| * |
| * |
| */ |
| |
| #ifndef _PFRING_MOD_DAG_H_ |
| #define _PFRING_MOD_DAG_H_ |
| |
| #include "pfring.h" |
| #include "dagapi.h" |
| #include <limits.h> |
| |
| /* #define PFRING_DAG_PARSE_PKT */ |
| |
| #define MAX_CARD_ERF_TYPES 255 |
| #define AVG_PACKET_SIZE 512 |
| |
| typedef struct { |
| char *device_name; |
| |
| int fd; |
| int stream_num; |
| |
| void *bottom; |
| void *top; |
| |
| uint64_t stats_recv; |
| uint64_t stats_drop; |
| |
| uint32_t maxwait_ms; |
| |
| uint32_t strip_crc; |
| } pfring_dag; |
| |
| int pfring_dag_open (pfring *ring); |
| void pfring_dag_close(pfring *ring); |
| int pfring_dag_stats(pfring *ring, pfring_stat *stats); |
| int pfring_dag_recv (pfring *ring, u_char** buffer, u_int buffer_len, struct pfring_pkthdr *hdr, u_int8_t wait_for_incoming_packet); |
| int pfring_dag_set_poll_watermark(pfring *ring, u_int16_t watermark); |
| int pfring_dag_set_poll_duration(pfring *ring, u_int duration); |
| int pfring_dag_poll(pfring *ring, u_int wait_duration); |
| int pfring_dag_set_direction(pfring *ring, packet_direction direction); |
| int pfring_dag_enable_ring(pfring *ring); |
| |
| #endif /* _PFRING_MOD_DAG_H_ */ |