mirror of https://github.com/OpenIPC/firmware.git
33 lines
1.2 KiB
Diff
33 lines
1.2 KiB
Diff
diff -drupN a/net/ipv6/icmp.c b/net/ipv6/icmp.c
|
|
--- a/net/ipv6/icmp.c 2018-08-06 17:23:04.000000000 +0300
|
|
+++ b/net/ipv6/icmp.c 2022-06-12 05:28:14.000000000 +0300
|
|
@@ -92,9 +92,10 @@ static void icmpv6_err(struct sk_buff *s
|
|
struct net *net = dev_net(skb->dev);
|
|
|
|
if (type == ICMPV6_PKT_TOOBIG)
|
|
- ip6_update_pmtu(skb, net, info, 0, 0);
|
|
+ ip6_update_pmtu(skb, net, info, 0, 0, sock_net_uid(net, NULL));
|
|
else if (type == NDISC_REDIRECT)
|
|
- ip6_redirect(skb, net, skb->dev->ifindex, 0);
|
|
+ ip6_redirect(skb, net, skb->dev->ifindex, 0,
|
|
+ sock_net_uid(net, NULL));
|
|
|
|
if (!(type & ICMPV6_INFOMSG_MASK))
|
|
if (icmp6->icmp6_type == ICMPV6_ECHO_REQUEST)
|
|
@@ -486,6 +487,7 @@ static void icmp6_send(struct sk_buff *s
|
|
fl6.flowi6_oif = iif;
|
|
fl6.fl6_icmp_type = type;
|
|
fl6.fl6_icmp_code = code;
|
|
+ fl6.flowi6_uid = sock_net_uid(net, NULL);
|
|
security_skb_classify_flow(skb, flowi6_to_flowi(&fl6));
|
|
|
|
sk = icmpv6_xmit_lock(net);
|
|
@@ -660,6 +662,7 @@ static void icmpv6_echo_reply(struct sk_
|
|
fl6.flowi6_oif = skb->dev->ifindex;
|
|
fl6.fl6_icmp_type = ICMPV6_ECHO_REPLY;
|
|
fl6.flowi6_mark = mark;
|
|
+ fl6.flowi6_uid = sock_net_uid(net, NULL);
|
|
security_skb_classify_flow(skb, flowi6_to_flowi(&fl6));
|
|
|
|
sk = icmpv6_xmit_lock(net);
|