[PATHv2 2/9] net: sandbox: fix NULL pointer derefences
Sean Anderson
seanga2 at gmail.com
Tue Dec 26 07:25:13 CET 2023
On 12/26/23 01:18, Maxim Uvarov wrote:
>
>
> On Tue, 26 Dec 2023 at 04:43, Sean Anderson <seanga2 at gmail.com <mailto:seanga2 at gmail.com>> wrote:
>
> On 12/25/23 10:39, Maxim Uvarov wrote:
> > Add additional checks for NULL pointers.
> >
> > Signed-off-by: Maxim Uvarov <maxim.uvarov at linaro.org <mailto:maxim.uvarov at linaro.org>>
> > ---
> > drivers/net/sandbox.c | 3 +++
> > 1 file changed, 3 insertions(+)
> >
> > diff --git a/drivers/net/sandbox.c b/drivers/net/sandbox.c
> > index 13022addb6..d91935e032 100644
> > --- a/drivers/net/sandbox.c
> > +++ b/drivers/net/sandbox.c
> > @@ -65,6 +65,9 @@ int sandbox_eth_arp_req_to_reply(struct udevice *dev, void *packet,
> > struct ethernet_hdr *eth_recv;
> > struct arp_hdr *arp_recv;
> >
> > + if (!priv)
> > + return -EAGAIN;
> > +
>
> When can priv be NULL?
>
> --Sean
>
>
> Function
> struct eth_sandbox_priv *priv = dev_get_priv(dev)
> can return NULL. If you ask why it doesn't return NULL without lwip patches and can return NULL with lwip patch while there is no clear code dependency..
> Then I can not say right now and need additional investigation. But anyway the return code of dev_dev_priv() has to be checked I think.
If you set priv_auto to a nonzero value, dev_get_priv will always return non-null
and does not need to be checked. So this is a NACK from me until you can justify this.
--Sean
More information about the U-Boot
mailing list