gtp: Set TOS and routing scope independently for fib lookups.
authorGuillaume Nault <gnault@redhat.com>
Mon, 17 Jul 2023 13:53:30 +0000 (15:53 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 19 Jul 2023 11:32:07 +0000 (12:32 +0100)
There's no reason for setting the RTO_ONLINK flag in ->flowi4_tos as
RT_CONN_FLAGS() does. We can easily set ->flowi4_scope properly
instead. This makes the code more explicit and will allow to convert
->flowi4_tos to dscp_t in the future.

Signed-off-by: Guillaume Nault <gnault@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/gtp.c

index acb20ad4e37eb33d3cc76ca5ed1a3963284f94c6..144ec626230d6b0c4b60e9404d985aa569839309 100644 (file)
@@ -243,7 +243,8 @@ static struct rtable *ip4_route_output_gtp(struct flowi4 *fl4,
        fl4->flowi4_oif         = sk->sk_bound_dev_if;
        fl4->daddr              = daddr;
        fl4->saddr              = saddr;
-       fl4->flowi4_tos         = RT_CONN_FLAGS(sk);
+       fl4->flowi4_tos         = ip_sock_rt_tos(sk);
+       fl4->flowi4_scope       = ip_sock_rt_scope(sk);
        fl4->flowi4_proto       = sk->sk_protocol;
 
        return ip_route_output_key(sock_net(sk), fl4);