dccp: use inet6_csk_route_req() helper
Before changing dccp_v6_request_recv_sock() sock argument to const, we need to get rid of security_sk_classify_flow(), and it seems doable by reusing inet6_csk_route_req() helper. We need to add a proto parameter to inet6_csk_route_req(), not assume it is TCP. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
72ab4a86f7
commit
f76b33c32b
@@ -447,7 +447,8 @@ static int tcp_v6_send_synack(const struct sock *sk, struct dst_entry *dst,
|
||||
int err = -ENOMEM;
|
||||
|
||||
/* First, grab a route. */
|
||||
if (!dst && (dst = inet6_csk_route_req(sk, fl6, req)) == NULL)
|
||||
if (!dst && (dst = inet6_csk_route_req(sk, fl6, req,
|
||||
IPPROTO_TCP)) == NULL)
|
||||
goto done;
|
||||
|
||||
skb = tcp_make_synack(sk, dst, req, foc);
|
||||
@@ -694,7 +695,7 @@ static struct dst_entry *tcp_v6_route_req(struct sock *sk, struct flowi *fl,
|
||||
{
|
||||
if (strict)
|
||||
*strict = true;
|
||||
return inet6_csk_route_req(sk, &fl->u.ip6, req);
|
||||
return inet6_csk_route_req(sk, &fl->u.ip6, req, IPPROTO_TCP);
|
||||
}
|
||||
|
||||
struct request_sock_ops tcp6_request_sock_ops __read_mostly = {
|
||||
@@ -1058,7 +1059,7 @@ static struct sock *tcp_v6_syn_recv_sock(struct sock *sk, struct sk_buff *skb,
|
||||
goto out_overflow;
|
||||
|
||||
if (!dst) {
|
||||
dst = inet6_csk_route_req(sk, &fl6, req);
|
||||
dst = inet6_csk_route_req(sk, &fl6, req, IPPROTO_TCP);
|
||||
if (!dst)
|
||||
goto out;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user