diff options
Diffstat (limited to 'net/ipv6/tcp_ipv6.c')
| -rw-r--r-- | net/ipv6/tcp_ipv6.c | 4 | 
1 files changed, 2 insertions, 2 deletions
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c index 3e06799b37a..a07b59c528f 100644 --- a/net/ipv6/tcp_ipv6.c +++ b/net/ipv6/tcp_ipv6.c @@ -697,7 +697,7 @@ static int tcp_v6_parse_md5_keys (struct sock *sk, char __user *optval,  	if (!cmd.tcpm_keylen) {  		if (!tcp_sk(sk)->md5sig_info)  			return -ENOENT; -		if (ipv6_addr_type(&sin6->sin6_addr) & IPV6_ADDR_MAPPED) +		if (ipv6_addr_v4mapped(&sin6->sin6_addr))  			return tcp_v4_md5_do_del(sk, sin6->sin6_addr.s6_addr32[3]);  		return tcp_v6_md5_do_del(sk, &sin6->sin6_addr);  	} @@ -720,7 +720,7 @@ static int tcp_v6_parse_md5_keys (struct sock *sk, char __user *optval,  	newkey = kmemdup(cmd.tcpm_key, cmd.tcpm_keylen, GFP_KERNEL);  	if (!newkey)  		return -ENOMEM; -	if (ipv6_addr_type(&sin6->sin6_addr) & IPV6_ADDR_MAPPED) { +	if (ipv6_addr_v4mapped(&sin6->sin6_addr)) {  		return tcp_v4_md5_do_add(sk, sin6->sin6_addr.s6_addr32[3],  					 newkey, cmd.tcpm_keylen);  	}  |