Commit 36395b2e authored by David S. Miller's avatar David S. Miller

Merge branch 'remove-RTO_ONLINK-users'

Guillaume Nault says:

====================
net: Remove more RTO_ONLINK users.

Code that initialise a flowi4 structure manually before doing a fib
lookup can easily avoid overloading ->flowi4_tos with the RTO_ONLINK
bit. They can just set ->flowi4_scope correctly instead.

Properly separating the routing scope from ->flowi4_tos will allow to
eventually convert this field to dscp_t (to ensure proper separation
between DSCP and ECN).
====================
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents 5861e822 ba80e20d
...@@ -243,7 +243,8 @@ static struct rtable *ip4_route_output_gtp(struct flowi4 *fl4, ...@@ -243,7 +243,8 @@ static struct rtable *ip4_route_output_gtp(struct flowi4 *fl4,
fl4->flowi4_oif = sk->sk_bound_dev_if; fl4->flowi4_oif = sk->sk_bound_dev_if;
fl4->daddr = daddr; fl4->daddr = daddr;
fl4->saddr = saddr; 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; fl4->flowi4_proto = sk->sk_protocol;
return ip_route_output_key(sock_net(sk), fl4); return ip_route_output_key(sock_net(sk), fl4);
......
...@@ -474,7 +474,8 @@ static struct dst_entry* dccp_v4_route_skb(struct net *net, struct sock *sk, ...@@ -474,7 +474,8 @@ static struct dst_entry* dccp_v4_route_skb(struct net *net, struct sock *sk,
.flowi4_oif = inet_iif(skb), .flowi4_oif = inet_iif(skb),
.daddr = iph->saddr, .daddr = iph->saddr,
.saddr = iph->daddr, .saddr = iph->daddr,
.flowi4_tos = RT_CONN_FLAGS(sk), .flowi4_tos = ip_sock_rt_tos(sk),
.flowi4_scope = ip_sock_rt_scope(sk),
.flowi4_proto = sk->sk_protocol, .flowi4_proto = sk->sk_protocol,
.fl4_sport = dccp_hdr(skb)->dccph_dport, .fl4_sport = dccp_hdr(skb)->dccph_dport,
.fl4_dport = dccp_hdr(skb)->dccph_sport, .fl4_dport = dccp_hdr(skb)->dccph_sport,
......
...@@ -435,7 +435,8 @@ static void sctp_v4_get_dst(struct sctp_transport *t, union sctp_addr *saddr, ...@@ -435,7 +435,8 @@ static void sctp_v4_get_dst(struct sctp_transport *t, union sctp_addr *saddr,
fl4->fl4_dport = daddr->v4.sin_port; fl4->fl4_dport = daddr->v4.sin_port;
fl4->flowi4_proto = IPPROTO_SCTP; fl4->flowi4_proto = IPPROTO_SCTP;
if (asoc) { if (asoc) {
fl4->flowi4_tos = RT_CONN_FLAGS_TOS(asoc->base.sk, tos); fl4->flowi4_tos = RT_TOS(tos);
fl4->flowi4_scope = ip_sock_rt_scope(asoc->base.sk);
fl4->flowi4_oif = asoc->base.sk->sk_bound_dev_if; fl4->flowi4_oif = asoc->base.sk->sk_bound_dev_if;
fl4->fl4_sport = htons(asoc->base.bind_addr.port); fl4->fl4_sport = htons(asoc->base.bind_addr.port);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment