On Mon, Sep 19, 2022 at 01:51:11PM +0200, Joash Naidoo wrote: > Coding style fix. Fix too many leading tabs and line length. > > Signed-off-by: Joash Naidoo <joash.n09@xxxxxxxxx> > --- > Changes in v2: > - Flip additional nested if conditions and don't reverse the last if statement > - Move declarations to start of function > - Separate converting __constant_htons to htons to another patch > --- > drivers/staging/r8188eu/core/rtw_br_ext.c | 69 ++++++++++++----------- > 1 file changed, 36 insertions(+), 33 deletions(-) > > diff --git a/drivers/staging/r8188eu/core/rtw_br_ext.c b/drivers/staging/r8188eu/core/rtw_br_ext.c > index bca20fe5c..2fec3bf39 100644 > --- a/drivers/staging/r8188eu/core/rtw_br_ext.c > +++ b/drivers/staging/r8188eu/core/rtw_br_ext.c > @@ -601,42 +601,45 @@ struct dhcpMessage { > > void dhcp_flag_bcast(struct adapter *priv, struct sk_buff *skb) > { > + __be16 protocol = *((__be16 *)(skb->data + 2 * ETH_ALEN)); ^^^^^^^^^ Dereferencing skb before it has been NULL checked. Also do we really know how large the skb is? We seem to making a lot of assumptions... > + struct iphdr *iph = (struct iphdr *)(skb->data + ETH_HLEN); > + struct udphdr *udph = (struct udphdr *)((size_t)iph + (iph->ihl << 2)); > + /* DHCP request */ > + struct dhcpMessage *dhcph = > + (struct dhcpMessage *)((size_t)udph + sizeof(struct udphdr)); > + u32 cookie = be32_to_cpu((__be32)dhcph->cookie); > + > if (!skb) ^^^^ Checked too late. > return; > [ snip ] > + if (iph->protocol != IPPROTO_UDP) /* UDP */ > + return; > + > + if ((udph->source != __constant_htons(CLIENT_PORT)) && > + (udph->dest != __constant_htons(SERVER_PORT))) The && needs to be changed to ||. > + return; > + regards, dan carpenter