|
@@ -590,6 +590,7 @@ static int tcp_v6_md5_do_add(struct sock *sk, struct in6_addr *peer,
|
|
kfree(newkey);
|
|
kfree(newkey);
|
|
return -ENOMEM;
|
|
return -ENOMEM;
|
|
}
|
|
}
|
|
|
|
+ sk->sk_route_caps &= ~NETIF_F_GSO_MASK;
|
|
}
|
|
}
|
|
tcp_alloc_md5sig_pool();
|
|
tcp_alloc_md5sig_pool();
|
|
if (tp->md5sig_info->alloced6 == tp->md5sig_info->entries6) {
|
|
if (tp->md5sig_info->alloced6 == tp->md5sig_info->entries6) {
|
|
@@ -724,6 +725,7 @@ static int tcp_v6_parse_md5_keys (struct sock *sk, char __user *optval,
|
|
return -ENOMEM;
|
|
return -ENOMEM;
|
|
|
|
|
|
tp->md5sig_info = p;
|
|
tp->md5sig_info = p;
|
|
|
|
+ sk->sk_route_caps &= ~NETIF_F_GSO_MASK;
|
|
}
|
|
}
|
|
|
|
|
|
newkey = kmemdup(cmd.tcpm_key, cmd.tcpm_keylen, GFP_KERNEL);
|
|
newkey = kmemdup(cmd.tcpm_key, cmd.tcpm_keylen, GFP_KERNEL);
|