]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
selinux: cleanup error reporting in selinux_nlmsg_perm()
authorRichard Guy Briggs <rgb@redhat.com>
Fri, 19 Sep 2014 00:50:17 +0000 (20:50 -0400)
committerBen Hutchings <ben@decadent.org.uk>
Thu, 11 Jun 2020 18:05:38 +0000 (19:05 +0100)
commit e173fb2646a832b424c80904c306b816760ce477 upstream.

Convert audit_log() call to WARN_ONCE().

Rename "type=" to nlmsg_type=" to avoid confusion with the audit record
type.

Added "protocol=" to help track down which protocol (NETLINK_AUDIT?) was used
within the netlink protocol family.

Signed-off-by: Richard Guy Briggs <rgb@redhat.com>
[Rewrote the patch subject line]
Signed-off-by: Paul Moore <pmoore@redhat.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
security/selinux/hooks.c

index 60d50812900fb928073090f3a1d99835a0b24f2e..7d7631ef938ef4460f9e4949b431f5456d833c32 100644 (file)
@@ -4683,10 +4683,9 @@ static int selinux_nlmsg_perm(struct sock *sk, struct sk_buff *skb)
        err = selinux_nlmsg_lookup(sksec->sclass, nlh->nlmsg_type, &perm);
        if (err) {
                if (err == -EINVAL) {
-                       audit_log(current->audit_context, GFP_KERNEL, AUDIT_SELINUX_ERR,
-                                 "SELinux:  unrecognized netlink message"
-                                 " type=%hu for sclass=%hu\n",
-                                 nlh->nlmsg_type, sksec->sclass);
+                       WARN_ONCE(1, "selinux_nlmsg_perm: unrecognized netlink message:"
+                                 " protocol=%hu nlmsg_type=%hu sclass=%hu\n",
+                                 sk->sk_protocol, nlh->nlmsg_type, sksec->sclass);
                        if (!selinux_enforcing || security_get_allow_unknown())
                                err = 0;
                }