OSDN Git Service

batman-adv: Return EINVAL on invalid gw_bandwidth change
authorSven Eckelmann <sven@narfation.org>
Sun, 21 Jun 2015 12:42:49 +0000 (14:42 +0200)
committerAntonio Quartulli <antonio@meshcoding.com>
Mon, 24 Aug 2015 22:12:21 +0000 (00:12 +0200)
Invalid speed settings by the user are currently acknowledged as correct
but not stored. Instead the return of the store operation of the file
"gw_bandwidth" should indicate that the given value is not acceptable.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch>
Signed-off-by: Antonio Quartulli <antonio@meshcoding.com>
net/batman-adv/gateway_common.c

index c50931c..6b930a6 100644 (file)
@@ -19,6 +19,7 @@
 #include "main.h"
 
 #include <linux/atomic.h>
+#include <linux/errno.h>
 #include <linux/byteorder/generic.h>
 #include <linux/kernel.h>
 #include <linux/netdevice.h>
@@ -160,7 +161,7 @@ ssize_t batadv_gw_bandwidth_set(struct net_device *net_dev, char *buff,
 
        ret = batadv_parse_gw_bandwidth(net_dev, buff, &down_new, &up_new);
        if (!ret)
-               goto end;
+               return -EINVAL;
 
        if (!down_new)
                down_new = 1;
@@ -184,7 +185,6 @@ ssize_t batadv_gw_bandwidth_set(struct net_device *net_dev, char *buff,
        atomic_set(&bat_priv->gw.bandwidth_up, up_new);
        batadv_gw_tvlv_container_update(bat_priv);
 
-end:
        return count;
 }