|
@@ -828,7 +828,7 @@ static int __ip_append_data(struct sock *sk,
|
|
|
|
|
|
if (cork->length + length > maxnonfragsize - fragheaderlen) {
|
|
|
ip_local_error(sk, EMSGSIZE, fl4->daddr, inet->inet_dport,
|
|
|
- mtu-exthdrlen);
|
|
|
+ mtu - (opt ? opt->optlen : 0));
|
|
|
return -EMSGSIZE;
|
|
|
}
|
|
|
|
|
@@ -1151,7 +1151,8 @@ ssize_t ip_append_page(struct sock *sk, struct flowi4 *fl4, struct page *page,
|
|
|
mtu : 0xFFFF;
|
|
|
|
|
|
if (cork->length + size > maxnonfragsize - fragheaderlen) {
|
|
|
- ip_local_error(sk, EMSGSIZE, fl4->daddr, inet->inet_dport, mtu);
|
|
|
+ ip_local_error(sk, EMSGSIZE, fl4->daddr, inet->inet_dport,
|
|
|
+ mtu - (opt ? opt->optlen : 0));
|
|
|
return -EMSGSIZE;
|
|
|
}
|
|
|
|