Lines Matching refs:pcb
15 * 1: check count, seqno and len of segments on pcb->ooseq (strict)
28 static int tcp_oos_count(struct tcp_pcb* pcb)
31 struct tcp_seg* seg = pcb->ooseq;
40 static int tcp_oos_pbuf_count(struct tcp_pcb* pcb)
43 struct tcp_seg* seg = pcb->ooseq;
53 * @param pcb the pcb to check for ooseq segments
58 tcp_oos_seg_seqno(struct tcp_pcb* pcb, int seg_index)
61 struct tcp_seg* seg = pcb->ooseq;
77 * @param pcb the pcb to check for ooseq segments
82 tcp_oos_seg_tcplen(struct tcp_pcb* pcb, int seg_index)
85 struct tcp_seg* seg = pcb->ooseq;
101 * @param pcb the pcb to check for ooseq segments
105 tcp_oos_tcplen(struct tcp_pcb* pcb)
108 struct tcp_seg* seg = pcb->ooseq;
142 struct tcp_pcb* pcb;
165 /* create and initialize the pcb */
166 pcb = test_tcp_new_counters_pcb(&counters);
167 EXPECT_RET(pcb != NULL);
168 tcp_set_state(pcb, ESTABLISHED, &local_ip, &remote_ip, local_port, remote_port);
172 pinseq = tcp_create_rx_segment(pcb, &data[0], 4, 0, 0, TCP_ACK);
175 p_8_9 = tcp_create_rx_segment(pcb, &data[8], 8, 8, 0, TCP_ACK|TCP_FIN);
178 p_4_8 = tcp_create_rx_segment(pcb, &data[4], 8, 4, 0, TCP_ACK);
181 p_4_10 = tcp_create_rx_segment(pcb, &data[4], 10, 4, 0, TCP_ACK);
184 p_2_14 = tcp_create_rx_segment(pcb, &data[2], 14, 2, 0, TCP_ACK);
186 p_fin = tcp_create_rx_segment(pcb, NULL, 0,16, 0, TCP_ACK|TCP_FIN);
202 EXPECT_OOSEQ(tcp_oos_count(pcb) == 1);
203 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 0) == 8);
204 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 0) == 9); /* includes FIN */
214 EXPECT_OOSEQ(tcp_oos_count(pcb) == 2);
215 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 0) == 4);
216 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 0) == 4);
217 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 1) == 8);
218 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 1) == 9); /* includes FIN */
228 EXPECT_OOSEQ(tcp_oos_count(pcb) == 2);
229 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 0) == 4);
230 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 0) == 4);
231 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 1) == 8);
232 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 1) == 9); /* includes FIN */
242 EXPECT_OOSEQ(tcp_oos_count(pcb) == 1);
243 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 0) == 2);
244 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 0) == 15); /* includes FIN */
254 EXPECT_OOSEQ(tcp_oos_count(pcb) == 1);
255 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 0) == 2);
256 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 0) == 15); /* includes FIN */
265 EXPECT(pcb->ooseq == NULL);
268 /* make sure the pcb is freed */
270 tcp_abort(pcb);
282 struct tcp_pcb* pcb;
305 /* create and initialize the pcb */
306 pcb = test_tcp_new_counters_pcb(&counters);
307 EXPECT_RET(pcb != NULL);
308 tcp_set_state(pcb, ESTABLISHED, &local_ip, &remote_ip, local_port, remote_port);
313 p_1_2 = tcp_create_rx_segment(pcb, &data[1], 2, 1, 0, TCP_ACK);
316 p_4_8 = tcp_create_rx_segment(pcb, &data[4], 8, 4, 0, TCP_ACK);
319 p_3_11 = tcp_create_rx_segment(pcb, &data[3], 11, 3, 0, TCP_ACK);
322 p_2_12 = tcp_create_rx_segment(pcb, &data[2], 12, 2, 0, TCP_ACK);
325 pinseq = tcp_create_rx_segment(pcb, &data[0], 4, 0, 0, TCP_ACK);
328 p_15_1 = tcp_create_rx_segment(pcb, &data[15], 1, 15, 0, TCP_ACK);
330 p_15_1a= tcp_create_rx_segment(pcb, &data[15], 1, 15, 0, TCP_ACK);
333 pinseqFIN = tcp_create_rx_segment(pcb, &data[14], 2, 14, 0, TCP_ACK|TCP_FIN);
352 EXPECT_OOSEQ(tcp_oos_count(pcb) == 1);
353 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 0) == 1);
354 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 0) == 2);
364 EXPECT_OOSEQ(tcp_oos_count(pcb) == 2);
365 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 0) == 1);
366 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 0) == 2);
367 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 1) == 4);
368 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 1) == 8);
378 EXPECT_OOSEQ(tcp_oos_count(pcb) == 2);
379 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 0) == 1);
380 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 0) == 2);
382 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 1) == 3);
383 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 1) == 11);
393 EXPECT_OOSEQ(tcp_oos_count(pcb) == 2);
394 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 0) == 1);
395 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 0) == 1);
396 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 1) == 2);
397 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 1) == 12);
406 EXPECT(pcb->ooseq == NULL);
416 EXPECT_OOSEQ(tcp_oos_count(pcb) == 1);
417 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 0) == 15);
418 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 0) == 1);
428 EXPECT_OOSEQ(tcp_oos_count(pcb) == 1);
429 EXPECT_OOSEQ(tcp_oos_seg_seqno(pcb, 0) == 15);
430 EXPECT_OOSEQ(tcp_oos_seg_tcplen(pcb, 0) == 1);
439 EXPECT(pcb->ooseq == NULL);
442 /* make sure the pcb is freed */
444 tcp_abort(pcb);
458 struct tcp_pcb* pcb;
479 /* create and initialize the pcb */
480 pcb = test_tcp_new_counters_pcb(&counters);
481 EXPECT_RET(pcb != NULL);
482 tcp_set_state(pcb, ESTABLISHED, &local_ip, &remote_ip, local_port, remote_port);
483 pcb->rcv_nxt = 0x8000;
487 pinseq = tcp_create_rx_segment(pcb, &data_full_wnd[0], TCP_MSS, 0, 0, TCP_ACK);
491 struct pbuf *p = tcp_create_rx_segment(pcb, &data_full_wnd[TCP_MSS*(k+1)],
502 count = tcp_oos_count(pcb);
504 datalen = tcp_oos_tcplen(pcb);
516 p_ovr = tcp_create_rx_segment(pcb, &data_full_wnd[TCP_MSS*(k+1)], TCP_MSS, TCP_MSS*(k+1), 0, TCP_ACK);
526 EXPECT_OOSEQ(tcp_oos_count(pcb) == k);
527 datalen2 = tcp_oos_tcplen(pcb);
532 EXPECT(pcb->ooseq == NULL);
534 /* make sure the pcb is freed */
536 tcp_abort(pcb);
548 struct tcp_pcb* pcb;
569 /* create and initialize the pcb */
570 pcb = test_tcp_new_counters_pcb(&counters);
571 EXPECT_RET(pcb != NULL);
572 tcp_set_state(pcb, ESTABLISHED, &local_ip, &remote_ip, local_port, remote_port);
573 pcb->rcv_nxt = 0x8000;
580 struct pbuf *p = tcp_create_rx_segment(pcb, &data_full_wnd[k],
592 count = tcp_oos_pbuf_count(pcb);
594 datalen = tcp_oos_tcplen(pcb);
599 p_ovr = tcp_create_rx_segment(pcb, &data_full_wnd[k+1], 1, k+1, 0, TCP_ACK);
609 EXPECT_OOSEQ(tcp_oos_count(pcb) == (i-1));
610 datalen2 = tcp_oos_tcplen(pcb);
613 /* make sure the pcb is freed */
615 tcp_abort(pcb);
627 struct tcp_pcb* pcb;
648 /* create and initialize the pcb */
649 pcb = test_tcp_new_counters_pcb(&counters);
650 EXPECT_RET(pcb != NULL);
651 tcp_set_state(pcb, ESTABLISHED, &local_ip, &remote_ip, local_port, remote_port);
652 pcb->rcv_nxt = 0x8000;
659 struct pbuf *p = tcp_create_rx_segment(pcb, &data_full_wnd[i],
671 count = tcp_oos_pbuf_count(pcb);
673 datalen = tcp_oos_tcplen(pcb);
678 p_ovr = tcp_create_rx_segment(pcb, &data_full_wnd[i+1], 1, i+1, 0, TCP_ACK);
688 EXPECT_OOSEQ(tcp_oos_count(pcb) == (i-1));
689 datalen2 = tcp_oos_tcplen(pcb);
692 /* make sure the pcb is freed */
694 tcp_abort(pcb);
702 check_rx_counters(struct tcp_pcb *pcb, struct test_tcp_counters *counters, u32_t exp_close_calls, u32_t exp_rx_calls,
711 EXPECT_OOSEQ(tcp_oos_count(pcb) == exp_oos_count);
712 oos_len = tcp_oos_tcplen(pcb);
728 struct tcp_pcb* pcb;
750 /* create and initialize the pcb */
751 pcb = test_tcp_new_counters_pcb(&counters);
752 EXPECT_RET(pcb != NULL);
753 tcp_set_state(pcb, ESTABLISHED, &local_ip, &remote_ip, local_port, remote_port);
754 pcb->rcv_nxt = 0x8000;
757 p = tcp_create_rx_segment(pcb, &data_full_wnd[0], TCP_MSS, 0, 0, TCP_ACK);
758 p_normal_fin = tcp_create_rx_segment(pcb, NULL, 0, TCP_MSS, 0, TCP_ACK|TCP_FIN);
760 p_data_after_fin = tcp_create_rx_segment(pcb, &data_full_wnd[TCP_MSS+1], k, TCP_MSS+1, 0, TCP_ACK);
761 p_2nd_fin_ooseq = tcp_create_rx_segment(pcb, NULL, 0, TCP_MSS+1+k, 0, TCP_ACK|TCP_FIN);
774 check_rx_counters(pcb, &counters, exp_close_calls, exp_rx_calls, exp_rx_bytes, 0, exp_oos_pbufs, exp_oos_tcplen);
795 check_rx_counters(pcb, &counters, exp_close_calls, exp_rx_calls, exp_rx_bytes, 0, exp_oos_pbufs, exp_oos_tcplen);
818 check_rx_counters(pcb, &counters, exp_close_calls, exp_rx_calls, exp_rx_bytes, 0, exp_oos_pbufs, exp_oos_tcplen);
841 check_rx_counters(pcb, &counters, exp_close_calls, exp_rx_calls, exp_rx_bytes, 0, exp_oos_pbufs, exp_oos_tcplen);
855 check_rx_counters(pcb, &counters, exp_close_calls, exp_rx_calls, exp_rx_bytes, 0, exp_oos_pbufs, exp_oos_tcplen);
864 check_rx_counters(pcb, &counters, exp_close_calls, exp_rx_calls, exp_rx_bytes, 0, exp_oos_pbufs, exp_oos_tcplen);
871 check_rx_counters(pcb, &counters, exp_close_calls, exp_rx_calls, exp_rx_bytes, 0, exp_oos_pbufs, exp_oos_tcplen);
878 check_rx_counters(pcb, &counters, exp_close_calls, exp_rx_calls, exp_rx_bytes, 0, exp_oos_pbufs, exp_oos_tcplen);
881 EXPECT(pcb->ooseq == NULL);
883 /* make sure the pcb is freed */
885 tcp_abort(pcb);