Unverified Commit 2efde606 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!7336 inet: read sk->sk_family once in inet_recv_error()

parents d946fcee c88362b7
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -1609,10 +1609,12 @@ EXPORT_SYMBOL(inet_current_timestamp);

int inet_recv_error(struct sock *sk, struct msghdr *msg, int len, int *addr_len)
{
	if (sk->sk_family == AF_INET)
	unsigned int family = READ_ONCE(sk->sk_family);

	if (family == AF_INET)
		return ip_recv_error(sk, msg, len, addr_len);
#if IS_ENABLED(CONFIG_IPV6)
	if (sk->sk_family == AF_INET6)
	if (family == AF_INET6)
		return pingv6_ops.ipv6_recv_error(sk, msg, len, addr_len);
#endif
	return -EINVAL;