Ver código fonte

audit: Do not send uninitialized data for AUDIT_TTY_GET

audit_receive_msg() sends uninitialized data for AUDIT_TTY_GET when
the task was not found.

Send reply only when task was found.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Eric Paris <eparis@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Thomas Gleixner 15 anos atrás
pai
commit
207032051a
1 arquivos alterados com 4 adições e 2 exclusões
  1. 4 2
      kernel/audit.c

+ 4 - 2
kernel/audit.c

@@ -884,8 +884,10 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
 			spin_unlock_irq(&tsk->sighand->siglock);
 			spin_unlock_irq(&tsk->sighand->siglock);
 		}
 		}
 		read_unlock(&tasklist_lock);
 		read_unlock(&tasklist_lock);
-		audit_send_reply(NETLINK_CB(skb).pid, seq, AUDIT_TTY_GET, 0, 0,
-				 &s, sizeof(s));
+
+		if (!err)
+			audit_send_reply(NETLINK_CB(skb).pid, seq,
+					 AUDIT_TTY_GET, 0, 0, &s, sizeof(s));
 		break;
 		break;
 	}
 	}
 	case AUDIT_TTY_SET: {
 	case AUDIT_TTY_SET: {