lsm: clean up redundant NULL pointer check
authorXiu Jianfeng <xiujianfeng@huawei.com>
Tue, 16 Aug 2022 02:44:01 +0000 (22:44 -0400)
committerPaul Moore <paul@paul-moore.com>
Tue, 16 Aug 2022 02:44:01 +0000 (22:44 -0400)
The implements of {ip,tcp,udp,dccp,sctp,ipv6}_hdr(skb) guarantee that
they will never return NULL, and elsewhere users don't do the check
as well, so remove the check here.

Signed-off-by: Xiu Jianfeng <xiujianfeng@huawei.com>
[PM: subject line tweaks]
Signed-off-by: Paul Moore <paul@paul-moore.com>
security/lsm_audit.c

index 78a278f..75cc3f8 100644 (file)
@@ -44,9 +44,6 @@ int ipv4_skb_to_auditdata(struct sk_buff *skb,
        struct iphdr *ih;
 
        ih = ip_hdr(skb);
-       if (ih == NULL)
-               return -EINVAL;
-
        ad->u.net->v4info.saddr = ih->saddr;
        ad->u.net->v4info.daddr = ih->daddr;
 
@@ -59,8 +56,6 @@ int ipv4_skb_to_auditdata(struct sk_buff *skb,
        switch (ih->protocol) {
        case IPPROTO_TCP: {
                struct tcphdr *th = tcp_hdr(skb);
-               if (th == NULL)
-                       break;
 
                ad->u.net->sport = th->source;
                ad->u.net->dport = th->dest;
@@ -68,8 +63,6 @@ int ipv4_skb_to_auditdata(struct sk_buff *skb,
        }
        case IPPROTO_UDP: {
                struct udphdr *uh = udp_hdr(skb);
-               if (uh == NULL)
-                       break;
 
                ad->u.net->sport = uh->source;
                ad->u.net->dport = uh->dest;
@@ -77,8 +70,6 @@ int ipv4_skb_to_auditdata(struct sk_buff *skb,
        }
        case IPPROTO_DCCP: {
                struct dccp_hdr *dh = dccp_hdr(skb);
-               if (dh == NULL)
-                       break;
 
                ad->u.net->sport = dh->dccph_sport;
                ad->u.net->dport = dh->dccph_dport;
@@ -86,8 +77,7 @@ int ipv4_skb_to_auditdata(struct sk_buff *skb,
        }
        case IPPROTO_SCTP: {
                struct sctphdr *sh = sctp_hdr(skb);
-               if (sh == NULL)
-                       break;
+
                ad->u.net->sport = sh->source;
                ad->u.net->dport = sh->dest;
                break;
@@ -115,8 +105,6 @@ int ipv6_skb_to_auditdata(struct sk_buff *skb,
        __be16 frag_off;
 
        ip6 = ipv6_hdr(skb);
-       if (ip6 == NULL)
-               return -EINVAL;
        ad->u.net->v6info.saddr = ip6->saddr;
        ad->u.net->v6info.daddr = ip6->daddr;
        /* IPv6 can have several extension header before the Transport header