]>
git.ipfire.org Git - thirdparty/xtables-addons.git/log
Jan Engelhardt [Mon, 7 Jul 2008 16:00:46 +0000 (18:00 +0200)]
Merge branch 'quota2'
Jan Engelhardt [Mon, 7 Jul 2008 15:56:20 +0000 (17:56 +0200)]
xt_quota2: minor fixes, merge into main config files
Jan Engelhardt [Mon, 7 Jul 2008 09:07:15 +0000 (11:07 +0200)]
ipset: fixup compile errors with 2.6.18.x and 2.6.20 warnings
Jan Engelhardt [Mon, 7 Jul 2008 08:36:35 +0000 (10:36 +0200)]
ipset: fixup compile warnings
And add a few const here and there.
Jan Engelhardt [Sun, 6 Jul 2008 23:19:10 +0000 (01:19 +0200)]
xt_quota2: support packet counting; add manpage
Jan Engelhardt [Sat, 7 Jun 2008 08:25:40 +0000 (10:25 +0200)]
build: properly recognize external Kbuild/Mbuild files
Jan Engelhardt [Mon, 9 Jun 2008 12:07:33 +0000 (14:07 +0200)]
xt_quota2: allow for multiple rules to share one counter
Jan Engelhardt [Sat, 7 Jun 2008 11:36:56 +0000 (13:36 +0200)]
Add xt_quota2
Support for inversion, upcounting, and changing the quota/counter
through sysfs.
Jan Engelhardt [Sat, 5 Jul 2008 17:41:23 +0000 (19:41 +0200)]
ipp2p: bump version to indicate this is newer than 0.8.2
Jan Engelhardt [Fri, 4 Jul 2008 17:08:10 +0000 (19:08 +0200)]
src: update netfilter.h to unifdef'ed variant
From Linux kernel,
c8942f1f0a7e2160ebf2e51ba89e50ee5895a1e7 .
Jan Engelhardt [Fri, 4 Jul 2008 16:28:47 +0000 (18:28 +0200)]
Import ipset-2.3.2a (userspace components)
Jan Engelhardt [Wed, 2 Jul 2008 14:35:07 +0000 (16:35 +0200)]
Import ipset-2.3.2 (kernel components)
Jan Engelhardt [Mon, 30 Jun 2008 21:45:36 +0000 (23:45 +0200)]
Import ipset-2.3.1a-
20080617
Jan Engelhardt [Mon, 30 Jun 2008 21:33:35 +0000 (23:33 +0200)]
Update README, .gitignore
Jan Engelhardt [Fri, 27 Jun 2008 20:56:42 +0000 (22:56 +0200)]
Update manpages of CHAOS, IPMARK
Thomas Jarosch [Fri, 13 Jun 2008 16:17:14 +0000 (16:17 +0000)]
ipt_ACCOUNT, iptables: (tomj) fix module load error caused by previous change
Thomas Jarosch [Fri, 13 Jun 2008 15:22:46 +0000 (15:22 +0000)]
ipt_ACCOUNT, iptables: (tomj) support for iptables 1.4.0 and 1.4.1
Thomas Jarosch [Thu, 29 May 2008 19:51:44 +0000 (19:51 +0000)]
ipt_ACCOUNT, iptables: (tomj) fix delete handling (#1379)
Thomas Jarosch [Thu, 29 May 2008 19:22:15 +0000 (19:22 +0000)]
ipt_ACCOUNT, iptables: (tomj) fix some pointer types (#1397)
Jan Engelhardt [Sat, 26 Apr 2008 10:51:37 +0000 (12:51 +0200)]
Xtables-addons 1.5.4.1
Jan Engelhardt [Fri, 25 Apr 2008 18:46:23 +0000 (20:46 +0200)]
Fix compilation error for 2.6.18-stable
The prototype of ip_route_me_harder changed in 2.6.18.5, so I think
Xtables-addons should account for it. This renders compilation on
anything below it impossible. (2.6.17 is not supported in general.)
Reinhard Pfau [Fri, 18 Apr 2008 09:28:40 +0000 (09:28 +0000)]
removed autogenerated files
Jan Engelhardt [Wed, 16 Apr 2008 19:35:02 +0000 (21:35 +0200)]
Update .gitignore
Jan Engelhardt [Tue, 15 Apr 2008 07:15:44 +0000 (09:15 +0200)]
configure.ac: AC_SUBST must be separate
Jan Engelhardt [Sat, 12 Apr 2008 03:56:44 +0000 (05:56 +0200)]
condition: use PF_UNSPEC in vtable
Jan Engelhardt [Wed, 9 Apr 2008 19:18:05 +0000 (21:18 +0200)]
Xtables-addons 1.5.4
Jan Engelhardt [Wed, 9 Apr 2008 18:41:08 +0000 (20:41 +0200)]
manpages: generate manpages
Jan Engelhardt [Wed, 9 Apr 2008 18:34:57 +0000 (20:34 +0200)]
manpages: remove diff markers from CHAOS,TARIPT
Jan Engelhardt [Wed, 9 Apr 2008 18:16:33 +0000 (20:16 +0200)]
compat: resolve missing tcp_hdr and udp_hdr for xt_ipp2p
Jan Engelhardt [Wed, 9 Apr 2008 18:06:17 +0000 (20:06 +0200)]
TEE: make skb writable before attempting checksum update
This also adds the compat function xtnu_skb_make_writable().
Jan Engelhardt [Wed, 9 Apr 2008 17:52:29 +0000 (19:52 +0200)]
condition: resolve typesize compiler warning
Fix warning: field precision should have type "int", but argument 2
has type "long unsigned int".
Jan Engelhardt [Wed, 9 Apr 2008 17:44:54 +0000 (19:44 +0200)]
Merge reworked "IPMARK" target
Jan Engelhardt [Wed, 9 Apr 2008 12:39:44 +0000 (14:39 +0200)]
IPMARK: redo ipmark_tg_parse()
- check for illegal inversion on flags
- use param_act() and strtonum() instead of open-coded checks
Jan Engelhardt [Wed, 9 Apr 2008 12:04:23 +0000 (14:04 +0200)]
IPMARK: style cleanup
Jan Engelhardt [Tue, 8 Apr 2008 18:00:40 +0000 (20:00 +0200)]
IPMARK: IPv6 support
Jan Engelhardt [Wed, 9 Apr 2008 12:44:53 +0000 (14:44 +0200)]
IPMARK: print --addr flag the usual way
Jan Engelhardt [Wed, 9 Apr 2008 12:44:24 +0000 (14:44 +0200)]
IPMARK: omit printing unset mask
Jan Engelhardt [Wed, 9 Apr 2008 17:21:20 +0000 (19:21 +0200)]
IPMARK: remove incorrect --and/--or check
It is perfectly valid for no --and-mask and also no --or-mask to
appear, in which case the IP(v4) address is taken as mark without
modification.
Jan Engelhardt [Tue, 8 Apr 2008 17:52:31 +0000 (19:52 +0200)]
IPMARK: misc cleanups
- order #include lists
- const annotations, removal of casts
- add ipt_IPMARK alias
- make symbol names distinct
Jan Engelhardt [Tue, 8 Apr 2008 17:23:07 +0000 (19:23 +0200)]
IPMARK: rebuild parameter structure (fixed-size types)
Rebuild the parameter structure to have fixed-size members only.
Jan Engelhardt [Wed, 2 Apr 2008 06:50:10 +0000 (08:50 +0200)]
IPMARK: import
20080304 code base
With truly minimal changes to make it compile.
Jan Engelhardt [Tue, 8 Apr 2008 18:34:19 +0000 (20:34 +0200)]
Merge reworked "ipp2p" match
Jan Engelhardt [Mon, 31 Mar 2008 22:27:58 +0000 (00:27 +0200)]
ipp2p: add missing MODULE_ALIAS(ipt_ipp2p)
Jan Engelhardt [Thu, 27 Mar 2008 08:53:41 +0000 (09:53 +0100)]
ipp2p: use c99 initializers in getopt structure
Jan Engelhardt [Thu, 27 Mar 2008 08:20:40 +0000 (09:20 +0100)]
ipp2p: use param_act() for parameter validation
Jan Engelhardt [Thu, 27 Mar 2008 07:21:49 +0000 (08:21 +0100)]
ipp2p: use OR in flag settings in libxt_ipp2p
Jan Engelhardt [Thu, 27 Mar 2008 07:15:59 +0000 (08:15 +0100)]
ipp2p: enable experimental data stream analyzers
(get rid of "function unused" warnings)
Jan Engelhardt [Wed, 26 Mar 2008 06:53:10 +0000 (07:53 +0100)]
ipp2p: internally simplify selecting protocol searches
Jan Engelhardt [Wed, 26 Mar 2008 06:15:03 +0000 (07:15 +0100)]
ipp2p: guard against potential unaligned access
get_u16() and get_u32() may get passed unaligned pointers;
let's play it safe.
Jan Engelhardt [Wed, 26 Mar 2008 06:13:16 +0000 (07:13 +0100)]
ipp2p: use auxiliary skb functions
Jan Engelhardt [Wed, 26 Mar 2008 05:55:15 +0000 (06:55 +0100)]
ipp2p: static and const annotations, type usage
Jan Engelhardt [Wed, 26 Mar 2008 06:21:55 +0000 (07:21 +0100)]
ipp2p: fix match function signature
Jan Engelhardt [Wed, 26 Mar 2008 05:53:08 +0000 (06:53 +0100)]
ipp2p: adhere to codingstyle
Jan Engelhardt [Wed, 26 Mar 2008 04:56:43 +0000 (05:56 +0100)]
ipp2p: remove compat and obsolete code
Jan Engelhardt [Wed, 26 Mar 2008 04:44:50 +0000 (05:44 +0100)]
ipp2p: import
20080304 code base
Jan Engelhardt [Tue, 8 Apr 2008 18:33:26 +0000 (20:33 +0200)]
Merge reworked "condition" match
Jan Engelhardt [Wed, 2 Apr 2008 08:19:52 +0000 (10:19 +0200)]
condition: greatly improve processing speed
Replace the loop over all possible condvars by a simple deref. This
changes the runtime from O(n) to O(1) at the expense of only 8 bytes
for rule.
Jan Engelhardt [Wed, 2 Apr 2008 08:28:36 +0000 (10:28 +0200)]
condition: squash variables
Jan Engelhardt [Wed, 2 Apr 2008 03:48:57 +0000 (05:48 +0200)]
condition: remove support for nonstandard inversion
Jan Engelhardt [Wed, 2 Apr 2008 03:41:05 +0000 (05:41 +0200)]
condition: reenable IPv6 support in userspace extension
Jan Engelhardt [Wed, 2 Apr 2008 02:33:26 +0000 (04:33 +0200)]
condition: style cleanup
Jan Engelhardt [Wed, 2 Apr 2008 03:00:33 +0000 (05:00 +0200)]
condition: rework condvar name check
Use memchr() instead of a for loop to detect '/' in the condvar name.
Also unconditionally disallow names starting with a dot.
Jan Engelhardt [Wed, 2 Apr 2008 02:51:17 +0000 (04:51 +0200)]
condition: use appropriate types and return values
Jan Engelhardt [Wed, 2 Apr 2008 02:45:36 +0000 (04:45 +0200)]
condition: use unique symbol names and rewrite init function
Use an array of xt_match for the match vtable.
Jan Engelhardt [Wed, 2 Apr 2008 02:42:37 +0000 (04:42 +0200)]
condition: use new structure type
Use __u8 for the invert flag instead of int. Reduce CONDITION_NAME_LEN
from 32 to 31 so that the entire structure can fit into a cacheline.
Jan Engelhardt [Wed, 2 Apr 2008 02:31:52 +0000 (04:31 +0200)]
condition: remove casts, add const qualifiers
Jan Engelhardt [Wed, 2 Apr 2008 02:23:45 +0000 (04:23 +0200)]
condition: remove version #ifs and compat selectors
Jan Engelhardt [Wed, 26 Mar 2008 02:19:47 +0000 (03:19 +0100)]
condition: import
20080125 code base
Jan Engelhardt [Tue, 8 Apr 2008 09:51:24 +0000 (11:51 +0200)]
LOGMARK: fix comma output in ctstatus= list
Jan Engelhardt [Tue, 8 Apr 2008 09:49:45 +0000 (11:49 +0200)]
LOGMARK: add hook= and ctdir= fields
Jan Engelhardt [Tue, 8 Apr 2008 09:33:26 +0000 (11:33 +0200)]
compat: add ipv6_hdr
Jan Engelhardt [Mon, 7 Apr 2008 06:38:46 +0000 (08:38 +0200)]
TEE: reenable header_ops check
Jan Engelhardt [Tue, 1 Apr 2008 06:15:01 +0000 (08:15 +0200)]
compat: add check for pskb relocation
The Xtables-addons compat layer does not support pskb relocation
(result of possible memory allocation in kernels before 2.6.24) and
we just assume it does not happen. Add a check to warn if relocation
did happen and packet loss is to be expected.
Jan Engelhardt [Mon, 31 Mar 2008 04:40:29 +0000 (06:40 +0200)]
ECHO: Catch skb_linearize out-of-memory condition
Thomas Jarosch [Wed, 26 Mar 2008 19:47:27 +0000 (19:47 +0000)]
Removed obsoleted stuff
Jan Engelhardt [Wed, 26 Mar 2008 07:11:04 +0000 (08:11 +0100)]
Makefile: support building multiple files with one config option
Jan Engelhardt [Mon, 24 Mar 2008 15:56:18 +0000 (16:56 +0100)]
TEE: fix address copying bug
Jan Engelhardt [Mon, 24 Mar 2008 12:53:01 +0000 (13:53 +0100)]
Add Kconfig descriptions for Chaostables, ECHO, geoip
Jan Engelhardt [Sat, 22 Mar 2008 03:22:37 +0000 (04:22 +0100)]
Xtables-addons 1.5.3
Jan Engelhardt [Sat, 22 Mar 2008 04:16:51 +0000 (05:16 +0100)]
Merge reworked geoip extension
Jan Engelhardt [Thu, 13 Mar 2008 00:07:35 +0000 (01:07 +0100)]
Add xt_ECHO sample target
Jan Engelhardt [Fri, 21 Mar 2008 05:11:22 +0000 (06:11 +0100)]
geoip: minor cleanups in help, opts and logic
Jan Engelhardt [Tue, 18 Mar 2008 14:47:10 +0000 (15:47 +0100)]
geoip: use simpler, preprocessed integer vector lists and fix endian issue
The old database format was in unknown byteorder -- if you run the
converter program yourself, you got a host order file, but if you
downloaded the preprocessed DB file (geoipdb.bin), you got a
little-endian file.
Use a new database format. Instead of having an index and a DB file,
do away with the index and let the filesystem do the indexing, using
one file per country. Also access the database files with a known
endianess type. The converter script now produces two distinct
variants (especially needed for IA-64).
All of this reduces the touched code by half.
Jan Engelhardt [Tue, 18 Mar 2008 03:02:07 +0000 (04:02 +0100)]
geoip: use appropriate and normal types
For the header file, we need __u32 and so on because they are exported
to userspace and rather constitute a kernel header.
Use normal types instead of uintXX_t in the main code.
Jan Engelhardt [Tue, 18 Mar 2008 02:46:56 +0000 (03:46 +0100)]
geoip: use rcu to reduce time spinlocks are held
spin_lock_bh does not look safe (only disables preempt on current
CPU?). Change to spin_lock, that also avoids the management overhead
of spin_lock_bh. to spin_lock to avoid management overhead.
Use rcu in match and destroy function.
Jan Engelhardt [Tue, 18 Mar 2008 02:31:07 +0000 (03:31 +0100)]
geoip: use real atomic_t and remove casts from uint32_t
Jan Engelhardt [Tue, 18 Mar 2008 02:28:08 +0000 (03:28 +0100)]
geoip: use struct list_head instead of self-cooked list
Jan Engelhardt [Tue, 18 Mar 2008 02:12:07 +0000 (03:12 +0100)]
geoip: use local-portable aligned_u64 pointer values
A 64-bit kernel will interpret the pointer with 64 bits width, while
a 32-bit userspace filled in only 32 of it, leaving the other 32
undefined. This must be avoided.
Jan Engelhardt [Tue, 18 Mar 2008 01:31:57 +0000 (02:31 +0100)]
geoip: split user/kernel-visible parts of struct geoip_info
Jan Engelhardt [Mon, 17 Mar 2008 13:16:14 +0000 (14:16 +0100)]
geoip: use vmalloc due to potential list size
The subnet list may become really large (United States: ~15000
entries), which means a use of roughly 120 KB, and kmalloc may fail
to find a contiguous block in physical memory. Virtual contiguity is
enough, so use vmalloc/vfree.
vfree may not be called within a spin_lock_bh area, so release the
lock first, it is safe to do so.
Jan Engelhardt [Mon, 17 Mar 2008 21:34:00 +0000 (22:34 +0100)]
geoip: use a binary search to replace the current linear one
Certain countries have lots (around 10000) of IP address ranges
(US,GB,DE,...). The current linear search is really bad:
No firewall:
3000 packets transmitted, 3000 received, 0% packet loss, time 1992ms
Testing against the countries with top 50 IP ranges:
3000 packets transmitted, 3000 received, 0% packet loss, time 8998ms
With binary search:
3000 packets transmitted, 3000 received, 0% packet loss, time 2358ms
Jan Engelhardt [Mon, 17 Mar 2008 14:36:59 +0000 (15:36 +0100)]
geoip: address comparison is inclusive
subnet is somewhat a wrong term, geoip actually uses ipranges. Either
way, the comparison needs to be >= and <= instead of > <.
Jan Engelhardt [Mon, 17 Mar 2008 13:37:37 +0000 (14:37 +0100)]
geoip: lock timing correctness
find_node: The reference count needs to be increased while the lock
is held. Otherwise, the node may disappear right after the lock was
released and increase was attempted, leading to an oops.
remove_node: The reference count needs to be checked while the lock
is held. Otherwise, the node may be used in the match function or
returned from find_node while it has a zero refcount.
Jan Engelhardt [Mon, 17 Mar 2008 13:11:26 +0000 (14:11 +0100)]
geoip: add missing kfree in error path
Jan Engelhardt [Mon, 17 Mar 2008 13:12:40 +0000 (14:12 +0100)]
geoip: sort #include list
Jan Engelhardt [Mon, 17 Mar 2008 12:35:17 +0000 (13:35 +0100)]
geoip: use tabs not spaces and indent
Jan Engelhardt [Mon, 17 Mar 2008 12:26:11 +0000 (13:26 +0100)]
geoip: remove redundant casts
Jan Engelhardt [Mon, 17 Mar 2008 11:49:28 +0000 (12:49 +0100)]
geoip: remove unused code and unneeded per-info refcount
- freeing userspace memory is not the kernel's job, really.
- checkentry is called exactly once, as is destroy.
Jan Engelhardt [Mon, 17 Mar 2008 11:46:15 +0000 (12:46 +0100)]
geoip: import
20080214 code base
Jan Engelhardt [Tue, 11 Mar 2008 15:59:49 +0000 (16:59 +0100)]
compat update: allow building from 2.6.18 onwards