]> granicus.if.org Git - ipset/log
ipset
11 years agoMove extension data to set structure
Jozsef Kadlecsik [Fri, 6 Sep 2013 22:10:07 +0000 (00:10 +0200)]
Move extension data to set structure

Default timeout and extension offsets are moved to struct set, because
all set types supports all extensions and it makes possible to generalize
extension support.

11 years agoRename extension offset ids to extension ids
Jozsef Kadlecsik [Fri, 6 Sep 2013 20:31:40 +0000 (22:31 +0200)]
Rename extension offset ids to extension ids

11 years agoPrepare ipset to support multiple networks for hash types
Jozsef Kadlecsik [Wed, 4 Sep 2013 14:56:12 +0000 (16:56 +0200)]
Prepare ipset to support multiple networks for hash types

In order to support hash:net,net, hash:net,port,net etc. types,
arrays are introduced for the book-keeping of existing cidr sizes
and network numbers in a set.

11 years agoIntroduce new operation to get both setname and family
Jozsef Kadlecsik [Wed, 4 Sep 2013 14:49:08 +0000 (16:49 +0200)]
Introduce new operation to get both setname and family

ip[6]tables set match and SET target need to know the family of the set
in order to reject adding rules which refer to a set with a non-mathcing
family. Currently such rules are silently accepted and then ignored
instead of generating a clear error message to the user, which is not
helpful.

11 years agoAdd specifying protocol for bitmap:port
Quentin Armitage [Fri, 9 Aug 2013 11:26:33 +0000 (12:26 +0100)]
Add specifying protocol for bitmap:port

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoRemove artifical restriction of netmask values for hash:ip type.
Jozsef Kadlecsik [Sat, 17 Aug 2013 19:12:53 +0000 (21:12 +0200)]
Remove artifical restriction of netmask values for hash:ip type.

Reported by Quentin Armitage, closes netfilter bugzilla id #844.

11 years agoMake sure called test scripts can be executed (reported by Tomas Budai)
Jozsef Kadlecsik [Fri, 16 Aug 2013 21:25:58 +0000 (23:25 +0200)]
Make sure called test scripts can be executed (reported by Tomas Budai)

11 years agoManpage fix: not just identical, but compatible type of sets can be swapped
Jozsef Kadlecsik [Wed, 14 Aug 2013 14:10:34 +0000 (16:10 +0200)]
Manpage fix: not just identical, but compatible type of sets can be swapped

Reported by Quentin Armitage, netfilter bugzilla id #843.

11 years agoValidate the set family and not the set type family at swapping.
Jozsef Kadlecsik [Wed, 14 Aug 2013 14:07:49 +0000 (16:07 +0200)]
Validate the set family and not the set type family at swapping.

Bug reported by Quentin Armitage, netfilter bugzilla id #843.

11 years agoFix error message typo
Jozsef Kadlecsik [Wed, 14 Aug 2013 13:59:54 +0000 (15:59 +0200)]
Fix error message typo

Reported by Quentin Armitage, netfilter bugzilla id #843.

11 years agoParse option "family" first, because other options may depend on it
Jozsef Kadlecsik [Wed, 14 Aug 2013 13:41:20 +0000 (15:41 +0200)]
Parse option "family" first, because other options may depend on it

Option like "netmask" depends on the INET family, so parse "family"
first, then the rest of the options.

Bug reported by Quentin Armitage, closed netfilter bugzilla #841.

11 years agoChange 2nd parameter type of ipset_parse_elem
Quentin Armitage [Thu, 1 Aug 2013 21:17:03 +0000 (23:17 +0200)]
Change 2nd parameter type of ipset_parse_elem

The only place in ipset where ipset_parse_elem is called is src/ipset.c. The
second parameter to the function call is type->last_elem_optional, which is of
type bool, but ipset_parse_elem is defined in lib/parse.c with the second
parameter having type enum ipset_opt.

The use in lib/parse.c is clearly as a bool.

11 years agoConsistent userspace testing with nomatch flag
Jozsef Kadlecsik [Sat, 20 Jul 2013 14:44:42 +0000 (16:44 +0200)]
Consistent userspace testing with nomatch flag

The "nomatch" commandline flag should invert the matching at testing,
similarly to the --return-nomatch flag of the "set" match of iptables.
Until now it worked with the elements with "nomatch" flag only. From
now on it works with elements without the flag too, i.e:

 # ipset n test hash:net
 # ipset a test 10.0.0.0/24 nomatch
 # ipset t test 10.0.0.1
 10.0.0.1 is NOT in set test.
 # ipset t test 10.0.0.1 nomatch
 10.0.0.1 is in set test.

 # ipset a test 192.168.0.0/24
 # ipset t test 192.168.0.1
 192.168.0.1 is in set test.
 # ipset t test 192.168.0.1 nomatch
 192.168.0.1 is NOT in set test.

 Before the patch the results were

 ...
 # ipset t test 192.168.0.1
 192.168.0.1 is in set test.
 # ipset t test 192.168.0.1 nomatch
 192.168.0.1 is in set test.

11 years agoReport broken netlink messages in debug mode
Jozsef Kadlecsik [Fri, 19 Jul 2013 19:54:02 +0000 (21:54 +0200)]
Report broken netlink messages in debug mode

11 years agoSkip really non-first fragments for IPv6 when getting port/protocol
Jozsef Kadlecsik [Fri, 31 May 2013 21:14:36 +0000 (23:14 +0200)]
Skip really non-first fragments for IPv6 when getting port/protocol

11 years agoipset standalone package needs to ship em_ipset.c
Jozsef Kadlecsik [Fri, 31 May 2013 20:52:54 +0000 (22:52 +0200)]
ipset standalone package needs to ship em_ipset.c

Due to the ipset kernel API changes, em_ipset.c needs to be provided
in the ipset package, reported by Jan Engelhardt:

WARNING: //lib/modules/3.7.10-jng15-default/kernel/net/sched/em_ipset.ko
disagrees about version of symbol ip_set_test

11 years agoipset: Fix hyphen used as minus sign in manpage
Neutron Soutmun [Sun, 12 May 2013 09:30:57 +0000 (16:30 +0700)]
ipset: Fix hyphen used as minus sign in manpage

Signed-off-by: Neutron Soutmun <neo.neutron@gmail.com>
Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agolibipset.pc must be installed via 'make install'
Eric Leblond [Fri, 10 May 2013 20:25:17 +0000 (22:25 +0200)]
libipset.pc must be installed via 'make install'

libipset.pc was not installed by classic 'make install'. This
patch adds it to the list of installed files.

Signed-off-by: Eric Leblond <eric@regit.org>
Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoipset 6.19 released v6.19
Jozsef Kadlecsik [Thu, 9 May 2013 15:33:39 +0000 (17:33 +0200)]
ipset 6.19 released

11 years agoCompatibility fixes to keep the support of kernels back to 2.6.32
Jozsef Kadlecsik [Thu, 9 May 2013 15:31:15 +0000 (17:31 +0200)]
Compatibility fixes to keep the support of kernels back to 2.6.32

11 years agoCheck at modules_install whether depmod ignores the extra subdir
Jozsef Kadlecsik [Thu, 9 May 2013 09:49:40 +0000 (11:49 +0200)]
Check at modules_install whether depmod ignores the extra subdir

The external kernel modules are installed in the extra subdir in
/lib/modules/<kernelrelease>/, but depmod in some distributions
(at least in Ubuntu 12.04 LTS) ingores the subdir. Warn about it,
because that way the modules are actually not available there.

Reported by Husnu Demir and tian fang.

11 years agoBackport nla_put_net64
Jozsef Kadlecsik [Thu, 9 May 2013 09:49:16 +0000 (11:49 +0200)]
Backport nla_put_net64

11 years agoThe utils are updated from their sources
Jozsef Kadlecsik [Tue, 7 May 2013 20:11:12 +0000 (22:11 +0200)]
The utils are updated from their sources

11 years agoSupport package fragments for IPv4 protos without ports
Anders K. Pedersen [Fri, 3 May 2013 21:15:48 +0000 (23:15 +0200)]
Support package fragments for IPv4 protos without ports

Enable ipset port set types to match IPv4 package fragments for
protocols that doesn't have ports (or the port information isn't
supported by ipset).

For example this allows a hash:ip,port ipset containing the entry
192.168.0.1,gre:0 to match all package fragments for PPTP VPN tunnels
to/from the host. Without this patch only the first package fragment
(with fragment offset 0) was matched, while subsequent fragments wasn't.

This is not possible for IPv6, where the protocol is in the fragmented
part of the package unlike IPv4, where the protocol is in the IP header.

IPPROTO_ICMPV6 is deliberately not included, because it isn't relevant
for IPv4.

Signed-off-by: Anders K. Pedersen <akp@surftown.com>
11 years agoManpage typing error correction (reported by Husnu Demir)
Jozsef Kadlecsik [Thu, 2 May 2013 11:37:33 +0000 (13:37 +0200)]
Manpage typing error correction (reported by Husnu Demir)

11 years agoUpdate testsuite as the trailing space was eliminated at listings
Jozsef Kadlecsik [Thu, 2 May 2013 09:36:06 +0000 (11:36 +0200)]
Update testsuite as the trailing space was eliminated at listings

11 years agoUse fix sized type for timeout in the extension part
Jozsef Kadlecsik [Thu, 2 May 2013 08:52:27 +0000 (10:52 +0200)]
Use fix sized type for timeout in the extension part

11 years agoAdd sparse checking support to userspace
Jozsef Kadlecsik [Thu, 2 May 2013 08:51:55 +0000 (10:51 +0200)]
Add sparse checking support to userspace

11 years agoImprove XML output: add element tag and root element (suggested by Lucas Hamie)
Jozsef Kadlecsik [Wed, 1 May 2013 17:50:41 +0000 (19:50 +0200)]
Improve XML output: add element tag and root element (suggested by Lucas Hamie)

11 years agoMake sure kernel configured properly for sparse checkings
Jozsef Kadlecsik [Wed, 1 May 2013 16:48:27 +0000 (18:48 +0200)]
Make sure kernel configured properly for sparse checkings

11 years agoFix "may be used uninitialized" warnings
Jozsef Kadlecsik [Wed, 1 May 2013 16:47:32 +0000 (18:47 +0200)]
Fix "may be used uninitialized" warnings

Reported-by: Pablo Neira Ayuso <pablo@netfilter.org>
11 years agoRename simple macro names to avoid namespace issues.
Jozsef Kadlecsik [Tue, 30 Apr 2013 21:02:43 +0000 (23:02 +0200)]
Rename simple macro names to avoid namespace issues.

Reported-by: David Laight <David.Laight@ACULAB.COM>
11 years agoFix sparse warnings due to missing rcu annotations
Jozsef Kadlecsik [Tue, 30 Apr 2013 19:23:18 +0000 (21:23 +0200)]
Fix sparse warnings due to missing rcu annotations

Reported-by: Pablo Neira Ayuso <pablo@netfilter.org>
11 years agoSparse warning about shadowed variable fixed
Jozsef Kadlecsik [Tue, 30 Apr 2013 16:40:43 +0000 (18:40 +0200)]
Sparse warning about shadowed variable fixed

net/netfilter/ipset/ip_set_hash_ipportnet.c:275:20:
warning: symbol 'cidr' shadows an earlier one

11 years agoDon't call ip_nest_end needlessly in the error path
Jozsef Kadlecsik [Sat, 27 Apr 2013 19:02:59 +0000 (21:02 +0200)]
Don't call ip_nest_end needlessly in the error path

Suggested-by: Pablo Neira Ayuso <pablo@netfilter.org>
11 years agoManpage updates
Jozsef Kadlecsik [Fri, 5 Apr 2013 14:55:02 +0000 (16:55 +0200)]
Manpage updates

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoAdd new testsuite entries to verify counters and the new type implementations
Jozsef Kadlecsik [Thu, 4 Apr 2013 14:32:20 +0000 (16:32 +0200)]
Add new testsuite entries to verify counters and the new type implementations

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoIntroduce the new set type revisions with counter support
Jozsef Kadlecsik [Tue, 9 Apr 2013 15:17:50 +0000 (17:17 +0200)]
Introduce the new set type revisions with counter support

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoSupport counters in the ipset library
Jozsef Kadlecsik [Tue, 9 Apr 2013 15:17:00 +0000 (17:17 +0200)]
Support counters in the ipset library

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoset match: add support to match the counters
Jozsef Kadlecsik [Tue, 9 Apr 2013 15:14:19 +0000 (17:14 +0200)]
set match: add support to match the counters

The new revision of the set match supports to match the counters
and to suppress updating the counters at matching too.

At the set:list types, the updating of the subcounters can be
suppressed as well.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoThe list:set type with counter support
Jozsef Kadlecsik [Mon, 8 Apr 2013 21:11:32 +0000 (23:11 +0200)]
The list:set type with counter support

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoThe hash types with counter support
Jozsef Kadlecsik [Mon, 8 Apr 2013 21:11:02 +0000 (23:11 +0200)]
The hash types with counter support

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoThe bitmap types with counter support
Jozsef Kadlecsik [Mon, 8 Apr 2013 21:10:22 +0000 (23:10 +0200)]
The bitmap types with counter support

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoIntroduce the counter extension in the core
Jozsef Kadlecsik [Mon, 8 Apr 2013 21:09:19 +0000 (23:09 +0200)]
Introduce the counter extension in the core

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agolist:set type using the extension interface
Jozsef Kadlecsik [Thu, 4 Apr 2013 10:21:02 +0000 (12:21 +0200)]
list:set type using the extension interface

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoHash types using the unified code base
Jozsef Kadlecsik [Mon, 8 Apr 2013 20:50:55 +0000 (22:50 +0200)]
Hash types using the unified code base

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoUnified hash type generation
Jozsef Kadlecsik [Mon, 8 Apr 2013 19:05:44 +0000 (21:05 +0200)]
Unified hash type generation

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoBitmap types using the unified code base
Jozsef Kadlecsik [Mon, 8 Apr 2013 19:03:26 +0000 (21:03 +0200)]
Bitmap types using the unified code base

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoUnified bitmap type generation
Jozsef Kadlecsik [Mon, 8 Apr 2013 19:00:52 +0000 (21:00 +0200)]
Unified bitmap type generation

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoIntroduce extensions to elements in the core
Jozsef Kadlecsik [Mon, 8 Apr 2013 18:59:15 +0000 (20:59 +0200)]
Introduce extensions to elements in the core

Introduce extensions to elements in the core and prepare timeout as
the first one.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoMove often used IPv6 address masking function to header file
Jozsef Kadlecsik [Mon, 8 Apr 2013 18:54:37 +0000 (20:54 +0200)]
Move often used IPv6 address masking function to header file

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoMake possible to test elements marked with nomatch, from userspace
Jozsef Kadlecsik [Mon, 8 Apr 2013 19:51:25 +0000 (21:51 +0200)]
Make possible to test elements marked with nomatch, from userspace

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agonetfilter ipset: Use ipv6_addr_equal() where appropriate.
YOSHIFUJI Hideaki [Sat, 6 Apr 2013 12:10:06 +0000 (14:10 +0200)]
netfilter ipset: Use ipv6_addr_equal() where appropriate.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoAdd a compatibility header file for easier maintenance
Jozsef Kadlecsik [Sat, 6 Apr 2013 12:04:12 +0000 (14:04 +0200)]
Add a compatibility header file for easier maintenance

Unfortunately not everything could be moved there, there are still
compatibility ifdefs in some other files.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoThe uapi include split in the package itself
Jozsef Kadlecsik [Sat, 6 Apr 2013 07:52:33 +0000 (09:52 +0200)]
The uapi include split in the package itself

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoReorder modules a little bit in Kbuild
Jozsef Kadlecsik [Mon, 1 Apr 2013 19:17:58 +0000 (21:17 +0200)]
Reorder modules a little bit in Kbuild

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agohash:*net*: nomatch flag not excluded on set resize
Jozsef Kadlecsik [Mon, 1 Apr 2013 19:13:20 +0000 (21:13 +0200)]
hash:*net*: nomatch flag not excluded on set resize

If a resize is triggered the nomatch flag is not excluded at hashing,
which leads to the element missed at lookup in the resized set.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agolist:set: update reference counter when last element pushed off
Jozsef Kadlecsik [Mon, 1 Apr 2013 18:11:01 +0000 (20:11 +0200)]
list:set: update reference counter when last element pushed off

The last element can be replaced or pushed off and in both
cases the reference counter must be updated.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoipset 6.17 released v6.17
Jozsef Kadlecsik [Thu, 21 Feb 2013 15:44:09 +0000 (16:44 +0100)]
ipset 6.17 released

11 years agoThe ipset_list tool is added
Jozsef Kadlecsik [Thu, 21 Feb 2013 15:37:41 +0000 (16:37 +0100)]
The ipset_list tool is added

Source: http://sourceforge.net/projects/ipset-list

11 years agoThe ipset_bash_completion tool is added
Jozsef Kadlecsik [Thu, 21 Feb 2013 15:36:35 +0000 (16:36 +0100)]
The ipset_bash_completion tool is added

Source: http://sourceforge.net/projects/ipset-bashcompl

11 years agoInteractive mode error after syntax error (reported by Mart Frauenlob)
Jozsef Kadlecsik [Thu, 21 Feb 2013 11:08:42 +0000 (12:08 +0100)]
Interactive mode error after syntax error (reported by Mart Frauenlob)

ipset> list foo
ipset v6.16.1: The set with the given name does not exist
ipset> -t
No command specified
ipset> list
ipset v6.16.1: Internal protocol error

In interactive mode the state was not cleaned up properly after a
syntax error, fixed.

11 years ago"Directory not empty" error message (reported by John Brendler)
Jozsef Kadlecsik [Thu, 21 Feb 2013 10:12:40 +0000 (11:12 +0100)]
"Directory not empty" error message (reported by John Brendler)

When an entry flagged with "nomatch" was tested by ipset, it
returned the error message "Kernel error received:
Directory not empty" instead of "<element> is NOT in set <setname>".

The internal error code was not properly transformed before returning
to userspace, fixed.

11 years agonetfilter: ipset: timeout values corrupted on set resize
Josh Hunt [Tue, 19 Feb 2013 19:35:59 +0000 (11:35 -0800)]
netfilter: ipset: timeout values corrupted on set resize

If a resize is triggered on a set with timeouts enabled, the timeout
values will get corrupted when copying them to the new set. This occured
b/c the wrong timeout value is supplied to type_pf_elem_tadd().

This also adds simple debug statement similar to the one in type_pf_resize().

Signed-off-by: Josh Hunt <johunt@akamai.com>
Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
11 years agoFix error path when protocol number is used with port range
Jozsef Kadlecsik [Wed, 9 Jan 2013 22:34:44 +0000 (23:34 +0100)]
Fix error path when protocol number is used with port range

11 years agoCorrect "Suspicious condition (assignment + comparison)" (Thomas Jarosch)
Jozsef Kadlecsik [Mon, 7 Jan 2013 16:07:52 +0000 (17:07 +0100)]
Correct "Suspicious condition (assignment + comparison)" (Thomas Jarosch)

cppcheck (vaguely) reported:
[lib/parse.c:448]: (style) Suspicious condition (assignment + comparison); Clarify expression with parentheses.

11 years agoFix revision printing in XML mode (reported by Mart Frauenlob)
Jozsef Kadlecsik [Mon, 7 Jan 2013 08:15:33 +0000 (09:15 +0100)]
Fix revision printing in XML mode (reported by Mart Frauenlob)

12 years agoMake sure ip_set_max isn't set to IPSET_INVALID_ID
Jozsef Kadlecsik [Tue, 27 Nov 2012 16:10:33 +0000 (17:10 +0100)]
Make sure ip_set_max isn't set to IPSET_INVALID_ID

12 years agoipset 6.16.1 released v6.16.1
Jozsef Kadlecsik [Tue, 27 Nov 2012 14:05:48 +0000 (15:05 +0100)]
ipset 6.16.1 released

12 years agoAdd ipset package version to external module description
Jozsef Kadlecsik [Tue, 27 Nov 2012 13:58:03 +0000 (14:58 +0100)]
Add ipset package version to external module description

12 years agoBackport RCU handling up to 2.6.32.x
Jozsef Kadlecsik [Tue, 27 Nov 2012 13:19:07 +0000 (14:19 +0100)]
Backport RCU handling up to 2.6.32.x

__rcu and rcu_dereference_protected is missing from older kernel releases.

12 years agoipset 6.16 released v6.16
Jozsef Kadlecsik [Mon, 26 Nov 2012 20:08:28 +0000 (21:08 +0100)]
ipset 6.16 released

12 years agoNetlink pid is renamed to portid in kernel 3.7.0
Jozsef Kadlecsik [Sat, 24 Nov 2012 21:06:19 +0000 (22:06 +0100)]
Netlink pid is renamed to portid in kernel 3.7.0

Handle the renaming of the netlink_skb_parms structure member.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
12 years agoFix RCU handling when the number of maximal sets are increased
Jozsef Kadlecsik [Sat, 24 Nov 2012 20:59:11 +0000 (21:59 +0100)]
Fix RCU handling when the number of maximal sets are increased

Eric Dumazet spotted that RCU handling was far incomplete in the patch
which added the support of increasing the number of maximal sets automatically.
This patch completes the RCU handling of the ip_set_list array of the sets.

12 years agonetfilter: ipset: fix netiface set name overflow
Florian Westphal [Thu, 22 Nov 2012 11:32:45 +0000 (12:32 +0100)]
netfilter: ipset: fix netiface set name overflow

attribute is copied to IFNAMSIZ-size stack variable,
but IFNAMSIZ is smaller than IPSET_MAXNAMELEN.

Fortunately nfnetlink needs CAP_NET_ADMIN.

Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
12 years agoRemove all modules before testing resize
Jozsef Kadlecsik [Thu, 22 Nov 2012 20:54:48 +0000 (21:54 +0100)]
Remove all modules before testing resize

12 years agobuild: support for Linux 3.7 UAPI
Jan Engelhardt [Wed, 21 Nov 2012 23:05:42 +0000 (00:05 +0100)]
build: support for Linux 3.7 UAPI

In Linux 3.7, nfnetlink.h moved below include/uapi/. Make configure
recognize that. Furthermore, we can drop the unnecessary indirection
via backticks and just ask grep directly if there was any result.

Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
12 years agoipset 6.15 released v6.15
Jozsef Kadlecsik [Mon, 19 Nov 2012 12:29:49 +0000 (13:29 +0100)]
ipset 6.15 released

12 years agoIncrease the number of maximal sets automatically as needed
Jozsef Kadlecsik [Mon, 19 Nov 2012 10:37:24 +0000 (11:37 +0100)]
Increase the number of maximal sets automatically as needed

The max number of sets was hardcoded at kernel cofiguration time.
The patch adds the support to increase the max number of sets automatically.

12 years agoFix interactive mode
Fredrik Eriksson [Mon, 5 Nov 2012 16:30:19 +0000 (17:30 +0100)]
Fix interactive mode

Catching interactive mode got broken in 6.12.

12 years agoUse gethostbyname2 instead of getaddrinfo
Jozsef Kadlecsik [Mon, 5 Nov 2012 16:11:10 +0000 (17:11 +0100)]
Use gethostbyname2 instead of getaddrinfo

In newer glibc, getaddrinfo issues an extra system call to kernel,
which slows down ipset. Replace getaddrinfo with gethostbyname2,
where possible.

12 years agoRestore the support of kernel versions between 2.6.32 and 2.6.35
Jozsef Kadlecsik [Mon, 5 Nov 2012 16:09:09 +0000 (17:09 +0100)]
Restore the support of kernel versions between 2.6.32 and 2.6.35

12 years agoMake tests/check_cidrs.sh script executable
Jozsef Kadlecsik [Mon, 5 Nov 2012 16:06:46 +0000 (17:06 +0100)]
Make tests/check_cidrs.sh script executable

12 years agoAdd tests to check completely ranges with hash types
Jozsef Kadlecsik [Mon, 5 Nov 2012 16:03:50 +0000 (17:03 +0100)]
Add tests to check completely ranges with hash types

Test all possible range variations with the hash types in order
to catch bugs like the range bug in hash:ip,port,net.

12 years agoMake easier to apply the netlink.patch
Jozsef Kadlecsik [Mon, 5 Nov 2012 16:02:26 +0000 (17:02 +0100)]
Make easier to apply the netlink.patch

There is no need for the full source code, the header files are enough
to compile ipset.

12 years agoSupport protocol numbers as well, not only protocol names
Jozsef Kadlecsik [Mon, 5 Nov 2012 16:01:41 +0000 (17:01 +0100)]
Support protocol numbers as well, not only protocol names

12 years agoAdd (back) the debug flag to configure
Jozsef Kadlecsik [Mon, 5 Nov 2012 16:00:47 +0000 (17:00 +0100)]
Add (back) the debug flag to configure

12 years agoFix range bug in hash:ip,port,net
Jozsef Kadlecsik [Mon, 5 Nov 2012 15:56:42 +0000 (16:56 +0100)]
Fix range bug in hash:ip,port,net

Due to the missing ininitalization at adding/deleting entries, when
a plain_ip,port,net element was to be added, multiple elements were
added/deleted instead. The bug came from the missing dangling
default initialization.

The error-prone default initialization is corrected in all hash:* types.

12 years agoRewrite cidr book keeping to handle /0
Jozsef Kadlecsik [Sat, 22 Sep 2012 20:55:01 +0000 (22:55 +0200)]
Rewrite cidr book keeping to handle /0

The patch is required for the /0 support in hash:net,iface

12 years agoRevert patch "Fix cidr book keeping for hash:*net* types"
Jozsef Kadlecsik [Sat, 22 Sep 2012 20:53:44 +0000 (22:53 +0200)]
Revert patch "Fix cidr book keeping for hash:*net* types"

12 years agoAdd simple test to check cidr book-keeping
Jozsef Kadlecsik [Sat, 22 Sep 2012 16:10:43 +0000 (18:10 +0200)]
Add simple test to check cidr book-keeping

12 years agoipset 6.14 released v6.14
Jozsef Kadlecsik [Fri, 21 Sep 2012 19:21:29 +0000 (21:21 +0200)]
ipset 6.14 released

12 years agoSupport to match elements marked with "nomatch" in hash:*net* sets
Jozsef Kadlecsik [Fri, 21 Sep 2012 19:03:24 +0000 (21:03 +0200)]
Support to match elements marked with "nomatch" in hash:*net* sets

Exceptions can now be matched and we can branch according to the
possible cases:

a. match in the set if the element is not flagged as "nomatch"
b. match in the set if the element is flagged with "nomatch"
c. no match

i.e.

iptables ... -m set --match-set ... -j ...
iptables ... -m set --match-set ... --nomatch-entries -j ...
...

12 years agoCoding style fixes
Jozsef Kadlecsik [Tue, 11 Sep 2012 15:38:17 +0000 (17:38 +0200)]
Coding style fixes

12 years agoThe set type revision number is added to the header part of listing
Jozsef Kadlecsik [Tue, 11 Sep 2012 15:34:37 +0000 (17:34 +0200)]
The set type revision number is added to the header part of listing

Incompatibility: if your script rely on the number of lines in the header
of set listings, then the new line

Revision: number

can break your script.

12 years agoInclude supported revisions in module description
Jozsef Kadlecsik [Tue, 11 Sep 2012 15:10:08 +0000 (17:10 +0200)]
Include supported revisions in module description

12 years agoHelp prints list type revision and terse description
Jozsef Kadlecsik [Sat, 8 Sep 2012 20:55:04 +0000 (22:55 +0200)]
Help prints list type revision and terse description

In order to catch kernel/userspace revision mismatch, better print
all available data.

12 years agoAdd /0 network support to hash:net,iface type
Jozsef Kadlecsik [Mon, 10 Sep 2012 19:22:23 +0000 (21:22 +0200)]
Add /0 network support to hash:net,iface type

Now it is possible to setup a single hash:net,iface type of set and
a single ip6?tables match which covers all egress/ingress filtering.

12 years agoFix cidr book keeping for hash:*net* types
Jozsef Kadlecsik [Mon, 10 Sep 2012 19:19:09 +0000 (21:19 +0200)]
Fix cidr book keeping for hash:*net* types

The book-keeping of the different sized networks were bogus, fix it.
The broken code could lead invalid matching in such sets when the number
of different sized networks were greater than the smallest CIDR value of
the networks.

12 years agoCheck and reject crazy /0 input parameters
Jozsef Kadlecsik [Tue, 4 Sep 2012 15:45:59 +0000 (17:45 +0200)]
Check and reject crazy /0 input parameters

bitmap:ip and bitmap:ip,mac type did not reject such a crazy range
when created and using such a set results in a kernel crash.
The hash types just silently ignored such parameters.

Reject invalid /0 input parameters explicitely.