hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
kernel/net/l2tp/l2tp_ip6.c
....@@ -255,8 +255,6 @@
255255
256256 if (tunnel)
257257 l2tp_tunnel_delete(tunnel);
258
-
259
- inet6_destroy_sock(sk);
260258 }
261259
262260 static int l2tp_ip6_bind(struct sock *sk, struct sockaddr *uaddr, int addr_len)
....@@ -510,7 +508,6 @@
510508 */
511509 if (len > INT_MAX - transhdrlen)
512510 return -EMSGSIZE;
513
- ulen = len + transhdrlen;
514511
515512 /* Mirror BSD error message compatibility */
516513 if (msg->msg_flags & MSG_OOB)
....@@ -631,6 +628,7 @@
631628
632629 back_from_confirm:
633630 lock_sock(sk);
631
+ ulen = len + skb_queue_empty(&sk->sk_write_queue) ? transhdrlen : 0;
634632 err = ip6_append_data(sk, ip_generic_getfrag, msg,
635633 ulen, transhdrlen, &ipc6,
636634 &fl6, (struct rt6_info *)dst,