diff options
author | Jozsef Kadlecsik <kadlec@blackhole.kfki.hu> | 2009-08-18 19:52:26 +0200 |
---|---|---|
committer | Jozsef Kadlecsik <kadlec@blackhole.kfki.hu> | 2009-08-18 19:52:26 +0200 |
commit | d19f4ca4451f02add0e8edfcb69882d5b3e0cc9e (patch) | |
tree | e865cb32f704306dcc20e7fe47245ab91663b67b /kernel/ip_set_setlist.c | |
parent | 027dc5fb9021ce3f814a345b17c56d899733569a (diff) |
ipset 3.1 releasev3.1
A few minor bugs fixed and cleanups:
- Nonexistent sets were reported as existing sets when testing
from userspace in setlist type of sets (bug reported by Victor A.
Safronov)
- When saving sets, setlist type of sets must come last in order
to satisfy the dependency from the elements (bug reported by Marty B.)
- Sparse insists that the flags argument to kmalloc() is gfp_t
(Stephen Hemminger)
- Correct format specifiers and change %i to %d (Jan Engelhardt)
- Fix the definition of 'bool' for kernels <= 2.6.18 (Jan Engelhardt)
Diffstat (limited to 'kernel/ip_set_setlist.c')
-rw-r--r-- | kernel/ip_set_setlist.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/kernel/ip_set_setlist.c b/kernel/ip_set_setlist.c index 15a67ba..612f81f 100644 --- a/kernel/ip_set_setlist.c +++ b/kernel/ip_set_setlist.c @@ -16,8 +16,9 @@ #include <linux/netfilter_ipv4/ip_set_bitmaps.h> #include <linux/netfilter_ipv4/ip_set_setlist.h> -#ifndef bool -#define bool int +#if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 18) +typedef _Bool bool; +enum { false = 0, true = 1, }; #endif /* @@ -42,17 +43,15 @@ setlist_utest(struct ip_set *set, const void *data, u_int32_t size, struct ip_set *s; if (req->before && req->ref[0] == '\0') - return -EINVAL; + return 0; index = __ip_set_get_byname(req->name, &s); if (index == IP_SET_INVALID_ID) - return -EEXIST; + return 0; if (req->ref[0] != '\0') { ref = __ip_set_get_byname(req->ref, &s); - if (ref == IP_SET_INVALID_ID) { - res = -EEXIST; + if (ref == IP_SET_INVALID_ID) goto finish; - } } for (i = 0; i < map->size && map->index[i] != IP_SET_INVALID_ID; i++) { |