From 2da431d3685c65d4355d387e213a3cd39d5b59f3 Mon Sep 17 00:00:00 2001 From: Neutron Soutmun Date: Thu, 10 May 2012 08:05:53 +0200 Subject: Add dynamic module support to ipset userspace tool The patch adds supporting dynamic modules for the set types to ipset userspace tool. The dynamic module support can be enabled by the --enable-settype-modules of "configure". The list of set types to be compiled as dynamic modules can be specified in the --with-settype-modules-list option. Example --enable-settype-modules \ --with-settype-modules-list="ipset_hash_ip ipset_hash_ipport" The keyword "all" can be used to compile all set types as dynamic modules. --- lib/ipset_hash_netport.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'lib/ipset_hash_netport.c') diff --git a/lib/ipset_hash_netport.c b/lib/ipset_hash_netport.c index d8d220e..285f06c 100644 --- a/lib/ipset_hash_netport.c +++ b/lib/ipset_hash_netport.c @@ -63,7 +63,7 @@ static const char hash_netport1_usage[] = " Adding/deleting multiple elements with TCP/SCTP/UDP/UDPLITE\n" " port range is supported both for IPv4 and IPv6.\n"; -struct ipset_type ipset_hash_netport1 = { +static struct ipset_type ipset_hash_netport1 = { .name = "hash:net,port", .alias = { "netporthash", NULL }, .revision = 1, @@ -137,7 +137,7 @@ static const char hash_netport2_usage[] = " Adding/deleting multiple elements with TCP/SCTP/UDP/UDPLITE\n" " port range is supported both for IPv4 and IPv6.\n"; -struct ipset_type ipset_hash_netport2 = { +static struct ipset_type ipset_hash_netport2 = { .name = "hash:net,port", .alias = { "netporthash", NULL }, .revision = 2, @@ -225,7 +225,7 @@ static const char hash_netport3_usage[] = " Adding/deleting multiple elements with TCP/SCTP/UDP/UDPLITE\n" " port range is supported both for IPv4 and IPv6.\n"; -struct ipset_type ipset_hash_netport3 = { +static struct ipset_type ipset_hash_netport3 = { .name = "hash:net,port", .alias = { "netporthash", NULL }, .revision = 3, @@ -286,3 +286,10 @@ struct ipset_type ipset_hash_netport3 = { .usage = hash_netport3_usage, .usagefn = ipset_port_usage, }; + +void _init(void) +{ + ipset_type_add(&ipset_hash_netport1); + ipset_type_add(&ipset_hash_netport2); + ipset_type_add(&ipset_hash_netport3); +} -- cgit v1.2.3