aboutsummaryrefslogtreecommitdiffstats
path: root/net/dccp/input.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/dccp/input.c')
-rw-r--r--net/dccp/input.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/net/dccp/input.c b/net/dccp/input.c
index 4a3279cd684c..565bc80557ce 100644
--- a/net/dccp/input.c
+++ b/net/dccp/input.c
@@ -1,6 +1,6 @@
1/* 1/*
2 * net/dccp/input.c 2 * net/dccp/input.c
3 * 3 *
4 * An implementation of the DCCP protocol 4 * An implementation of the DCCP protocol
5 * Arnaldo Carvalho de Melo <acme@conectiva.com.br> 5 * Arnaldo Carvalho de Melo <acme@conectiva.com.br>
6 * 6 *
@@ -82,7 +82,7 @@ static int dccp_check_seqno(struct sock *sk, struct sk_buff *skb)
82 * Otherwise, 82 * Otherwise,
83 * Drop packet and return 83 * Drop packet and return
84 */ 84 */
85 if (dh->dccph_type == DCCP_PKT_SYNC || 85 if (dh->dccph_type == DCCP_PKT_SYNC ||
86 dh->dccph_type == DCCP_PKT_SYNCACK) { 86 dh->dccph_type == DCCP_PKT_SYNCACK) {
87 if (between48(DCCP_SKB_CB(skb)->dccpd_ack_seq, 87 if (between48(DCCP_SKB_CB(skb)->dccpd_ack_seq,
88 dp->dccps_awl, dp->dccps_awh) && 88 dp->dccps_awl, dp->dccps_awh) &&
@@ -185,8 +185,8 @@ static int __dccp_rcv_established(struct sock *sk, struct sk_buff *skb,
185 dccp_rcv_close(sk, skb); 185 dccp_rcv_close(sk, skb);
186 return 0; 186 return 0;
187 case DCCP_PKT_REQUEST: 187 case DCCP_PKT_REQUEST:
188 /* Step 7 188 /* Step 7
189 * or (S.is_server and P.type == Response) 189 * or (S.is_server and P.type == Response)
190 * or (S.is_client and P.type == Request) 190 * or (S.is_client and P.type == Request)
191 * or (S.state >= OPEN and P.type == Request 191 * or (S.state >= OPEN and P.type == Request
192 * and P.seqno >= S.OSR) 192 * and P.seqno >= S.OSR)
@@ -274,7 +274,7 @@ static int dccp_rcv_request_sent_state_process(struct sock *sk,
274 const struct dccp_hdr *dh, 274 const struct dccp_hdr *dh,
275 const unsigned len) 275 const unsigned len)
276{ 276{
277 /* 277 /*
278 * Step 4: Prepare sequence numbers in REQUEST 278 * Step 4: Prepare sequence numbers in REQUEST
279 * If S.state == REQUEST, 279 * If S.state == REQUEST,
280 * If (P.type == Response or P.type == Reset) 280 * If (P.type == Response or P.type == Reset)
@@ -342,7 +342,7 @@ static int dccp_rcv_request_sent_state_process(struct sock *sk,
342 * from the Response * / 342 * from the Response * /
343 * S.state := PARTOPEN 343 * S.state := PARTOPEN
344 * Set PARTOPEN timer 344 * Set PARTOPEN timer
345 * Continue with S.state == PARTOPEN 345 * Continue with S.state == PARTOPEN
346 * / * Step 12 will send the Ack completing the 346 * / * Step 12 will send the Ack completing the
347 * three-way handshake * / 347 * three-way handshake * /
348 */ 348 */
@@ -373,7 +373,7 @@ static int dccp_rcv_request_sent_state_process(struct sock *sk,
373 */ 373 */
374 __kfree_skb(skb); 374 __kfree_skb(skb);
375 return 0; 375 return 0;
376 } 376 }
377 dccp_send_ack(sk); 377 dccp_send_ack(sk);
378 return -1; 378 return -1;
379 } 379 }
@@ -381,7 +381,7 @@ static int dccp_rcv_request_sent_state_process(struct sock *sk,
381out_invalid_packet: 381out_invalid_packet:
382 /* dccp_v4_do_rcv will send a reset */ 382 /* dccp_v4_do_rcv will send a reset */
383 DCCP_SKB_CB(skb)->dccpd_reset_code = DCCP_RESET_CODE_PACKET_ERROR; 383 DCCP_SKB_CB(skb)->dccpd_reset_code = DCCP_RESET_CODE_PACKET_ERROR;
384 return 1; 384 return 1;
385} 385}
386 386
387static int dccp_rcv_respond_partopen_state_process(struct sock *sk, 387static int dccp_rcv_respond_partopen_state_process(struct sock *sk,
@@ -488,11 +488,11 @@ int dccp_rcv_state_process(struct sock *sk, struct sk_buff *skb,
488 if (dcb->dccpd_ack_seq != DCCP_PKT_WITHOUT_ACK_SEQ) 488 if (dcb->dccpd_ack_seq != DCCP_PKT_WITHOUT_ACK_SEQ)
489 dccp_event_ack_recv(sk, skb); 489 dccp_event_ack_recv(sk, skb);
490 490
491 if (dccp_msk(sk)->dccpms_send_ack_vector && 491 if (dccp_msk(sk)->dccpms_send_ack_vector &&
492 dccp_ackvec_add(dp->dccps_hc_rx_ackvec, sk, 492 dccp_ackvec_add(dp->dccps_hc_rx_ackvec, sk,
493 DCCP_SKB_CB(skb)->dccpd_seq, 493 DCCP_SKB_CB(skb)->dccpd_seq,
494 DCCP_ACKVEC_STATE_RECEIVED)) 494 DCCP_ACKVEC_STATE_RECEIVED))
495 goto discard; 495 goto discard;
496 496
497 /* XXX see the comments in dccp_rcv_established about this */ 497 /* XXX see the comments in dccp_rcv_established about this */
498 if (dccp_sk(sk)->dccps_role == DCCP_ROLE_SERVER) 498 if (dccp_sk(sk)->dccps_role == DCCP_ROLE_SERVER)
@@ -580,7 +580,7 @@ int dccp_rcv_state_process(struct sock *sk, struct sk_buff *skb,
580 } 580 }
581 } 581 }
582 582
583 if (!queued) { 583 if (!queued) {
584discard: 584discard:
585 __kfree_skb(skb); 585 __kfree_skb(skb);
586 } 586 }