gw_node_delete is defined with "void" as return type, but still tries to return a value. The called function gw_node_delete is also return as void and thus doesn't provide a value for us.
Signed-off-by: Sven Eckelmann sven@narfation.org --- gateway_client.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/gateway_client.c b/gateway_client.c index ab597c4..cf7f95e 100644 --- a/gateway_client.c +++ b/gateway_client.c @@ -352,7 +352,7 @@ unlock:
void gw_node_delete(struct bat_priv *bat_priv, struct orig_node *orig_node) { - return gw_node_update(bat_priv, orig_node, 0); + gw_node_update(bat_priv, orig_node, 0); }
void gw_node_purge(struct bat_priv *bat_priv)
strict_strtoul as used in parse_gw_bandwidth is defined for unsigned long and strict_strtol should be used instead for long.
Signed-off-by: Sven Eckelmann sven@narfation.org --- gateway_common.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/gateway_common.c b/gateway_common.c index ed3bd36..e74307b 100644 --- a/gateway_common.c +++ b/gateway_common.c @@ -97,7 +97,7 @@ static bool parse_gw_bandwidth(struct net_device *net_dev, char *buff, *tmp_ptr = '\0'; }
- ret = strict_strtoul(buff, 10, &ldown); + ret = strict_strtol(buff, 10, &ldown); if (ret) { bat_err(net_dev, "Download speed of gateway mode invalid: %s\n", @@ -122,7 +122,7 @@ static bool parse_gw_bandwidth(struct net_device *net_dev, char *buff, *tmp_ptr = '\0'; }
- ret = strict_strtoul(slash_ptr + 1, 10, &lup); + ret = strict_strtol(slash_ptr + 1, 10, &lup); if (ret) { bat_err(net_dev, "Upload speed of gateway mode invalid: "
On Saturday 04 June 2011 12:40:38 Sven Eckelmann wrote:
strict_strtoul as used in parse_gw_bandwidth is defined for unsigned long and strict_strtol should be used instead for long.
Don't we need a strict_strtol macro in compat.h next to the strict_strtoul that we have now ?
Cheers, Marek
Marek Lindner wrote:
On Saturday 04 June 2011 12:40:38 Sven Eckelmann wrote:
strict_strtoul as used in parse_gw_bandwidth is defined for unsigned long and strict_strtol should be used instead for long.
Don't we need a strict_strtol macro in compat.h next to the strict_strtoul that we have now ?
Yes, forgot to add that change to the patch.
Kind regards, Sven
strict_strtoul as used in parse_gw_bandwidth is defined for unsigned long and strict_strtol should be used instead for long.
Signed-off-by: Sven Eckelmann sven@narfation.org --- Added compat.h helper function
compat.h | 10 ++++++++++ gateway_common.c | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/compat.h b/compat.h index 0f0e66e..66a8adc 100644 --- a/compat.h +++ b/compat.h @@ -104,6 +104,16 @@ static inline int skb_cow_head(struct sk_buff *skb, unsigned int headroom) ret; \ })
+#define strict_strtol(cp, base, res) \ + ({ \ + int ret = 0; \ + char *endp; \ + *res = simple_strtol(cp, &endp, base); \ + if (cp == endp) \ + ret = -EINVAL; \ + ret; \ +}) + #define to_battr(a) container_of(a, struct bat_attribute, attr)
ssize_t bat_wrapper_show(struct kobject *kobj, struct attribute *attr, diff --git a/gateway_common.c b/gateway_common.c index ed3bd36..e74307b 100644 --- a/gateway_common.c +++ b/gateway_common.c @@ -97,7 +97,7 @@ static bool parse_gw_bandwidth(struct net_device *net_dev, char *buff, *tmp_ptr = '\0'; }
- ret = strict_strtoul(buff, 10, &ldown); + ret = strict_strtol(buff, 10, &ldown); if (ret) { bat_err(net_dev, "Download speed of gateway mode invalid: %s\n", @@ -122,7 +122,7 @@ static bool parse_gw_bandwidth(struct net_device *net_dev, char *buff, *tmp_ptr = '\0'; }
- ret = strict_strtoul(slash_ptr + 1, 10, &lup); + ret = strict_strtol(slash_ptr + 1, 10, &lup); if (ret) { bat_err(net_dev, "Upload speed of gateway mode invalid: "
On Saturday, June 04, 2011 02:00:49 PM Sven Eckelmann wrote:
strict_strtoul as used in parse_gw_bandwidth is defined for unsigned long and strict_strtol should be used instead for long.
Applied in revision 1ad4162.
Thanks, Marek
On Saturday, June 04, 2011 12:40:37 PM Sven Eckelmann wrote:
gw_node_delete is defined with "void" as return type, but still tries to return a value. The called function gw_node_delete is also return as void and thus doesn't provide a value for us.
Applied in revision 4a6c93d.
Thanks, Marek
b.a.t.m.a.n@lists.open-mesh.org