-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Patrick McHardy
authored and
David S. Miller
committed
Dec 3, 2006
1 parent
603b0fe
commit 4038542
Showing
9 changed files
with
340 additions
and
286 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,2 @@ | ||
--- | ||
refs/heads/master: d7a5c32442ed3d528b9ddfd3d5b837bad0ffa9da | ||
refs/heads/master: 39b46fc6f0d1161a5585cd8af7b3a05e8118ab7e |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
#ifndef _XT_HASHLIMIT_H | ||
#define _XT_HASHLIMIT_H | ||
|
||
/* timings are in milliseconds. */ | ||
#define XT_HASHLIMIT_SCALE 10000 | ||
/* 1/10,000 sec period => max of 10,000/sec. Min rate is then 429490 | ||
seconds, or one every 59 hours. */ | ||
|
||
/* details of this structure hidden by the implementation */ | ||
struct xt_hashlimit_htable; | ||
|
||
#define XT_HASHLIMIT_HASH_DIP 0x0001 | ||
#define XT_HASHLIMIT_HASH_DPT 0x0002 | ||
#define XT_HASHLIMIT_HASH_SIP 0x0004 | ||
#define XT_HASHLIMIT_HASH_SPT 0x0008 | ||
|
||
struct hashlimit_cfg { | ||
u_int32_t mode; /* bitmask of IPT_HASHLIMIT_HASH_* */ | ||
u_int32_t avg; /* Average secs between packets * scale */ | ||
u_int32_t burst; /* Period multiplier for upper limit. */ | ||
|
||
/* user specified */ | ||
u_int32_t size; /* how many buckets */ | ||
u_int32_t max; /* max number of entries */ | ||
u_int32_t gc_interval; /* gc interval */ | ||
u_int32_t expire; /* when do entries expire? */ | ||
}; | ||
|
||
struct xt_hashlimit_info { | ||
char name [IFNAMSIZ]; /* name */ | ||
struct hashlimit_cfg cfg; | ||
struct xt_hashlimit_htable *hinfo; | ||
|
||
/* Used internally by the kernel */ | ||
union { | ||
void *ptr; | ||
struct xt_hashlimit_info *master; | ||
} u; | ||
}; | ||
#endif /*_XT_HASHLIMIT_H*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,40 +1,14 @@ | ||
#ifndef _IPT_HASHLIMIT_H | ||
#define _IPT_HASHLIMIT_H | ||
|
||
/* timings are in milliseconds. */ | ||
#define IPT_HASHLIMIT_SCALE 10000 | ||
/* 1/10,000 sec period => max of 10,000/sec. Min rate is then 429490 | ||
seconds, or one every 59 hours. */ | ||
#include <linux/netfilter/xt_hashlimit.h> | ||
|
||
/* details of this structure hidden by the implementation */ | ||
struct ipt_hashlimit_htable; | ||
#define IPT_HASHLIMIT_SCALE XT_HASHLIMIT_SCALE | ||
#define IPT_HASHLIMIT_HASH_DIP XT_HASHLIMIT_HASH_DIP | ||
#define IPT_HASHLIMIT_HASH_DPT XT_HASHLIMIT_HASH_DPT | ||
#define IPT_HASHLIMIT_HASH_SIP XT_HASHLIMIT_HASH_SIP | ||
#define IPT_HASHLIMIT_HASH_SPT XT_HASHLIMIT_HASH_SPT | ||
|
||
#define IPT_HASHLIMIT_HASH_DIP 0x0001 | ||
#define IPT_HASHLIMIT_HASH_DPT 0x0002 | ||
#define IPT_HASHLIMIT_HASH_SIP 0x0004 | ||
#define IPT_HASHLIMIT_HASH_SPT 0x0008 | ||
#define ipt_hashlimit_info xt_hashlimit_info | ||
|
||
struct hashlimit_cfg { | ||
u_int32_t mode; /* bitmask of IPT_HASHLIMIT_HASH_* */ | ||
u_int32_t avg; /* Average secs between packets * scale */ | ||
u_int32_t burst; /* Period multiplier for upper limit. */ | ||
|
||
/* user specified */ | ||
u_int32_t size; /* how many buckets */ | ||
u_int32_t max; /* max number of entries */ | ||
u_int32_t gc_interval; /* gc interval */ | ||
u_int32_t expire; /* when do entries expire? */ | ||
}; | ||
|
||
struct ipt_hashlimit_info { | ||
char name [IFNAMSIZ]; /* name */ | ||
struct hashlimit_cfg cfg; | ||
struct ipt_hashlimit_htable *hinfo; | ||
|
||
/* Used internally by the kernel */ | ||
union { | ||
void *ptr; | ||
struct ipt_hashlimit_info *master; | ||
} u; | ||
}; | ||
#endif /*_IPT_HASHLIMIT_H*/ | ||
#endif /* _IPT_HASHLIMIT_H */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.