From 1da399c30a2c42490f1c6cb84857e31522546c9d Mon Sep 17 00:00:00 2001 From: Martin Josefsson Date: Wed, 26 May 2004 15:50:57 +0000 Subject: Fix 64bit kernel / 32bit userspace issue. --- include/linux/netfilter_ipv6/ip6t_limit.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 include/linux/netfilter_ipv6/ip6t_limit.h (limited to 'include/linux/netfilter_ipv6') diff --git a/include/linux/netfilter_ipv6/ip6t_limit.h b/include/linux/netfilter_ipv6/ip6t_limit.h new file mode 100644 index 00000000..cd3e8347 --- /dev/null +++ b/include/linux/netfilter_ipv6/ip6t_limit.h @@ -0,0 +1,25 @@ +#ifndef _IP6T_RATE_H +#define _IP6T_RATE_H + +/* timings are in milliseconds. */ +#define IP6T_LIMIT_SCALE 10000 + +/* 1/10,000 sec period => max of 10,000/sec. Min rate is then 429490 + seconds, or one every 59 hours. */ +struct ip6t_rateinfo { + u_int32_t avg; /* Average secs between packets * scale */ + u_int32_t burst; /* Period multiplier for upper limit. */ + +#ifdef KERNEL_64_USERSPACE_32 + u_int64_t prev; + u_int64_t placeholder; +#else + /* Used internally by the kernel */ + unsigned long prev; + /* Ugly, ugly fucker. */ + struct ip6t_rateinfo *master; +#endif + u_int32_t credit; + u_int32_t credit_cap, cost; +}; +#endif /*_IPT_RATE_H*/ -- cgit v1.2.3