diff options
Diffstat (limited to 'net/dccp/ipv4.c')
-rw-r--r-- | net/dccp/ipv4.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/net/dccp/ipv4.c b/net/dccp/ipv4.c index db17b83e8d3e..02fc91ce2505 100644 --- a/net/dccp/ipv4.c +++ b/net/dccp/ipv4.c | |||
@@ -600,11 +600,12 @@ int dccp_v4_conn_request(struct sock *sk, struct sk_buff *skb) | |||
600 | if (req == NULL) | 600 | if (req == NULL) |
601 | goto drop; | 601 | goto drop; |
602 | 602 | ||
603 | if (dccp_parse_options(sk, skb)) | ||
604 | goto drop_and_free; | ||
605 | |||
606 | dccp_reqsk_init(req, skb); | 603 | dccp_reqsk_init(req, skb); |
607 | 604 | ||
605 | dreq = dccp_rsk(req); | ||
606 | if (dccp_parse_options(sk, dreq, skb)) | ||
607 | goto drop_and_free; | ||
608 | |||
608 | if (security_inet_conn_request(sk, skb, req)) | 609 | if (security_inet_conn_request(sk, skb, req)) |
609 | goto drop_and_free; | 610 | goto drop_and_free; |
610 | 611 | ||
@@ -621,7 +622,6 @@ int dccp_v4_conn_request(struct sock *sk, struct sk_buff *skb) | |||
621 | * In fact we defer setting S.GSR, S.SWL, S.SWH to | 622 | * In fact we defer setting S.GSR, S.SWL, S.SWH to |
622 | * dccp_create_openreq_child. | 623 | * dccp_create_openreq_child. |
623 | */ | 624 | */ |
624 | dreq = dccp_rsk(req); | ||
625 | dreq->dreq_isr = dcb->dccpd_seq; | 625 | dreq->dreq_isr = dcb->dccpd_seq; |
626 | dreq->dreq_iss = dccp_v4_init_sequence(skb); | 626 | dreq->dreq_iss = dccp_v4_init_sequence(skb); |
627 | dreq->dreq_service = service; | 627 | dreq->dreq_service = service; |