@@ -2998,7 +2998,12 @@ START_TEST(test_wolfip_loopback_send_paths)
29982998
29992999 ck_assert_int_eq (wolfIP_loopback_send (NULL , frame , sizeof (frame )), -1 );
30003000 ck_assert_int_eq (wolfIP_loopback_send (loop , NULL , sizeof (frame )), -1 );
3001- ck_assert_int_eq (wolfIP_loopback_send (loop , frame , sizeof (frame )), (int )sizeof (frame ));
3001+ /* Fill the queue, each slot enqueue returns the byte count. */
3002+ for (unsigned int i = 0 ; i < WOLFIP_LOOPBACK_QUEUE_DEPTH ; i ++ ) {
3003+ ck_assert_int_eq (wolfIP_loopback_send (loop , frame , sizeof (frame )),
3004+ (int )sizeof (frame ));
3005+ }
3006+ /* Next send must be dropped because the queue is full. */
30023007 ck_assert_int_eq (wolfIP_loopback_send (loop , frame , sizeof (frame )), 0 );
30033008}
30043009END_TEST
@@ -3018,6 +3023,7 @@ START_TEST(test_wolfip_loopback_poll_paths)
30183023 memset (rx , 0 , sizeof (rx ));
30193024
30203025 ck_assert_int_eq (wolfIP_loopback_poll (NULL , rx , sizeof (rx )), 0 );
3026+ ck_assert_int_eq (wolfIP_loopback_poll (loop , NULL , sizeof (rx )), 0 );
30213027 ck_assert_int_eq (wolfIP_loopback_poll (loop , rx , sizeof (rx )), 0 );
30223028
30233029 ck_assert_int_eq (wolfIP_loopback_send (loop , tx , sizeof (tx )), (int )sizeof (tx ));
@@ -4890,10 +4896,12 @@ START_TEST(test_regression_loopback_pure_ack_uses_deferred_buffer_until_poll)
48904896 (uint32_t )sizeof (seg )), 0 );
48914897 ck_assert_uint_eq (ts -> sock .tcp .last_ack , ts -> sock .tcp .ack );
48924898 ck_assert_uint_eq (last_frame_sent_size , 0U );
4893- ck_assert_uint_eq (s .loopback_pending_len , expected_pending_len );
4899+ ck_assert_uint_eq (s .loopback_count , 1U );
4900+ ck_assert_uint_eq (s .loopback_pending_len [s .loopback_head ],
4901+ expected_pending_len );
48944902
48954903 (void )wolfIP_poll (& s , 200 );
4896- ck_assert_uint_eq (s .loopback_pending_len , 0U );
4904+ ck_assert_uint_eq (s .loopback_count , 0U );
48974905}
48984906END_TEST
48994907
@@ -4934,13 +4942,17 @@ START_TEST(test_regression_loopback_pure_ack_drain_allows_next_send_cycle)
49344942 seg .flags = TCP_FLAG_ACK ;
49354943
49364944 ck_assert_int_eq (tcp_send_empty_immediate (ts , & seg , (uint32_t )sizeof (seg )), 0 );
4937- ck_assert_uint_eq (s .loopback_pending_len , expected_pending_len );
4945+ ck_assert_uint_eq (s .loopback_count , 1U );
4946+ ck_assert_uint_eq (s .loopback_pending_len [s .loopback_head ],
4947+ expected_pending_len );
49384948
49394949 ck_assert_int_eq (loop -> poll (loop , rx , sizeof (rx )), (int )expected_pending_len );
4940- ck_assert_uint_eq (s .loopback_pending_len , 0U );
4950+ ck_assert_uint_eq (s .loopback_count , 0U );
49414951
49424952 ck_assert_int_eq (tcp_send_empty_immediate (ts , & seg , (uint32_t )sizeof (seg )), 0 );
4943- ck_assert_uint_eq (s .loopback_pending_len , expected_pending_len );
4953+ ck_assert_uint_eq (s .loopback_count , 1U );
4954+ ck_assert_uint_eq (s .loopback_pending_len [s .loopback_head ],
4955+ expected_pending_len );
49444956}
49454957END_TEST
49464958
0 commit comments