net: Put fl4_* macros to struct flowi4 and use them again.

Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
David S. Miller
2011-03-12 03:00:33 -05:00
parent f42454d632
commit 9cce96df5b
12 changed files with 46 additions and 50 deletions

View File

@@ -384,8 +384,8 @@ static struct rtable *icmp_route_lookup(struct net *net, struct sk_buff *skb_in,
.saddr = saddr,
.flowi4_tos = RT_TOS(tos),
.flowi4_proto = IPPROTO_ICMP,
.uli.icmpt.type = type,
.uli.icmpt.code = code,
.fl4_icmp_type = type,
.fl4_icmp_code = code,
};
struct rtable *rt, *rt2;
int err;

View File

@@ -365,8 +365,8 @@ struct dst_entry *inet_csk_route_req(struct sock *sk,
.flowi4_tos = RT_CONN_FLAGS(sk),
.flowi4_proto = sk->sk_protocol,
.flowi4_flags = inet_sk_flowi_flags(sk),
.uli.ports.sport = inet_sk(sk)->inet_sport,
.uli.ports.dport = ireq->rmt_port,
.fl4_sport = inet_sk(sk)->inet_sport,
.fl4_dport = ireq->rmt_port,
};
struct net *net = sock_net(sk);

View File

@@ -1479,8 +1479,8 @@ void ip_send_reply(struct sock *sk, struct sk_buff *skb, struct ip_reply_arg *ar
.daddr = daddr,
.saddr = rt->rt_spec_dst,
.flowi4_tos = RT_TOS(ip_hdr(skb)->tos),
.uli.ports.sport = tcp_hdr(skb)->dest,
.uli.ports.dport = tcp_hdr(skb)->source,
.fl4_sport = tcp_hdr(skb)->dest,
.fl4_dport = tcp_hdr(skb)->source,
.flowi4_proto = sk->sk_protocol,
.flowi4_flags = ip_reply_arg_flowi_flags(arg),
};

View File

@@ -56,7 +56,7 @@ static void nat_decode_session(struct sk_buff *skb, struct flowi *fl)
t->dst.protonum == IPPROTO_UDPLITE ||
t->dst.protonum == IPPROTO_DCCP ||
t->dst.protonum == IPPROTO_SCTP)
fl4->uli.ports.dport = t->dst.u.tcp.port;
fl4->fl4_dport = t->dst.u.tcp.port;
}
statusbit ^= IPS_NAT_MASK;
@@ -68,7 +68,7 @@ static void nat_decode_session(struct sk_buff *skb, struct flowi *fl)
t->dst.protonum == IPPROTO_UDPLITE ||
t->dst.protonum == IPPROTO_DCCP ||
t->dst.protonum == IPPROTO_SCTP)
fl4->uli.ports.sport = t->src.u.tcp.port;
fl4->fl4_sport = t->src.u.tcp.port;
}
}
#endif

View File

@@ -433,8 +433,8 @@ static int raw_probe_proto_opt(struct flowi4 *fl4, struct msghdr *msg)
code = iov->iov_base;
if (type && code) {
if (get_user(fl4->uli.icmpt.type, type) ||
get_user(fl4->uli.icmpt.code, code))
if (get_user(fl4->fl4_icmp_type, type) ||
get_user(fl4->fl4_icmp_code, code))
return -EFAULT;
probed = 1;
}

View File

@@ -353,8 +353,8 @@ struct sock *cookie_v4_check(struct sock *sk, struct sk_buff *skb,
.flowi4_tos = RT_CONN_FLAGS(sk),
.flowi4_proto = IPPROTO_TCP,
.flowi4_flags = inet_sk_flowi_flags(sk),
.uli.ports.sport = th->dest,
.uli.ports.dport = th->source,
.fl4_sport = th->dest,
.fl4_dport = th->source,
};
security_req_classify_flow(req, flowi4_to_flowi(&fl4));
rt = ip_route_output_key(sock_net(sk), &fl4);

View File

@@ -778,7 +778,7 @@ static int udp_push_pending_frames(struct sock *sk)
if (!skb)
goto out;
err = udp_send_skb(skb, fl4->daddr, fl4->uli.ports.dport);
err = udp_send_skb(skb, fl4->daddr, fl4->fl4_dport);
out:
up->len = 0;
@@ -918,8 +918,8 @@ int udp_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg,
.flowi4_proto = sk->sk_protocol,
.flowi4_flags = (inet_sk_flowi_flags(sk) |
FLOWI_FLAG_CAN_SLEEP),
.uli.ports.sport = inet->inet_sport,
.uli.ports.dport = dport,
.fl4_sport = inet->inet_sport,
.fl4_dport = dport,
};
struct net *net = sock_net(sk);
@@ -976,8 +976,8 @@ back_from_confirm:
fl4 = &inet->cork.fl.u.ip4;
fl4->daddr = daddr;
fl4->saddr = saddr;
fl4->uli.ports.dport = dport;
fl4->uli.ports.sport = inet->inet_sport;
fl4->fl4_dport = dport;
fl4->fl4_sport = inet->inet_sport;
up->pending = AF_INET;
do_append_data:

View File

@@ -119,8 +119,8 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl, int reverse)
pskb_may_pull(skb, xprth + 4 - skb->data)) {
__be16 *ports = (__be16 *)xprth;
fl4->uli.ports.sport = ports[!!reverse];
fl4->uli.ports.dport = ports[!reverse];
fl4->fl4_sport = ports[!!reverse];
fl4->fl4_dport = ports[!reverse];
}
break;
@@ -128,8 +128,8 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl, int reverse)
if (pskb_may_pull(skb, xprth + 2 - skb->data)) {
u8 *icmp = xprth;
fl4->uli.icmpt.type = icmp[0];
fl4->uli.icmpt.code = icmp[1];
fl4->fl4_icmp_type = icmp[0];
fl4->fl4_icmp_code = icmp[1];
}
break;
@@ -137,7 +137,7 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl, int reverse)
if (pskb_may_pull(skb, xprth + 4 - skb->data)) {
__be32 *ehdr = (__be32 *)xprth;
fl4->uli.spi = ehdr[0];
fl4->fl4_ipsec_spi = ehdr[0];
}
break;
@@ -145,7 +145,7 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl, int reverse)
if (pskb_may_pull(skb, xprth + 8 - skb->data)) {
__be32 *ah_hdr = (__be32*)xprth;
fl4->uli.spi = ah_hdr[1];
fl4->fl4_ipsec_spi = ah_hdr[1];
}
break;
@@ -153,7 +153,7 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl, int reverse)
if (pskb_may_pull(skb, xprth + 4 - skb->data)) {
__be16 *ipcomp_hdr = (__be16 *)xprth;
fl4->uli.spi = htonl(ntohs(ipcomp_hdr[1]));
fl4->fl4_ipsec_spi = htonl(ntohs(ipcomp_hdr[1]));
}
break;
@@ -165,13 +165,13 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl, int reverse)
if (greflags[0] & GRE_KEY) {
if (greflags[0] & GRE_CSUM)
gre_hdr++;
fl4->uli.gre_key = gre_hdr[1];
fl4->fl4_gre_key = gre_hdr[1];
}
}
break;
default:
fl4->uli.spi = 0;
fl4->fl4_ipsec_spi = 0;
break;
}
}