Re: [PATCH] net: bridge: fix potential null pointer dereference on return from br_port_get_rtnl()

From: Nikolay Aleksandrov
Date: Thu Jun 21 2018 - 19:35:50 EST


On 06/22/2018 01:20 AM, David Miller wrote:
> From: Garry McNulty <garrmcnu@xxxxxxxxx>
> Date: Thu, 21 Jun 2018 21:14:27 +0100
>
>> br_port_get_rtnl() can return NULL if the network device is not a bridge
>> port (IFF_BRIDGE_PORT flag not set). br_port_slave_changelink() and
>> br_port_fill_slave_info() callbacks dereference this pointer without
>> checking. Currently this is not a problem because slave devices always
>> set this flag. Add null check in case these conditions ever changye.
>>
>> Detected by CoverityScan, CID 1339613 ("Dereference null return value")
>>
>> Signed-off-by: Garry McNulty <garrmcnu@xxxxxxxxx>
>
> I don't think this is reasonable.
>
> The bridge code will never, ever, install a slave that doesn't have
> that bit set. It's the most fundamental aspect of how these objects
> are managed.
>
+1

This keeps coming up, here's the previous one:
https://patchwork.ozlabs.org/patch/896046/

Please do a more thorough check if these conditions can actually occur.
In this case, as Dave said, they cannot.

To be explicit as with the patch I mentioned above:
Nacked-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>

You can find more info in my reply to the patch above.

Thanks,
Nik