Commit 10111a6ef373c377e87730749a0f68210c3fd062
1 parent
bd9087e040
netfilter: ipset: Include supported revisions in module description
Signed-off-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
Showing 12 changed files with 78 additions and 39 deletions Side-by-side Diff
- include/linux/netfilter/ipset/ip_set.h
- net/netfilter/ipset/ip_set_bitmap_ip.c
- net/netfilter/ipset/ip_set_bitmap_ipmac.c
- net/netfilter/ipset/ip_set_bitmap_port.c
- net/netfilter/ipset/ip_set_hash_ip.c
- net/netfilter/ipset/ip_set_hash_ipport.c
- net/netfilter/ipset/ip_set_hash_ipportip.c
- net/netfilter/ipset/ip_set_hash_ipportnet.c
- net/netfilter/ipset/ip_set_hash_net.c
- net/netfilter/ipset/ip_set_hash_netiface.c
- net/netfilter/ipset/ip_set_hash_netport.c
- net/netfilter/ipset/ip_set_list_set.c
include/linux/netfilter/ipset/ip_set.h
... | ... | @@ -206,8 +206,14 @@ |
206 | 206 | #include <linux/netlink.h> |
207 | 207 | #include <linux/netfilter.h> |
208 | 208 | #include <linux/netfilter/x_tables.h> |
209 | +#include <linux/stringify.h> | |
209 | 210 | #include <linux/vmalloc.h> |
210 | 211 | #include <net/netlink.h> |
212 | + | |
213 | +#define _IP_SET_MODULE_DESC(a, b, c) \ | |
214 | + MODULE_DESCRIPTION(a " type of IP sets, revisions " b "-" c) | |
215 | +#define IP_SET_MODULE_DESC(a, b, c) \ | |
216 | + _IP_SET_MODULE_DESC(a, __stringify(b), __stringify(c)) | |
211 | 217 | |
212 | 218 | /* Set features */ |
213 | 219 | enum ip_set_feature { |
net/netfilter/ipset/ip_set_bitmap_ip.c
... | ... | @@ -27,9 +27,12 @@ |
27 | 27 | #define IP_SET_BITMAP_TIMEOUT |
28 | 28 | #include <linux/netfilter/ipset/ip_set_timeout.h> |
29 | 29 | |
30 | +#define REVISION_MIN 0 | |
31 | +#define REVISION_MAX 0 | |
32 | + | |
30 | 33 | MODULE_LICENSE("GPL"); |
31 | 34 | MODULE_AUTHOR("Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>"); |
32 | -MODULE_DESCRIPTION("bitmap:ip type of IP sets"); | |
35 | +IP_SET_MODULE_DESC("bitmap:ip", REVISION_MIN, REVISION_MAX); | |
33 | 36 | MODULE_ALIAS("ip_set_bitmap:ip"); |
34 | 37 | |
35 | 38 | /* Type structure */ |
... | ... | @@ -556,8 +559,8 @@ |
556 | 559 | .features = IPSET_TYPE_IP, |
557 | 560 | .dimension = IPSET_DIM_ONE, |
558 | 561 | .family = NFPROTO_IPV4, |
559 | - .revision_min = 0, | |
560 | - .revision_max = 0, | |
562 | + .revision_min = REVISION_MIN, | |
563 | + .revision_max = REVISION_MAX, | |
561 | 564 | .create = bitmap_ip_create, |
562 | 565 | .create_policy = { |
563 | 566 | [IPSET_ATTR_IP] = { .type = NLA_NESTED }, |
net/netfilter/ipset/ip_set_bitmap_ipmac.c
... | ... | @@ -26,9 +26,12 @@ |
26 | 26 | #include <linux/netfilter/ipset/ip_set_timeout.h> |
27 | 27 | #include <linux/netfilter/ipset/ip_set_bitmap.h> |
28 | 28 | |
29 | +#define REVISION_MIN 0 | |
30 | +#define REVISION_MAX 0 | |
31 | + | |
29 | 32 | MODULE_LICENSE("GPL"); |
30 | 33 | MODULE_AUTHOR("Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>"); |
31 | -MODULE_DESCRIPTION("bitmap:ip,mac type of IP sets"); | |
34 | +IP_SET_MODULE_DESC("bitmap:ip,mac", REVISION_MIN, REVISION_MAX); | |
32 | 35 | MODULE_ALIAS("ip_set_bitmap:ip,mac"); |
33 | 36 | |
34 | 37 | enum { |
... | ... | @@ -630,8 +633,8 @@ |
630 | 633 | .features = IPSET_TYPE_IP | IPSET_TYPE_MAC, |
631 | 634 | .dimension = IPSET_DIM_TWO, |
632 | 635 | .family = NFPROTO_IPV4, |
633 | - .revision_min = 0, | |
634 | - .revision_max = 0, | |
636 | + .revision_min = REVISION_MIN, | |
637 | + .revision_max = REVISION_MAX, | |
635 | 638 | .create = bitmap_ipmac_create, |
636 | 639 | .create_policy = { |
637 | 640 | [IPSET_ATTR_IP] = { .type = NLA_NESTED }, |
net/netfilter/ipset/ip_set_bitmap_port.c
... | ... | @@ -22,9 +22,12 @@ |
22 | 22 | #define IP_SET_BITMAP_TIMEOUT |
23 | 23 | #include <linux/netfilter/ipset/ip_set_timeout.h> |
24 | 24 | |
25 | +#define REVISION_MIN 0 | |
26 | +#define REVISION_MAX 0 | |
27 | + | |
25 | 28 | MODULE_LICENSE("GPL"); |
26 | 29 | MODULE_AUTHOR("Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>"); |
27 | -MODULE_DESCRIPTION("bitmap:port type of IP sets"); | |
30 | +IP_SET_MODULE_DESC("bitmap:port", REVISION_MIN, REVISION_MAX); | |
28 | 31 | MODULE_ALIAS("ip_set_bitmap:port"); |
29 | 32 | |
30 | 33 | /* Type structure */ |
... | ... | @@ -487,8 +490,8 @@ |
487 | 490 | .features = IPSET_TYPE_PORT, |
488 | 491 | .dimension = IPSET_DIM_ONE, |
489 | 492 | .family = NFPROTO_UNSPEC, |
490 | - .revision_min = 0, | |
491 | - .revision_max = 0, | |
493 | + .revision_min = REVISION_MIN, | |
494 | + .revision_max = REVISION_MAX, | |
492 | 495 | .create = bitmap_port_create, |
493 | 496 | .create_policy = { |
494 | 497 | [IPSET_ATTR_PORT] = { .type = NLA_U16 }, |
net/netfilter/ipset/ip_set_hash_ip.c
... | ... | @@ -24,9 +24,12 @@ |
24 | 24 | #include <linux/netfilter/ipset/ip_set_timeout.h> |
25 | 25 | #include <linux/netfilter/ipset/ip_set_hash.h> |
26 | 26 | |
27 | +#define REVISION_MIN 0 | |
28 | +#define REVISION_MAX 0 | |
29 | + | |
27 | 30 | MODULE_LICENSE("GPL"); |
28 | 31 | MODULE_AUTHOR("Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>"); |
29 | -MODULE_DESCRIPTION("hash:ip type of IP sets"); | |
32 | +IP_SET_MODULE_DESC("hash:ip", REVISION_MIN, REVISION_MAX); | |
30 | 33 | MODULE_ALIAS("ip_set_hash:ip"); |
31 | 34 | |
32 | 35 | /* Type specific function prefix */ |
... | ... | @@ -452,8 +455,8 @@ |
452 | 455 | .features = IPSET_TYPE_IP, |
453 | 456 | .dimension = IPSET_DIM_ONE, |
454 | 457 | .family = NFPROTO_UNSPEC, |
455 | - .revision_min = 0, | |
456 | - .revision_max = 0, | |
458 | + .revision_min = REVISION_MIN, | |
459 | + .revision_max = REVISION_MAX, | |
457 | 460 | .create = hash_ip_create, |
458 | 461 | .create_policy = { |
459 | 462 | [IPSET_ATTR_HASHSIZE] = { .type = NLA_U32 }, |
net/netfilter/ipset/ip_set_hash_ipport.c
... | ... | @@ -25,9 +25,12 @@ |
25 | 25 | #include <linux/netfilter/ipset/ip_set_getport.h> |
26 | 26 | #include <linux/netfilter/ipset/ip_set_hash.h> |
27 | 27 | |
28 | +#define REVISION_MIN 0 | |
29 | +#define REVISION_MAX 1 /* SCTP and UDPLITE support added */ | |
30 | + | |
28 | 31 | MODULE_LICENSE("GPL"); |
29 | 32 | MODULE_AUTHOR("Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>"); |
30 | -MODULE_DESCRIPTION("hash:ip,port type of IP sets"); | |
33 | +IP_SET_MODULE_DESC("hash:ip,port", REVISION_MIN, REVISION_MAX); | |
31 | 34 | MODULE_ALIAS("ip_set_hash:ip,port"); |
32 | 35 | |
33 | 36 | /* Type specific function prefix */ |
... | ... | @@ -523,8 +526,8 @@ |
523 | 526 | .features = IPSET_TYPE_IP | IPSET_TYPE_PORT, |
524 | 527 | .dimension = IPSET_DIM_TWO, |
525 | 528 | .family = NFPROTO_UNSPEC, |
526 | - .revision_min = 0, | |
527 | - .revision_max = 1, /* SCTP and UDPLITE support added */ | |
529 | + .revision_min = REVISION_MIN, | |
530 | + .revision_max = REVISION_MAX, | |
528 | 531 | .create = hash_ipport_create, |
529 | 532 | .create_policy = { |
530 | 533 | [IPSET_ATTR_HASHSIZE] = { .type = NLA_U32 }, |
net/netfilter/ipset/ip_set_hash_ipportip.c
... | ... | @@ -25,9 +25,12 @@ |
25 | 25 | #include <linux/netfilter/ipset/ip_set_getport.h> |
26 | 26 | #include <linux/netfilter/ipset/ip_set_hash.h> |
27 | 27 | |
28 | +#define REVISION_MIN 0 | |
29 | +#define REVISION_MAX 1 /* SCTP and UDPLITE support added */ | |
30 | + | |
28 | 31 | MODULE_LICENSE("GPL"); |
29 | 32 | MODULE_AUTHOR("Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>"); |
30 | -MODULE_DESCRIPTION("hash:ip,port,ip type of IP sets"); | |
33 | +IP_SET_MODULE_DESC("hash:ip,port,ip", REVISION_MIN, REVISION_MAX); | |
31 | 34 | MODULE_ALIAS("ip_set_hash:ip,port,ip"); |
32 | 35 | |
33 | 36 | /* Type specific function prefix */ |
... | ... | @@ -541,8 +544,8 @@ |
541 | 544 | .features = IPSET_TYPE_IP | IPSET_TYPE_PORT | IPSET_TYPE_IP2, |
542 | 545 | .dimension = IPSET_DIM_THREE, |
543 | 546 | .family = NFPROTO_UNSPEC, |
544 | - .revision_min = 0, | |
545 | - .revision_max = 1, /* SCTP and UDPLITE support added */ | |
547 | + .revision_min = REVISION_MIN, | |
548 | + .revision_max = REVISION_MAX, | |
546 | 549 | .create = hash_ipportip_create, |
547 | 550 | .create_policy = { |
548 | 551 | [IPSET_ATTR_HASHSIZE] = { .type = NLA_U32 }, |
net/netfilter/ipset/ip_set_hash_ipportnet.c
... | ... | @@ -25,9 +25,14 @@ |
25 | 25 | #include <linux/netfilter/ipset/ip_set_getport.h> |
26 | 26 | #include <linux/netfilter/ipset/ip_set_hash.h> |
27 | 27 | |
28 | +#define REVISION_MIN 0 | |
29 | +/* 1 SCTP and UDPLITE support added */ | |
30 | +/* 2 Range as input support for IPv4 added */ | |
31 | +#define REVISION_MAX 3 /* nomatch flag support added */ | |
32 | + | |
28 | 33 | MODULE_LICENSE("GPL"); |
29 | 34 | MODULE_AUTHOR("Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>"); |
30 | -MODULE_DESCRIPTION("hash:ip,port,net type of IP sets"); | |
35 | +IP_SET_MODULE_DESC("hash:ip,port,net", REVISION_MIN, REVISION_MAX); | |
31 | 36 | MODULE_ALIAS("ip_set_hash:ip,port,net"); |
32 | 37 | |
33 | 38 | /* Type specific function prefix */ |
... | ... | @@ -695,10 +700,8 @@ |
695 | 700 | .features = IPSET_TYPE_IP | IPSET_TYPE_PORT | IPSET_TYPE_IP2, |
696 | 701 | .dimension = IPSET_DIM_THREE, |
697 | 702 | .family = NFPROTO_UNSPEC, |
698 | - .revision_min = 0, | |
699 | - /* 1 SCTP and UDPLITE support added */ | |
700 | - /* 2 Range as input support for IPv4 added */ | |
701 | - .revision_max = 3, /* nomatch flag support added */ | |
703 | + .revision_min = REVISION_MIN, | |
704 | + .revision_max = REVISION_MAX, | |
702 | 705 | .create = hash_ipportnet_create, |
703 | 706 | .create_policy = { |
704 | 707 | [IPSET_ATTR_HASHSIZE] = { .type = NLA_U32 }, |
net/netfilter/ipset/ip_set_hash_net.c
... | ... | @@ -23,9 +23,13 @@ |
23 | 23 | #include <linux/netfilter/ipset/ip_set_timeout.h> |
24 | 24 | #include <linux/netfilter/ipset/ip_set_hash.h> |
25 | 25 | |
26 | +#define REVISION_MIN 0 | |
27 | +/* 1 Range as input support for IPv4 added */ | |
28 | +#define REVISION_MAX 2 /* nomatch flag support added */ | |
29 | + | |
26 | 30 | MODULE_LICENSE("GPL"); |
27 | 31 | MODULE_AUTHOR("Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>"); |
28 | -MODULE_DESCRIPTION("hash:net type of IP sets"); | |
32 | +IP_SET_MODULE_DESC("hash:net", REVISION_MIN, REVISION_MAX); | |
29 | 33 | MODULE_ALIAS("ip_set_hash:net"); |
30 | 34 | |
31 | 35 | /* Type specific function prefix */ |
... | ... | @@ -535,9 +539,8 @@ |
535 | 539 | .features = IPSET_TYPE_IP, |
536 | 540 | .dimension = IPSET_DIM_ONE, |
537 | 541 | .family = NFPROTO_UNSPEC, |
538 | - .revision_min = 0, | |
539 | - /* = 1 Range as input support for IPv4 added */ | |
540 | - .revision_max = 2, /* nomatch flag support added */ | |
542 | + .revision_min = REVISION_MIN, | |
543 | + .revision_max = REVISION_MAX, | |
541 | 544 | .create = hash_net_create, |
542 | 545 | .create_policy = { |
543 | 546 | [IPSET_ATTR_HASHSIZE] = { .type = NLA_U32 }, |
net/netfilter/ipset/ip_set_hash_netiface.c
... | ... | @@ -24,9 +24,13 @@ |
24 | 24 | #include <linux/netfilter/ipset/ip_set_timeout.h> |
25 | 25 | #include <linux/netfilter/ipset/ip_set_hash.h> |
26 | 26 | |
27 | +#define REVISION_MIN 0 | |
28 | +/* 1 nomatch flag support added */ | |
29 | +#define REVISION_MAX 2 /* /0 support added */ | |
30 | + | |
27 | 31 | MODULE_LICENSE("GPL"); |
28 | 32 | MODULE_AUTHOR("Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>"); |
29 | -MODULE_DESCRIPTION("hash:net,iface type of IP sets"); | |
33 | +IP_SET_MODULE_DESC("hash:net,iface", REVISION_MIN, REVISION_MAX); | |
30 | 34 | MODULE_ALIAS("ip_set_hash:net,iface"); |
31 | 35 | |
32 | 36 | /* Interface name rbtree */ |
... | ... | @@ -773,9 +777,8 @@ |
773 | 777 | .features = IPSET_TYPE_IP | IPSET_TYPE_IFACE, |
774 | 778 | .dimension = IPSET_DIM_TWO, |
775 | 779 | .family = NFPROTO_UNSPEC, |
776 | - .revision_min = 0, | |
777 | - /* = 1, nomatch flag support added */ | |
778 | - .revision_max = 2, /* /0 support added */ | |
780 | + .revision_min = REVISION_MIN, | |
781 | + .revision_max = REVISION_MAX, | |
779 | 782 | .create = hash_netiface_create, |
780 | 783 | .create_policy = { |
781 | 784 | [IPSET_ATTR_HASHSIZE] = { .type = NLA_U32 }, |
net/netfilter/ipset/ip_set_hash_netport.c
... | ... | @@ -24,9 +24,14 @@ |
24 | 24 | #include <linux/netfilter/ipset/ip_set_getport.h> |
25 | 25 | #include <linux/netfilter/ipset/ip_set_hash.h> |
26 | 26 | |
27 | +#define REVISION_MIN 0 | |
28 | +/* 1 SCTP and UDPLITE support added */ | |
29 | +/* 2 Range as input support for IPv4 added */ | |
30 | +#define REVISION_MAX 3 /* nomatch flag support added */ | |
31 | + | |
27 | 32 | MODULE_LICENSE("GPL"); |
28 | 33 | MODULE_AUTHOR("Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>"); |
29 | -MODULE_DESCRIPTION("hash:net,port type of IP sets"); | |
34 | +IP_SET_MODULE_DESC("hash:net,port", REVISION_MIN, REVISION_MAX); | |
30 | 35 | MODULE_ALIAS("ip_set_hash:net,port"); |
31 | 36 | |
32 | 37 | /* Type specific function prefix */ |
... | ... | @@ -648,10 +653,8 @@ |
648 | 653 | .features = IPSET_TYPE_IP | IPSET_TYPE_PORT, |
649 | 654 | .dimension = IPSET_DIM_TWO, |
650 | 655 | .family = NFPROTO_UNSPEC, |
651 | - .revision_min = 0, | |
652 | - /* 1 SCTP and UDPLITE support added */ | |
653 | - /* 2, Range as input support for IPv4 added */ | |
654 | - .revision_max = 3, /* nomatch flag support added */ | |
656 | + .revision_min = REVISION_MIN, | |
657 | + .revision_max = REVISION_MAX, | |
655 | 658 | .create = hash_netport_create, |
656 | 659 | .create_policy = { |
657 | 660 | [IPSET_ATTR_HASHSIZE] = { .type = NLA_U32 }, |
net/netfilter/ipset/ip_set_list_set.c
... | ... | @@ -16,9 +16,12 @@ |
16 | 16 | #include <linux/netfilter/ipset/ip_set_timeout.h> |
17 | 17 | #include <linux/netfilter/ipset/ip_set_list.h> |
18 | 18 | |
19 | +#define REVISION_MIN 0 | |
20 | +#define REVISION_MAX 0 | |
21 | + | |
19 | 22 | MODULE_LICENSE("GPL"); |
20 | 23 | MODULE_AUTHOR("Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>"); |
21 | -MODULE_DESCRIPTION("list:set type of IP sets"); | |
24 | +IP_SET_MODULE_DESC("list:set", REVISION_MIN, REVISION_MAX); | |
22 | 25 | MODULE_ALIAS("ip_set_list:set"); |
23 | 26 | |
24 | 27 | /* Member elements without and with timeout */ |
... | ... | @@ -579,8 +582,8 @@ |
579 | 582 | .features = IPSET_TYPE_NAME | IPSET_DUMP_LAST, |
580 | 583 | .dimension = IPSET_DIM_ONE, |
581 | 584 | .family = NFPROTO_UNSPEC, |
582 | - .revision_min = 0, | |
583 | - .revision_max = 0, | |
585 | + .revision_min = REVISION_MIN, | |
586 | + .revision_max = REVISION_MAX, | |
584 | 587 | .create = list_set_create, |
585 | 588 | .create_policy = { |
586 | 589 | [IPSET_ATTR_SIZE] = { .type = NLA_U32 }, |