1 /**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 **************************************************************************** 11 ****************************************************************************/ 12 #ifndef _IPT_HASHLIMIT_H 13 #define _IPT_HASHLIMIT_H 14 15 #define IPT_HASHLIMIT_SCALE 10000 16 17 struct ipt_hashlimit_htable; 18 19 #define IPT_HASHLIMIT_HASH_DIP 0x0001 20 #define IPT_HASHLIMIT_HASH_DPT 0x0002 21 #define IPT_HASHLIMIT_HASH_SIP 0x0004 22 #define IPT_HASHLIMIT_HASH_SPT 0x0008 23 24 struct hashlimit_cfg { 25 u_int32_t mode; 26 u_int32_t avg; 27 u_int32_t burst; 28 29 u_int32_t size; 30 u_int32_t max; 31 u_int32_t gc_interval; 32 u_int32_t expire; 33 }; 34 35 struct ipt_hashlimit_info { 36 char name [IFNAMSIZ]; 37 struct hashlimit_cfg cfg; 38 struct ipt_hashlimit_htable *hinfo; 39 40 union { 41 void *ptr; 42 struct ipt_hashlimit_info *master; 43 } u; 44 }; 45 #endif 46