Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3ebbe0cd authored by Yasuyuki Kozakai's avatar Yasuyuki Kozakai Committed by David S. Miller
Browse files

[NETFILTER]: nfnetlink: Fix calculation of minimum message length



At least, valid nfnetlink message should have nlmsghdr and nfgenmsg.

Signed-off-by: default avatarYasuyuki Kozakai <yasuyuki.kozakai@toshiba.co.jp>
Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent f16c9107
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -162,7 +162,7 @@ nfnetlink_check_attributes(struct nfnetlink_subsystem *subsys,
		return -EINVAL;
	}

	min_len = NLMSG_ALIGN(sizeof(struct nfgenmsg));
	min_len = NLMSG_SPACE(sizeof(struct nfgenmsg));
	if (unlikely(nlh->nlmsg_len < min_len))
		return -EINVAL;

@@ -236,8 +236,7 @@ static inline int nfnetlink_rcv_msg(struct sk_buff *skb,
	}

	/* All the messages must at least contain nfgenmsg */
	if (nlh->nlmsg_len < 
			NLMSG_LENGTH(NLMSG_ALIGN(sizeof(struct nfgenmsg)))) {
	if (nlh->nlmsg_len < NLMSG_SPACE(sizeof(struct nfgenmsg))) {
		DEBUGP("received message was too short\n");
		return 0;
	}