diff options
| author | David S. Miller <davem@davemloft.net> | 2011-03-31 04:53:20 -0700 | 
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2011-03-31 04:53:20 -0700 | 
| commit | e79d9bc7ea76e08fc24d7adaad8b6a821d1624c3 (patch) | |
| tree | b06d672f4b55d70a3602e65f09bcf2f55465651b | |
| parent | 94b92b88344641dbeadd2ef371549b7663a48fb1 (diff) | |
| download | olio-linux-3.10-e79d9bc7ea76e08fc24d7adaad8b6a821d1624c3.tar.xz olio-linux-3.10-e79d9bc7ea76e08fc24d7adaad8b6a821d1624c3.zip  | |
ipv4: Use flowi4_init_output() in inet_connection_sock.c
Signed-off-by: David S. Miller <davem@davemloft.net>
| -rw-r--r-- | net/ipv4/inet_connection_sock.c | 18 | 
1 files changed, 6 insertions, 12 deletions
diff --git a/net/ipv4/inet_connection_sock.c b/net/ipv4/inet_connection_sock.c index 6c0b7f4a3d7..f784608a4c4 100644 --- a/net/ipv4/inet_connection_sock.c +++ b/net/ipv4/inet_connection_sock.c @@ -356,20 +356,14 @@ struct dst_entry *inet_csk_route_req(struct sock *sk,  	struct rtable *rt;  	const struct inet_request_sock *ireq = inet_rsk(req);  	struct ip_options *opt = inet_rsk(req)->opt; -	struct flowi4 fl4 = { -		.flowi4_oif = sk->sk_bound_dev_if, -		.flowi4_mark = sk->sk_mark, -		.daddr = ((opt && opt->srr) ? -			  opt->faddr : ireq->rmt_addr), -		.saddr = ireq->loc_addr, -		.flowi4_tos = RT_CONN_FLAGS(sk), -		.flowi4_proto = sk->sk_protocol, -		.flowi4_flags = inet_sk_flowi_flags(sk), -		.fl4_sport = inet_sk(sk)->inet_sport, -		.fl4_dport = ireq->rmt_port, -	};  	struct net *net = sock_net(sk); +	struct flowi4 fl4; +	flowi4_init_output(&fl4, sk->sk_bound_dev_if, sk->sk_mark, +			   RT_CONN_FLAGS(sk), RT_SCOPE_UNIVERSE, +			   sk->sk_protocol, inet_sk_flowi_flags(sk), +			   (opt && opt->srr) ? opt->faddr : ireq->rmt_addr, +			   ireq->loc_addr, ireq->rmt_port, inet_sk(sk)->inet_sport);  	security_req_classify_flow(req, flowi4_to_flowi(&fl4));  	rt = ip_route_output_flow(net, &fl4, sk);  	if (IS_ERR(rt))  |