ipvs: Expose ip_vs_ftp module parameters via sysfs.
authorKrzysztof Wilczynski <krzysztof.wilczynski@linux.com>
Mon, 12 Sep 2011 09:15:15 +0000 (10:15 +0100)
committerPablo Neira Ayuso <pablo@netfilter.org>
Tue, 1 Nov 2011 08:19:21 +0000 (09:19 +0100)
This is to expose "ports" parameter via sysfs so it can be read
at any time in order to determine what port or ports were passed
to the module at the point when it was loaded.

Signed-off-by: Krzysztof Wilczynski <krzysztof.wilczynski@linux.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
net/netfilter/ipvs/ip_vs_ftp.c

index 4490a32ad5b2fbfb3b47f3df0b21e54b30020597..538d74ee4f68bc18e7bb379d7432388aba305425 100644 (file)
@@ -52,8 +52,9 @@
  * List of ports (up to IP_VS_APP_MAX_PORTS) to be handled by helper
  * First port is set to the default port.
  */
+static unsigned int ports_count = 1;
 static unsigned short ports[IP_VS_APP_MAX_PORTS] = {21, 0};
-module_param_array(ports, ushort, NULL, 0);
+module_param_array(ports, ushort, &ports_count, 0444);
 MODULE_PARM_DESC(ports, "Ports to monitor for FTP control commands");
 
 
@@ -449,7 +450,7 @@ static int __net_init __ip_vs_ftp_init(struct net *net)
        if (ret)
                goto err_exit;
 
-       for (i=0; i<IP_VS_APP_MAX_PORTS; i++) {
+       for (i = 0; i < ports_count; i++) {
                if (!ports[i])
                        continue;
                ret = register_ip_vs_app_inc(net, app, app->protocol, ports[i]);