1 #ifndef _EBT_ULOG_H 2 #define _EBT_ULOG_H 3 4 #define EBT_ULOG_DEFAULT_NLGROUP 0 5 #define EBT_ULOG_DEFAULT_QTHRESHOLD 1 6 #define EBT_ULOG_MAXNLGROUPS 32 /* hardcoded netlink max */ 7 #define EBT_ULOG_PREFIX_LEN 32 8 #define EBT_ULOG_MAX_QLEN 50 9 #define EBT_ULOG_WATCHER "ulog" 10 #define EBT_ULOG_VERSION 1 11 12 struct ebt_ulog_info { 13 uint32_t nlgroup; 14 unsigned int cprange; 15 unsigned int qthreshold; 16 char prefix[EBT_ULOG_PREFIX_LEN]; 17 }; 18 19 typedef struct ebt_ulog_packet_msg { 20 int version; 21 char indev[IFNAMSIZ]; 22 char outdev[IFNAMSIZ]; 23 char physindev[IFNAMSIZ]; 24 char physoutdev[IFNAMSIZ]; 25 char prefix[EBT_ULOG_PREFIX_LEN]; 26 struct timeval stamp; 27 unsigned long mark; 28 unsigned int hook; 29 size_t data_len; 30 /* The complete packet, including Ethernet header and perhaps 31 * the VLAN header is appended */ 32 unsigned char data[0] __attribute__ 33 ((aligned (__alignof__(struct ebt_ulog_info)))); 34 } ebt_ulog_packet_msg_t; 35 36 #endif /* _EBT_ULOG_H */ 37