111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/**************************************************************************** 211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** This header was automatically generated from a Linux kernel header 511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** of the same name, to make information necessary for userspace to 611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** call into the kernel available to libc. It contains only constants, 711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** structures, and macros generated from the original header, and thus, 811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** contains no copyrightable information. 911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 1111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ****************************************************************************/ 1211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef _XT_STATISTIC_H 1311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _XT_STATISTIC_H 1411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 1511cd02dfb91661c65134cac258cf5924270e9d2Dan Albertenum xt_statistic_mode { 1611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert XT_STATISTIC_MODE_RANDOM, 1711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert XT_STATISTIC_MODE_NTH, 1811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert __XT_STATISTIC_MODE_MAX 1911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 2011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define XT_STATISTIC_MODE_MAX (__XT_STATISTIC_MODE_MAX - 1) 2111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2211cd02dfb91661c65134cac258cf5924270e9d2Dan Albertenum xt_statistic_flags { 2311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert XT_STATISTIC_INVERT = 0x1, 2411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 2511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define XT_STATISTIC_MASK 0x1 2611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2711cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct xt_statistic_info { 2811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert u_int16_t mode; 2911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert u_int16_t flags; 3011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert union { 3111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct { 3211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert u_int32_t probability; 3311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } random; 3411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct { 3511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert u_int32_t every; 3611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert u_int32_t packet; 3711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert u_int32_t count; 3811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } nth; 3911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert } u; 4011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct xt_statistic_info *master __attribute__((aligned(8))); 4111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 4211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 44