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

Commit d2b02ed9 authored by Chris Wright's avatar Chris Wright Committed by David S. Miller
Browse files

[IPV6] fix ipv6_getsockopt_sticky copy_to_user leak



User supplied len < 0 can cause leak of kernel memory.
Use unsigned compare instead.

Signed-off-by: default avatarChris Wright <chrisw@sous-sol.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent dfee0a72
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -804,7 +804,7 @@ static int ipv6_getsockopt_sticky(struct sock *sk, struct ipv6_txoptions *opt,
		return 0;
	hdr = opt->hopopt;

	len = min_t(int, len, ipv6_optlen(hdr));
	len = min_t(unsigned int, len, ipv6_optlen(hdr));
	if (copy_to_user(optval, hdr, ipv6_optlen(hdr)))
		return -EFAULT;
	return len;