diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c index 305248cfb5d2fa0f67f3fb1b4584145941dca0ec..6ff327c44c9fa741226a54a69e5d4414af230d1f 100644 --- a/net/netlink/af_netlink.c +++ b/net/netlink/af_netlink.c @@ -1852,6 +1852,11 @@ static int netlink_sendmsg(struct socket *sock, struct msghdr *msg, size_t len) if (msg->msg_flags&MSG_OOB) return -EOPNOTSUPP; + if (len == 0) { + pr_warn_once("Zero length message leads to an empty skb\n"); + return -ENODATA; + } + err = scm_send(sock, msg, &scm, true); if (err < 0) return err;