2018-03-23 22:55:09

by Colin King

[permalink] [raw]
Subject: [PATCH][next] batman-adv: don't pass a NULL hard_iface to batadv_hardif_put

From: Colin Ian King <[email protected]>

In the case where hard_iface is NULL, the error path may pass a null
pointer to batadv_hardif_put causing a null pointer dereference error.
Avoid this by only calling the function if hard_iface not null.

Detected by CoverityScan, CID#1466456 ("Explicit null dereferenced")

Fixes: 53dd9a68ba68 ("batman-adv: add multicast flags netlink support")
Signed-off-by: Colin Ian King <[email protected]>
---
net/batman-adv/multicast.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/batman-adv/multicast.c b/net/batman-adv/multicast.c
index de3a055f7dd8..bd0ea374d043 100644
--- a/net/batman-adv/multicast.c
+++ b/net/batman-adv/multicast.c
@@ -1536,7 +1536,7 @@ batadv_mcast_netlink_get_primary(struct netlink_callback *cb,

if (!ret && primary_if)
*primary_if = hard_iface;
- else
+ else if (hard_iface)
batadv_hardif_put(hard_iface);

return ret;
--
2.15.1



2018-03-24 09:44:21

by Sven Eckelmann

[permalink] [raw]
Subject: Re: [B.A.T.M.A.N.] [PATCH][next] batman-adv: don't pass a NULL hard_iface to batadv_hardif_put

On Freitag, 23. M?rz 2018 23:53:50 CET Colin King wrote:
> From: Colin Ian King <[email protected]>
>
> In the case where hard_iface is NULL, the error path may pass a null
> pointer to batadv_hardif_put causing a null pointer dereference error.
> Avoid this by only calling the function if hard_iface not null.
>
> Detected by CoverityScan, CID#1466456 ("Explicit null dereferenced")
>
> Fixes: 53dd9a68ba68 ("batman-adv: add multicast flags netlink support")
> Signed-off-by: Colin Ian King <[email protected]>
> ---
> net/batman-adv/multicast.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)

Queued up for David in batadv/net-next as d5863c47d725 [1]

Now I only have to find out why I didn't receive the mail about this
from coverity.

Thanks,
Sven

[1] https://git.open-mesh.org/linux-merge.git/commit/d5863c47d7255448ec01713cbdb4f94b370d86ad


Attachments:
signature.asc (849.00 B)
This is a digitally signed message part.

2018-03-26 13:07:17

by Simon Wunderlich

[permalink] [raw]
Subject: Re: [PATCH][next] batman-adv: don't pass a NULL hard_iface to batadv_hardif_put

Hi,

this looks good. David, would you pick this patch directly? Otherwise, I can
send a pull request, but right now we would only have this single patch for
net-next.

Acked-by: Simon Wunderlich <[email protected]>
Acked-by: Sven Eckelmann <[email protected]>

(just discussed with Sven offline)

Thank you,
Simon

On Friday, March 23, 2018 10:53:50 PM CEST Colin King wrote:
> From: Colin Ian King <[email protected]>
>
> In the case where hard_iface is NULL, the error path may pass a null
> pointer to batadv_hardif_put causing a null pointer dereference error.
> Avoid this by only calling the function if hard_iface not null.
>
> Detected by CoverityScan, CID#1466456 ("Explicit null dereferenced")
>
> Fixes: 53dd9a68ba68 ("batman-adv: add multicast flags netlink support")
> Signed-off-by: Colin Ian King <[email protected]>
> ---
> net/batman-adv/multicast.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/net/batman-adv/multicast.c b/net/batman-adv/multicast.c
> index de3a055f7dd8..bd0ea374d043 100644
> --- a/net/batman-adv/multicast.c
> +++ b/net/batman-adv/multicast.c
> @@ -1536,7 +1536,7 @@ batadv_mcast_netlink_get_primary(struct
> netlink_callback *cb,
>
> if (!ret && primary_if)
> *primary_if = hard_iface;
> - else
> + else if (hard_iface)
> batadv_hardif_put(hard_iface);
>
> return ret;


Attachments:
signature.asc (849.00 B)
This is a digitally signed message part.