ipv6/ping: set skb->mark on icmpv6 sockets
authorWillem de Bruijn <willemb@google.com>
Fri, 3 Jul 2020 20:43:08 +0000 (16:43 -0400)
committerDavid S. Miller <davem@davemloft.net>
Fri, 3 Jul 2020 21:36:04 +0000 (14:36 -0700)
IPv6 ping sockets route based on fwmark, but do not yet set skb->mark.
Add this. IPv4 ping sockets also do both.

Signed-off-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/ping.c

index 98ac32b49d8c9a4fe6158d8c9e7b759373483709..6caa062f68e72b7e3fed6a079b4e58a220ecfff3 100644 (file)
@@ -114,6 +114,7 @@ static int ping_v6_sendmsg(struct sock *sk, struct msghdr *msg, size_t len)
        security_sk_classify_flow(sk, flowi6_to_flowi(&fl6));
 
        ipcm6_init_sk(&ipc6, np);
+       ipc6.sockc.mark = sk->sk_mark;
        fl6.flowlabel = ip6_make_flowinfo(ipc6.tclass, fl6.flowlabel);
 
        dst = ip6_sk_dst_lookup_flow(sk, &fl6, daddr, false);