• Home
  • Raw
  • Download

Lines Matching refs:session

123 static ssize_t null_send_callback(nghttp2_session *session, const uint8_t *data,  in null_send_callback()  argument
125 (void)session; in null_send_callback()
133 static ssize_t fail_send_callback(nghttp2_session *session, const uint8_t *data, in fail_send_callback() argument
135 (void)session; in fail_send_callback()
144 static ssize_t fixed_bytes_send_callback(nghttp2_session *session, in fixed_bytes_send_callback() argument
148 (void)session; in fixed_bytes_send_callback()
155 static ssize_t scripted_recv_callback(nghttp2_session *session, uint8_t *data, in scripted_recv_callback() argument
159 (void)session; in scripted_recv_callback()
171 static ssize_t eof_recv_callback(nghttp2_session *session, uint8_t *data, in eof_recv_callback() argument
173 (void)session; in eof_recv_callback()
182 static ssize_t accumulator_send_callback(nghttp2_session *session, in accumulator_send_callback() argument
186 (void)session; in accumulator_send_callback()
195 static int on_begin_frame_callback(nghttp2_session *session, in on_begin_frame_callback() argument
199 (void)session; in on_begin_frame_callback()
206 static int on_frame_recv_callback(nghttp2_session *session, in on_frame_recv_callback() argument
209 (void)session; in on_frame_recv_callback()
218 static int on_invalid_frame_recv_callback(nghttp2_session *session, in on_invalid_frame_recv_callback() argument
222 (void)session; in on_invalid_frame_recv_callback()
230 static int on_frame_send_callback(nghttp2_session *session, in on_frame_send_callback() argument
233 (void)session; in on_frame_send_callback()
240 static int on_frame_not_send_callback(nghttp2_session *session, in on_frame_not_send_callback() argument
244 (void)session; in on_frame_not_send_callback()
252 static int cancel_before_frame_send_callback(nghttp2_session *session, in cancel_before_frame_send_callback() argument
256 (void)session; in cancel_before_frame_send_callback()
263 static int on_data_chunk_recv_callback(nghttp2_session *session, uint8_t flags, in on_data_chunk_recv_callback() argument
267 (void)session; in on_data_chunk_recv_callback()
277 static int pause_on_data_chunk_recv_callback(nghttp2_session *session, in pause_on_data_chunk_recv_callback() argument
282 (void)session; in pause_on_data_chunk_recv_callback()
292 static ssize_t select_padding_callback(nghttp2_session *session, in select_padding_callback() argument
296 (void)session; in select_padding_callback()
302 nghttp2_session *session, uint8_t frame_type, int32_t stream_id, in too_large_data_source_length_callback() argument
305 (void)session; in too_large_data_source_length_callback()
317 nghttp2_session *session, uint8_t frame_type, int32_t stream_id, in smallest_length_data_source_length_callback() argument
320 (void)session; in smallest_length_data_source_length_callback()
332 nghttp2_session *session, int32_t stream_id, uint8_t *buf, size_t len, in fixed_length_data_source_read_callback() argument
336 (void)session; in fixed_length_data_source_read_callback()
354 nghttp2_session *session, int32_t stream_id, uint8_t *buf, size_t len, in temporal_failure_data_source_read_callback() argument
356 (void)session; in temporal_failure_data_source_read_callback()
367 static ssize_t fail_data_source_read_callback(nghttp2_session *session, in fail_data_source_read_callback() argument
372 (void)session; in fail_data_source_read_callback()
384 nghttp2_session *session, int32_t stream_id, uint8_t *buf, size_t len, in no_end_stream_data_source_read_callback() argument
386 (void)session; in no_end_stream_data_source_read_callback()
398 nghttp2_session *session, int32_t stream_id, uint8_t *buf, size_t len, in no_copy_data_source_read_callback() argument
402 (void)session; in no_copy_data_source_read_callback()
423 static int send_data_callback(nghttp2_session *session, nghttp2_frame *frame, in send_data_callback() argument
427 (void)session; in send_data_callback()
446 static ssize_t block_count_send_callback(nghttp2_session *session, in block_count_send_callback() argument
450 (void)session; in block_count_send_callback()
462 static int on_header_callback(nghttp2_session *session, in on_header_callback() argument
467 (void)session; in on_header_callback()
480 static int pause_on_header_callback(nghttp2_session *session, in pause_on_header_callback() argument
485 on_header_callback(session, frame, name, namelen, value, valuelen, flags, in pause_on_header_callback()
491 nghttp2_session *session, const nghttp2_frame *frame, const uint8_t *name, in temporal_failure_on_header_callback() argument
494 on_header_callback(session, frame, name, namelen, value, valuelen, flags, in temporal_failure_on_header_callback()
499 static int on_invalid_header_callback(nghttp2_session *session, in on_invalid_header_callback() argument
505 (void)session; in on_invalid_header_callback()
518 static int pause_on_invalid_header_callback(nghttp2_session *session, in pause_on_invalid_header_callback() argument
524 on_invalid_header_callback(session, frame, name, namelen, value, valuelen, in pause_on_invalid_header_callback()
529 static int reset_on_invalid_header_callback(nghttp2_session *session, in reset_on_invalid_header_callback() argument
535 on_invalid_header_callback(session, frame, name, namelen, value, valuelen, in reset_on_invalid_header_callback()
540 static int on_begin_headers_callback(nghttp2_session *session, in on_begin_headers_callback() argument
544 (void)session; in on_begin_headers_callback()
552 nghttp2_session *session, const nghttp2_frame *frame, void *user_data) { in temporal_failure_on_begin_headers_callback() argument
553 on_begin_headers_callback(session, frame, user_data); in temporal_failure_on_begin_headers_callback()
557 static ssize_t defer_data_source_read_callback(nghttp2_session *session, in defer_data_source_read_callback() argument
562 (void)session; in defer_data_source_read_callback()
573 static int on_stream_close_callback(nghttp2_session *session, int32_t stream_id, in on_stream_close_callback() argument
577 (void)session; in on_stream_close_callback()
587 static ssize_t pack_extension_callback(nghttp2_session *session, uint8_t *buf, in pack_extension_callback() argument
591 (void)session; in pack_extension_callback()
600 static int on_extension_chunk_recv_callback(nghttp2_session *session, in on_extension_chunk_recv_callback() argument
606 (void)session; in on_extension_chunk_recv_callback()
614 static int cancel_on_extension_chunk_recv_callback(nghttp2_session *session, in cancel_on_extension_chunk_recv_callback() argument
619 (void)session; in cancel_on_extension_chunk_recv_callback()
628 static int unpack_extension_callback(nghttp2_session *session, void **payload, in unpack_extension_callback() argument
633 (void)session; in unpack_extension_callback()
641 static int cancel_unpack_extension_callback(nghttp2_session *session, in cancel_unpack_extension_callback() argument
645 (void)session; in cancel_unpack_extension_callback()
661 nghttp2_session *session; in test_nghttp2_session_recv() local
687 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_recv()
713 CU_ASSERT(0 == nghttp2_session_recv(session)); in test_nghttp2_session_recv()
734 CU_ASSERT(0 == nghttp2_session_recv(session)); in test_nghttp2_session_recv()
741 nghttp2_session_del(session); in test_nghttp2_session_recv()
744 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_recv()
768 CU_ASSERT(0 == nghttp2_session_recv(session)); in test_nghttp2_session_recv()
772 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv()
775 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_recv()
778 nghttp2_session_del(session); in test_nghttp2_session_recv()
782 nghttp2_session *session; in test_nghttp2_session_recv_invalid_stream_id() local
803 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_recv_invalid_stream_id()
818 CU_ASSERT(0 == nghttp2_session_recv(session)); in test_nghttp2_session_recv_invalid_stream_id()
823 nghttp2_session_del(session); in test_nghttp2_session_recv_invalid_stream_id()
827 nghttp2_session *session; in test_nghttp2_session_recv_invalid_frame() local
849 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_recv_invalid_frame()
862 CU_ASSERT(0 == nghttp2_session_recv(session)); in test_nghttp2_session_recv_invalid_frame()
863 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_recv_invalid_frame()
870 CU_ASSERT(0 == nghttp2_session_recv(session)); in test_nghttp2_session_recv_invalid_frame()
871 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_recv_invalid_frame()
879 nghttp2_session_del(session); in test_nghttp2_session_recv_invalid_frame()
883 nghttp2_session *session; in test_nghttp2_session_recv_eof() local
890 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_recv_eof()
891 CU_ASSERT(NGHTTP2_ERR_EOF == nghttp2_session_recv(session)); in test_nghttp2_session_recv_eof()
893 nghttp2_session_del(session); in test_nghttp2_session_recv_eof()
897 nghttp2_session *session; in test_nghttp2_session_recv_data() local
913 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_data()
927 rv = nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 4096); in test_nghttp2_session_recv_data()
932 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_data()
935 nghttp2_session_del(session); in test_nghttp2_session_recv_data()
937 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_data()
940 stream = open_sent_stream2(session, 1, NGHTTP2_STREAM_CLOSING); in test_nghttp2_session_recv_data()
948 rv = nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 4096); in test_nghttp2_session_recv_data()
953 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_data()
961 rv = nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 4096); in test_nghttp2_session_recv_data()
967 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_session_recv_data()
971 rv = nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 4096); in test_nghttp2_session_recv_data()
978 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_data()
981 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_recv_data()
991 rv = nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 4096); in test_nghttp2_session_recv_data()
994 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_data()
997 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_recv_data()
1008 rv = nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 4096); in test_nghttp2_session_recv_data()
1013 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_data()
1017 nghttp2_session_del(session); in test_nghttp2_session_recv_data()
1020 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_data()
1028 stream = open_recv_stream(session, 1); in test_nghttp2_session_recv_data()
1034 rv = nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 4096); in test_nghttp2_session_recv_data()
1040 rv = nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 4095); in test_nghttp2_session_recv_data()
1045 CU_ASSERT(0 == session->recv_window_size); in test_nghttp2_session_recv_data()
1047 CU_ASSERT(1 == session->window_update_queued); in test_nghttp2_session_recv_data()
1055 rv = nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 4096); in test_nghttp2_session_recv_data()
1062 CU_ASSERT(32768 == session->recv_window_size); in test_nghttp2_session_recv_data()
1064 CU_ASSERT(1 == session->window_update_queued); in test_nghttp2_session_recv_data()
1071 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_recv_data()
1075 CU_ASSERT(0 == session->recv_window_size); in test_nghttp2_session_recv_data()
1077 CU_ASSERT(0 == session->window_update_queued); in test_nghttp2_session_recv_data()
1079 nghttp2_session_del(session); in test_nghttp2_session_recv_data()
1083 nghttp2_session *session; in test_nghttp2_session_recv_data_no_auto_flow_control() local
1102 nghttp2_session_server_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_data_no_auto_flow_control()
1116 open_recv_stream(session, 1); in test_nghttp2_session_recv_data_no_auto_flow_control()
1120 rv = nghttp2_session_mem_recv(session, data, sendlen); in test_nghttp2_session_recv_data_no_auto_flow_control()
1124 CU_ASSERT(1 == session->consumed_size); in test_nghttp2_session_recv_data_no_auto_flow_control()
1127 nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE, 1, NGHTTP2_NO_ERROR); in test_nghttp2_session_recv_data_no_auto_flow_control()
1128 nghttp2_session_send(session); in test_nghttp2_session_recv_data_no_auto_flow_control()
1132 rv = nghttp2_session_mem_recv(session, data + sendlen, in test_nghttp2_session_recv_data_no_auto_flow_control()
1138 session->consumed_size); in test_nghttp2_session_recv_data_no_auto_flow_control()
1140 nghttp2_session_del(session); in test_nghttp2_session_recv_data_no_auto_flow_control()
1144 nghttp2_session_server_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_data_no_auto_flow_control()
1148 stream = open_recv_stream(session, 1); in test_nghttp2_session_recv_data_no_auto_flow_control()
1151 rv = nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + hd.length); in test_nghttp2_session_recv_data_no_auto_flow_control()
1156 CU_ASSERT((int32_t)hd.length == session->consumed_size); in test_nghttp2_session_recv_data_no_auto_flow_control()
1158 nghttp2_session_del(session); in test_nghttp2_session_recv_data_no_auto_flow_control()
1161 nghttp2_session_server_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_data_no_auto_flow_control()
1163 stream = open_recv_stream(session, 1); in test_nghttp2_session_recv_data_no_auto_flow_control()
1173 rv = nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 4096); in test_nghttp2_session_recv_data_no_auto_flow_control()
1180 rv = nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 4095); in test_nghttp2_session_recv_data_no_auto_flow_control()
1183 CU_ASSERT(65535 == session->recv_window_size); in test_nghttp2_session_recv_data_no_auto_flow_control()
1188 nghttp2_session_consume_connection(session, 32767); in test_nghttp2_session_recv_data_no_auto_flow_control()
1189 nghttp2_session_consume_connection(session, 32768); in test_nghttp2_session_recv_data_no_auto_flow_control()
1191 CU_ASSERT(32768 == session->recv_window_size); in test_nghttp2_session_recv_data_no_auto_flow_control()
1193 CU_ASSERT(1 == session->window_update_queued); in test_nghttp2_session_recv_data_no_auto_flow_control()
1200 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_recv_data_no_auto_flow_control()
1201 CU_ASSERT(0 == session->recv_window_size); in test_nghttp2_session_recv_data_no_auto_flow_control()
1203 CU_ASSERT(0 == session->window_update_queued); in test_nghttp2_session_recv_data_no_auto_flow_control()
1208 nghttp2_session_consume_stream(session, 1, 32767); in test_nghttp2_session_recv_data_no_auto_flow_control()
1209 nghttp2_session_consume_stream(session, 1, 32768); in test_nghttp2_session_recv_data_no_auto_flow_control()
1211 CU_ASSERT(0 == session->recv_window_size); in test_nghttp2_session_recv_data_no_auto_flow_control()
1213 CU_ASSERT(0 == session->window_update_queued); in test_nghttp2_session_recv_data_no_auto_flow_control()
1218 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_recv_data_no_auto_flow_control()
1219 CU_ASSERT(0 == session->recv_window_size); in test_nghttp2_session_recv_data_no_auto_flow_control()
1221 CU_ASSERT(0 == session->window_update_queued); in test_nghttp2_session_recv_data_no_auto_flow_control()
1225 nghttp2_session_del(session); in test_nghttp2_session_recv_data_no_auto_flow_control()
1230 nghttp2_session *session; in test_nghttp2_session_recv_continuation() local
1254 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_continuation()
1308 rv = nghttp2_session_mem_recv(session, data, datalen); in test_nghttp2_session_recv_continuation()
1314 nghttp2_session_del(session); in test_nghttp2_session_recv_continuation()
1317 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_continuation()
1364 rv = nghttp2_session_mem_recv(session, data, datalen); in test_nghttp2_session_recv_continuation()
1371 nghttp2_session_del(session); in test_nghttp2_session_recv_continuation()
1374 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_continuation()
1413 rv = nghttp2_session_mem_recv(session, data, datalen); in test_nghttp2_session_recv_continuation()
1418 nghttp2_session_get_next_ob_item(session)->frame.hd.type); in test_nghttp2_session_recv_continuation()
1422 nghttp2_session_del(session); in test_nghttp2_session_recv_continuation()
1426 nghttp2_session *session; in test_nghttp2_session_recv_headers_with_priority() local
1447 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_headers_with_priority()
1451 open_recv_stream(session, 1); in test_nghttp2_session_recv_headers_with_priority()
1475 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_recv_headers_with_priority()
1480 stream = nghttp2_session_get_stream(session, 3); in test_nghttp2_session_recv_headers_with_priority()
1512 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_recv_headers_with_priority()
1517 stream = nghttp2_session_get_stream(session, 5); in test_nghttp2_session_recv_headers_with_priority()
1521 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_headers_with_priority()
1529 nghttp2_session_del(session); in test_nghttp2_session_recv_headers_with_priority()
1532 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_headers_with_priority()
1557 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_recv_headers_with_priority()
1562 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_session_recv_headers_with_priority()
1566 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_headers_with_priority()
1575 nghttp2_session_del(session); in test_nghttp2_session_recv_headers_with_priority()
1579 nghttp2_session *session; in test_nghttp2_session_recv_headers_with_padding() local
1595 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_headers_with_padding()
1596 nghttp2_session_send(session); in test_nghttp2_session_recv_headers_with_padding()
1617 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_recv_headers_with_padding()
1622 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_headers_with_padding()
1628 nghttp2_session_del(session); in test_nghttp2_session_recv_headers_with_padding()
1631 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_headers_with_padding()
1632 nghttp2_session_send(session); in test_nghttp2_session_recv_headers_with_padding()
1634 open_sent_stream(session, 1); in test_nghttp2_session_recv_headers_with_padding()
1652 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_recv_headers_with_padding()
1657 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_headers_with_padding()
1663 nghttp2_session_del(session); in test_nghttp2_session_recv_headers_with_padding()
1666 static int response_on_begin_frame_callback(nghttp2_session *session, in response_on_begin_frame_callback() argument
1676 rv = nghttp2_submit_response(session, hd->stream_id, resnv, ARRLEN(resnv), in response_on_begin_frame_callback()
1685 nghttp2_session *session; in test_nghttp2_session_recv_headers_early_response() local
1704 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_recv_headers_early_response()
1724 rv = nghttp2_session_mem_recv(session, buf->pos, 9); in test_nghttp2_session_recv_headers_early_response()
1728 rv = nghttp2_session_send(session); in test_nghttp2_session_recv_headers_early_response()
1733 nghttp2_session_mem_recv(session, buf->pos + 9, nghttp2_buf_len(buf) - 9); in test_nghttp2_session_recv_headers_early_response()
1737 stream = nghttp2_session_get_stream_raw(session, 1); in test_nghttp2_session_recv_headers_early_response()
1742 nghttp2_session_del(session); in test_nghttp2_session_recv_headers_early_response()
1747 nghttp2_session *session; in test_nghttp2_session_recv_headers_for_closed_stream() local
1768 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_headers_for_closed_stream()
1793 rv = nghttp2_session_mem_recv(session, buf->pos, NGHTTP2_FRAME_HDLEN); in test_nghttp2_session_recv_headers_for_closed_stream()
1799 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_session_recv_headers_for_closed_stream()
1803 rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE, 1, in test_nghttp2_session_recv_headers_for_closed_stream()
1808 rv = nghttp2_session_mem_send(session, &data); in test_nghttp2_session_recv_headers_for_closed_stream()
1812 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_session_recv_headers_for_closed_stream()
1819 rv = nghttp2_session_mem_recv(session, buf->pos + NGHTTP2_FRAME_HDLEN, in test_nghttp2_session_recv_headers_for_closed_stream()
1828 nghttp2_session_del(session); in test_nghttp2_session_recv_headers_for_closed_stream()
1832 nghttp2_session *session; in test_nghttp2_session_server_recv_push_response() local
1850 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_server_recv_push_response()
1854 open_sent_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_server_recv_push_response()
1872 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_server_recv_push_response()
1879 nghttp2_session_del(session); in test_nghttp2_session_server_recv_push_response()
1883 nghttp2_session *session; in test_nghttp2_session_recv_premature_headers() local
1900 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_premature_headers()
1911 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf) - 1); in test_nghttp2_session_recv_premature_headers()
1915 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_premature_headers()
1921 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_recv_premature_headers()
1925 nghttp2_session_del(session); in test_nghttp2_session_recv_premature_headers()
1928 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_premature_headers()
1931 open_sent_stream3(session, 1, NGHTTP2_STREAM_FLAG_NONE, &pri_spec_default, in test_nghttp2_session_recv_premature_headers()
1943 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf) - 1); in test_nghttp2_session_recv_premature_headers()
1947 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_premature_headers()
1953 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_recv_premature_headers()
1956 nghttp2_session_del(session); in test_nghttp2_session_recv_premature_headers()
1961 nghttp2_session *session; in test_nghttp2_session_recv_unknown_frame() local
1977 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_unknown_frame()
1982 rv = nghttp2_session_mem_recv(session, data, datalen); in test_nghttp2_session_recv_unknown_frame()
1986 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_session_recv_unknown_frame()
1988 nghttp2_session_del(session); in test_nghttp2_session_recv_unknown_frame()
1992 nghttp2_session *session; in test_nghttp2_session_recv_unexpected_continuation() local
2010 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_unexpected_continuation()
2012 open_recv_stream(session, 1); in test_nghttp2_session_recv_unexpected_continuation()
2017 rv = nghttp2_session_mem_recv(session, data, datalen); in test_nghttp2_session_recv_unexpected_continuation()
2022 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_unexpected_continuation()
2026 nghttp2_session_del(session); in test_nghttp2_session_recv_unexpected_continuation()
2030 nghttp2_session *session; in test_nghttp2_session_recv_settings_header_table_size() local
2048 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_recv_settings_header_table_size()
2071 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_recv_settings_header_table_size()
2076 CU_ASSERT(3000 == session->remote_settings.header_table_size); in test_nghttp2_session_recv_settings_header_table_size()
2077 CU_ASSERT(16384 == session->remote_settings.initial_window_size); in test_nghttp2_session_recv_settings_header_table_size()
2106 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_recv_settings_header_table_size()
2111 CU_ASSERT(3001 == session->remote_settings.header_table_size); in test_nghttp2_session_recv_settings_header_table_size()
2112 CU_ASSERT(16383 == session->remote_settings.initial_window_size); in test_nghttp2_session_recv_settings_header_table_size()
2119 nghttp2_submit_request(session, NULL, &nv, 1, NULL, NULL); in test_nghttp2_session_recv_settings_header_table_size()
2120 nghttp2_session_send(session); in test_nghttp2_session_recv_settings_header_table_size()
2122 CU_ASSERT(0 < session->hd_deflater.ctx.hd_table.len); in test_nghttp2_session_recv_settings_header_table_size()
2148 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_recv_settings_header_table_size()
2153 CU_ASSERT(4096 == session->remote_settings.header_table_size); in test_nghttp2_session_recv_settings_header_table_size()
2154 CU_ASSERT(16382 == session->remote_settings.initial_window_size); in test_nghttp2_session_recv_settings_header_table_size()
2155 CU_ASSERT(0 == session->hd_deflater.ctx.hd_table.len); in test_nghttp2_session_recv_settings_header_table_size()
2162 nghttp2_submit_request(session, NULL, &nv, 1, NULL, NULL); in test_nghttp2_session_recv_settings_header_table_size()
2163 nghttp2_session_send(session); in test_nghttp2_session_recv_settings_header_table_size()
2165 CU_ASSERT(0 < session->hd_deflater.ctx.hd_table.len); in test_nghttp2_session_recv_settings_header_table_size()
2191 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_recv_settings_header_table_size()
2196 CU_ASSERT(0 == session->remote_settings.header_table_size); in test_nghttp2_session_recv_settings_header_table_size()
2197 CU_ASSERT(16381 == session->remote_settings.initial_window_size); in test_nghttp2_session_recv_settings_header_table_size()
2198 CU_ASSERT(0 == session->hd_deflater.ctx.hd_table.len); in test_nghttp2_session_recv_settings_header_table_size()
2203 nghttp2_session_del(session); in test_nghttp2_session_recv_settings_header_table_size()
2207 nghttp2_session *session; in test_nghttp2_session_recv_too_large_frame_length() local
2219 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_recv_too_large_frame_length()
2223 CU_ASSERT(sizeof(buf) == nghttp2_session_mem_recv(session, buf, sizeof(buf))); in test_nghttp2_session_recv_too_large_frame_length()
2225 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_recv_too_large_frame_length()
2230 nghttp2_session_del(session); in test_nghttp2_session_recv_too_large_frame_length()
2234 nghttp2_session *session; in test_nghttp2_session_recv_extension() local
2263 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_extension()
2266 rv = nghttp2_session_mem_recv(session, buf.pos, nghttp2_buf_len(&buf)); in test_nghttp2_session_recv_extension()
2274 nghttp2_session_del(session); in test_nghttp2_session_recv_extension()
2282 nghttp2_session_server_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_extension()
2285 rv = nghttp2_session_mem_recv(session, buf.pos, nghttp2_buf_len(&buf)); in test_nghttp2_session_recv_extension()
2290 nghttp2_session_del(session); in test_nghttp2_session_recv_extension()
2298 nghttp2_session_server_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_extension()
2301 rv = nghttp2_session_mem_recv(session, buf.pos, nghttp2_buf_len(&buf)); in test_nghttp2_session_recv_extension()
2306 nghttp2_session_del(session); in test_nghttp2_session_recv_extension()
2315 nghttp2_session *session; in test_nghttp2_session_recv_altsvc() local
2339 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_altsvc()
2351 rv = nghttp2_session_mem_recv(session, buf.pos, nghttp2_buf_len(&buf)); in test_nghttp2_session_recv_altsvc()
2359 nghttp2_session_del(session); in test_nghttp2_session_recv_altsvc()
2364 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_altsvc()
2375 rv = nghttp2_session_mem_recv(session, buf.pos, nghttp2_buf_len(&buf)); in test_nghttp2_session_recv_altsvc()
2380 nghttp2_session_del(session); in test_nghttp2_session_recv_altsvc()
2385 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_altsvc()
2396 rv = nghttp2_session_mem_recv(session, buf.pos, nghttp2_buf_len(&buf)); in test_nghttp2_session_recv_altsvc()
2401 nghttp2_session_del(session); in test_nghttp2_session_recv_altsvc()
2406 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_altsvc()
2408 open_sent_stream(session, 1); in test_nghttp2_session_recv_altsvc()
2420 rv = nghttp2_session_mem_recv(session, buf.pos, nghttp2_buf_len(&buf)); in test_nghttp2_session_recv_altsvc()
2425 nghttp2_session_del(session); in test_nghttp2_session_recv_altsvc()
2430 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_altsvc()
2441 rv = nghttp2_session_mem_recv(session, buf.pos, nghttp2_buf_len(&buf)); in test_nghttp2_session_recv_altsvc()
2446 nghttp2_session_del(session); in test_nghttp2_session_recv_altsvc()
2451 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_altsvc()
2464 rv = nghttp2_session_mem_recv(session, buf.pos, nghttp2_buf_len(&buf)); in test_nghttp2_session_recv_altsvc()
2471 nghttp2_session_del(session); in test_nghttp2_session_recv_altsvc()
2476 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_altsvc()
2478 session->local_settings.max_frame_size = NGHTTP2_MAX_FRAME_SIZE_MIN - 1; in test_nghttp2_session_recv_altsvc()
2491 rv = nghttp2_session_mem_recv(session, buf.pos, nghttp2_buf_len(&buf)); in test_nghttp2_session_recv_altsvc()
2496 nghttp2_session_del(session); in test_nghttp2_session_recv_altsvc()
2501 nghttp2_session_server_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_altsvc()
2513 rv = nghttp2_session_mem_recv(session, buf.pos, nghttp2_buf_len(&buf)); in test_nghttp2_session_recv_altsvc()
2518 nghttp2_session_del(session); in test_nghttp2_session_recv_altsvc()
2525 nghttp2_session *session; in test_nghttp2_session_recv_origin() local
2550 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_origin()
2559 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_recv_origin()
2568 nghttp2_session_del(session); in test_nghttp2_session_recv_origin()
2572 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_origin()
2583 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_recv_origin()
2589 nghttp2_session_del(session); in test_nghttp2_session_recv_origin()
2594 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_origin()
2603 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_recv_origin()
2609 nghttp2_session_del(session); in test_nghttp2_session_recv_origin()
2613 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_origin()
2622 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_recv_origin()
2628 nghttp2_session_del(session); in test_nghttp2_session_recv_origin()
2632 nghttp2_session_server_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_origin()
2640 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_recv_origin()
2646 nghttp2_session_del(session); in test_nghttp2_session_recv_origin()
2650 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_recv_origin()
2658 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_recv_origin()
2665 nghttp2_session_del(session); in test_nghttp2_session_recv_origin()
2672 nghttp2_session *session; in test_nghttp2_session_continue() local
2703 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_continue()
2705 session->opt_flags |= NGHTTP2_OPTMASK_NO_HTTP_MESSAGING; in test_nghttp2_session_continue()
2748 nghttp2_session_mem_recv(session, databuf.pos, nghttp2_buf_len(&databuf)); in test_nghttp2_session_continue()
2766 nghttp2_session_mem_recv(session, databuf.pos, nghttp2_buf_len(&databuf)); in test_nghttp2_session_continue()
2780 nghttp2_session_mem_recv(session, databuf.pos, nghttp2_buf_len(&databuf)); in test_nghttp2_session_continue()
2798 nghttp2_session_mem_recv(session, databuf.pos, nghttp2_buf_len(&databuf)); in test_nghttp2_session_continue()
2813 nghttp2_session_mem_recv(session, databuf.pos, nghttp2_buf_len(&databuf)); in test_nghttp2_session_continue()
2834 nghttp2_session_mem_recv(session, databuf.pos, nghttp2_buf_len(&databuf)); in test_nghttp2_session_continue()
2844 nghttp2_session_mem_recv(session, databuf.pos, nghttp2_buf_len(&databuf)); in test_nghttp2_session_continue()
2850 rv = nghttp2_session_mem_recv(session, NULL, 0); in test_nghttp2_session_continue()
2856 nghttp2_session_del(session); in test_nghttp2_session_continue()
2860 nghttp2_session *session; in test_nghttp2_session_add_frame() local
2877 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, &user_data)); in test_nghttp2_session_add_frame()
2890 (int32_t)session->next_stream_id, NGHTTP2_HCAT_REQUEST, NULL, nva, nvlen); in test_nghttp2_session_add_frame()
2892 session->next_stream_id += 2; in test_nghttp2_session_add_frame()
2894 CU_ASSERT(0 == nghttp2_session_add_item(session, item)); in test_nghttp2_session_add_frame()
2895 CU_ASSERT(NULL != nghttp2_outbound_queue_top(&session->ob_syn)); in test_nghttp2_session_add_frame()
2896 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_add_frame()
2902 nghttp2_session_del(session); in test_nghttp2_session_add_frame()
2906 nghttp2_session *session; in test_nghttp2_session_on_request_headers_received() local
2923 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_request_headers_received()
2934 CU_ASSERT(0 == nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_on_request_headers_received()
2936 stream = nghttp2_session_get_stream(session, stream_id); in test_nghttp2_session_on_request_headers_received()
2943 session->pending_local_max_concurrent_stream = 1; in test_nghttp2_session_on_request_headers_received()
2949 nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_on_request_headers_received()
2951 CU_ASSERT(0 == (session->goaway_flags & NGHTTP2_GOAWAY_TERM_ON_SEND)); in test_nghttp2_session_on_request_headers_received()
2954 session->local_settings.max_concurrent_streams = in test_nghttp2_session_on_request_headers_received()
2964 nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_on_request_headers_received()
2966 CU_ASSERT(0 == (session->goaway_flags & NGHTTP2_GOAWAY_TERM_ON_SEND)); in test_nghttp2_session_on_request_headers_received()
2977 nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_on_request_headers_received()
2979 CU_ASSERT(session->goaway_flags & NGHTTP2_GOAWAY_TERM_ON_SEND); in test_nghttp2_session_on_request_headers_received()
2983 nghttp2_session_del(session); in test_nghttp2_session_on_request_headers_received()
2986 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_request_headers_received()
2995 CU_ASSERT(0 == nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_on_request_headers_received()
3001 nghttp2_session_del(session); in test_nghttp2_session_on_request_headers_received()
3004 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_request_headers_received()
3012 nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_on_request_headers_received()
3014 CU_ASSERT(session->goaway_flags & NGHTTP2_GOAWAY_TERM_ON_SEND); in test_nghttp2_session_on_request_headers_received()
3018 nghttp2_session_del(session); in test_nghttp2_session_on_request_headers_received()
3020 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_request_headers_received()
3028 nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_on_request_headers_received()
3030 CU_ASSERT(session->goaway_flags & NGHTTP2_GOAWAY_TERM_ON_SEND); in test_nghttp2_session_on_request_headers_received()
3034 nghttp2_session_del(session); in test_nghttp2_session_on_request_headers_received()
3036 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_request_headers_received()
3038 session->next_stream_id = 5; in test_nghttp2_session_on_request_headers_received()
3039 session->last_sent_stream_id = 3; in test_nghttp2_session_on_request_headers_received()
3048 nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_on_request_headers_received()
3050 CU_ASSERT(0 == (session->goaway_flags & NGHTTP2_GOAWAY_TERM_ON_SEND)); in test_nghttp2_session_on_request_headers_received()
3054 nghttp2_session_del(session); in test_nghttp2_session_on_request_headers_received()
3056 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_request_headers_received()
3059 session->local_last_stream_id = 3; in test_nghttp2_session_on_request_headers_received()
3064 CU_ASSERT(0 == nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_on_request_headers_received()
3072 session->goaway_flags |= NGHTTP2_GOAWAY_SENT; in test_nghttp2_session_on_request_headers_received()
3075 nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_on_request_headers_received()
3077 CU_ASSERT(0 == (session->goaway_flags & NGHTTP2_GOAWAY_TERM_ON_SEND)); in test_nghttp2_session_on_request_headers_received()
3081 nghttp2_session_del(session); in test_nghttp2_session_on_request_headers_received()
3083 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_request_headers_received()
3086 stream = open_recv_stream(session, 1); in test_nghttp2_session_on_request_headers_received()
3088 nghttp2_session_close_stream(session, 1, NGHTTP2_NO_ERROR); in test_nghttp2_session_on_request_headers_received()
3094 nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_on_request_headers_received()
3095 CU_ASSERT(session->goaway_flags & NGHTTP2_GOAWAY_TERM_ON_SEND); in test_nghttp2_session_on_request_headers_received()
3099 nghttp2_session_del(session); in test_nghttp2_session_on_request_headers_received()
3103 nghttp2_session *session; in test_nghttp2_session_on_response_headers_received() local
3115 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_response_headers_received()
3116 stream = open_sent_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_session_on_response_headers_received()
3123 CU_ASSERT(0 == nghttp2_session_on_response_headers_received(session, &frame, in test_nghttp2_session_on_response_headers_received()
3129 nghttp2_session_del(session); in test_nghttp2_session_on_response_headers_received()
3133 nghttp2_session *session; in test_nghttp2_session_on_headers_received() local
3145 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_headers_received()
3146 stream = open_sent_stream2(session, 1, NGHTTP2_STREAM_OPENED); in test_nghttp2_session_on_headers_received()
3154 CU_ASSERT(0 == nghttp2_session_on_headers_received(session, &frame, stream)); in test_nghttp2_session_on_headers_received()
3161 CU_ASSERT(0 == nghttp2_session_on_headers_received(session, &frame, stream)); in test_nghttp2_session_on_headers_received()
3166 stream = open_sent_stream2(session, 3, NGHTTP2_STREAM_CLOSING); in test_nghttp2_session_on_headers_received()
3170 nghttp2_session_on_headers_received(session, &frame, stream)); in test_nghttp2_session_on_headers_received()
3176 stream = open_recv_stream(session, 2); in test_nghttp2_session_on_headers_received()
3181 CU_ASSERT(0 == nghttp2_session_on_headers_received(session, &frame, stream)); in test_nghttp2_session_on_headers_received()
3189 nghttp2_session_on_headers_received(session, &frame, stream)); in test_nghttp2_session_on_headers_received()
3194 nghttp2_session_del(session); in test_nghttp2_session_on_headers_received()
3198 nghttp2_session *session; in test_nghttp2_session_on_push_response_headers_received() local
3212 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_push_response_headers_received()
3213 stream = open_recv_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_on_push_response_headers_received()
3223 CU_ASSERT(1 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_response_headers_received()
3225 session, &frame, stream)); in test_nghttp2_session_on_push_response_headers_received()
3227 CU_ASSERT(0 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_response_headers_received()
3229 CU_ASSERT(1 == session->num_incoming_streams); in test_nghttp2_session_on_push_response_headers_received()
3234 session->pending_local_max_concurrent_stream = 1; in test_nghttp2_session_on_push_response_headers_received()
3235 stream = open_recv_stream2(session, 4, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_on_push_response_headers_received()
3238 nghttp2_session_on_push_response_headers_received(session, &frame, in test_nghttp2_session_on_push_response_headers_received()
3240 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_push_response_headers_received()
3243 CU_ASSERT(1 == session->num_incoming_streams); in test_nghttp2_session_on_push_response_headers_received()
3244 CU_ASSERT(1 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_response_headers_received()
3246 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_on_push_response_headers_received()
3247 CU_ASSERT(1 == session->num_incoming_streams); in test_nghttp2_session_on_push_response_headers_received()
3251 session->local_settings.max_concurrent_streams = 1; in test_nghttp2_session_on_push_response_headers_received()
3253 stream = open_recv_stream2(session, 6, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_on_push_response_headers_received()
3257 nghttp2_session_on_push_response_headers_received(session, &frame, in test_nghttp2_session_on_push_response_headers_received()
3259 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_push_response_headers_received()
3262 CU_ASSERT(1 == session->num_incoming_streams); in test_nghttp2_session_on_push_response_headers_received()
3263 CU_ASSERT(1 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_response_headers_received()
3266 nghttp2_session_del(session); in test_nghttp2_session_on_push_response_headers_received()
3270 nghttp2_session *session; in test_nghttp2_session_on_priority_received() local
3282 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_priority_received()
3283 stream = open_recv_stream(session, 1); in test_nghttp2_session_on_priority_received()
3290 CU_ASSERT(0 == nghttp2_session_on_priority_received(session, &frame)); in test_nghttp2_session_on_priority_received()
3294 stream = open_sent_stream(session, 2); in test_nghttp2_session_on_priority_received()
3295 dep_stream = open_recv_stream(session, 3); in test_nghttp2_session_on_priority_received()
3302 CU_ASSERT(0 == nghttp2_session_on_priority_received(session, &frame)); in test_nghttp2_session_on_priority_received()
3309 CU_ASSERT(0 == nghttp2_session_on_priority_received(session, &frame)); in test_nghttp2_session_on_priority_received()
3311 stream = nghttp2_session_get_stream_raw(session, frame.hd.stream_id); in test_nghttp2_session_on_priority_received()
3317 nghttp2_session_del(session); in test_nghttp2_session_on_priority_received()
3320 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_priority_received()
3321 open_recv_stream(session, 1); in test_nghttp2_session_on_priority_received()
3327 CU_ASSERT(0 == nghttp2_session_on_priority_received(session, &frame)); in test_nghttp2_session_on_priority_received()
3329 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_priority_received()
3334 nghttp2_session_del(session); in test_nghttp2_session_on_priority_received()
3337 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_priority_received()
3343 CU_ASSERT(0 == nghttp2_session_on_priority_received(session, &frame)); in test_nghttp2_session_on_priority_received()
3345 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_priority_received()
3350 nghttp2_session_del(session); in test_nghttp2_session_on_priority_received()
3354 nghttp2_session *session; in test_nghttp2_session_on_rst_stream_received() local
3359 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_rst_stream_received()
3360 open_recv_stream(session, 1); in test_nghttp2_session_on_rst_stream_received()
3364 CU_ASSERT(0 == nghttp2_session_on_rst_stream_received(session, &frame)); in test_nghttp2_session_on_rst_stream_received()
3365 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 1)); in test_nghttp2_session_on_rst_stream_received()
3368 nghttp2_session_del(session); in test_nghttp2_session_on_rst_stream_received()
3372 nghttp2_session *session; in test_nghttp2_session_on_settings_received() local
3404 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_settings_received()
3405 session->remote_settings.initial_window_size = 16 * 1024; in test_nghttp2_session_on_settings_received()
3407 stream1 = open_sent_stream(session, 1); in test_nghttp2_session_on_settings_received()
3408 stream2 = open_recv_stream(session, 2); in test_nghttp2_session_on_settings_received()
3418 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &frame, 0)); in test_nghttp2_session_on_settings_received()
3419 CU_ASSERT(1000000009 == session->remote_settings.max_concurrent_streams); in test_nghttp2_session_on_settings_received()
3420 CU_ASSERT(64 * 1024 == session->remote_settings.initial_window_size); in test_nghttp2_session_on_settings_received()
3421 CU_ASSERT(1024 == session->remote_settings.header_table_size); in test_nghttp2_session_on_settings_received()
3422 CU_ASSERT(0 == session->remote_settings.enable_push); in test_nghttp2_session_on_settings_received()
3429 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &frame, 0)); in test_nghttp2_session_on_settings_received()
3435 session, stream1->stream_id)); in test_nghttp2_session_on_settings_received()
3437 session, stream2->stream_id)); in test_nghttp2_session_on_settings_received()
3441 nghttp2_session_del(session); in test_nghttp2_session_on_settings_received()
3444 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_on_settings_received()
3447 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &frame, 0)); in test_nghttp2_session_on_settings_received()
3448 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_settings_received()
3453 nghttp2_session_del(session); in test_nghttp2_session_on_settings_received()
3456 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_on_settings_received()
3459 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &frame, 0)); in test_nghttp2_session_on_settings_received()
3460 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_settings_received()
3465 nghttp2_session_del(session); in test_nghttp2_session_on_settings_received()
3469 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_on_settings_received()
3471 nghttp2_submit_request(session, NULL, &nv, 1, NULL, NULL); in test_nghttp2_session_on_settings_received()
3473 nghttp2_session_send(session); in test_nghttp2_session_on_settings_received()
3475 CU_ASSERT(session->hd_deflater.ctx.hd_table.len > 0); in test_nghttp2_session_on_settings_received()
3486 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &frame, 0)); in test_nghttp2_session_on_settings_received()
3488 CU_ASSERT(0 == session->hd_deflater.ctx.hd_table.len); in test_nghttp2_session_on_settings_received()
3489 CU_ASSERT(2048 == session->hd_deflater.ctx.hd_table_bufsize_max); in test_nghttp2_session_on_settings_received()
3490 CU_ASSERT(2048 == session->remote_settings.header_table_size); in test_nghttp2_session_on_settings_received()
3493 nghttp2_session_del(session); in test_nghttp2_session_on_settings_received()
3500 nghttp2_session_client_new2(&session, &callbacks, NULL, option); in test_nghttp2_session_on_settings_received()
3501 CU_ASSERT(1000 == session->remote_settings.max_concurrent_streams); in test_nghttp2_session_on_settings_received()
3504 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &frame, 0)); in test_nghttp2_session_on_settings_received()
3506 session->remote_settings.max_concurrent_streams); in test_nghttp2_session_on_settings_received()
3509 nghttp2_session_del(session); in test_nghttp2_session_on_settings_received()
3513 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_on_settings_received()
3521 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &frame, 0)); in test_nghttp2_session_on_settings_received()
3523 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_settings_received()
3529 nghttp2_session_del(session); in test_nghttp2_session_on_settings_received()
3532 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_on_settings_received()
3534 stream1 = open_recv_stream(session, 1); in test_nghttp2_session_on_settings_received()
3540 CU_ASSERT(0 == nghttp2_session_on_window_update_received(session, &frame)); in test_nghttp2_session_on_settings_received()
3552 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &frame, 0)); in test_nghttp2_session_on_settings_received()
3556 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_settings_received()
3561 item = nghttp2_outbound_queue_top(&session->ob_reg); in test_nghttp2_session_on_settings_received()
3567 nghttp2_session_del(session); in test_nghttp2_session_on_settings_received()
3571 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_on_settings_received()
3573 session->remote_settings.enable_connect_protocol = 1; in test_nghttp2_session_on_settings_received()
3581 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &frame, 0)); in test_nghttp2_session_on_settings_received()
3585 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_settings_received()
3590 nghttp2_session_del(session); in test_nghttp2_session_on_settings_received()
3594 nghttp2_session *session; in test_nghttp2_session_on_push_promise_received() local
3612 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_push_promise_received()
3614 stream = open_sent_stream(session, 1); in test_nghttp2_session_on_push_promise_received()
3622 CU_ASSERT(0 == nghttp2_session_on_push_promise_received(session, &frame)); in test_nghttp2_session_on_push_promise_received()
3625 CU_ASSERT(1 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_promise_received()
3626 promised_stream = nghttp2_session_get_stream(session, 2); in test_nghttp2_session_on_push_promise_received()
3628 CU_ASSERT(2 == session->last_recv_stream_id); in test_nghttp2_session_on_push_promise_received()
3637 nghttp2_session_on_push_promise_received(session, &frame)); in test_nghttp2_session_on_push_promise_received()
3641 CU_ASSERT(1 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_promise_received()
3642 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 4)); in test_nghttp2_session_on_push_promise_received()
3643 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_push_promise_received()
3646 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_on_push_promise_received()
3647 CU_ASSERT(4 == session->last_recv_stream_id); in test_nghttp2_session_on_push_promise_received()
3649 nghttp2_session_del(session); in test_nghttp2_session_on_push_promise_received()
3651 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_push_promise_received()
3653 stream = open_sent_stream(session, 1); in test_nghttp2_session_on_push_promise_received()
3662 nghttp2_session_on_push_promise_received(session, &frame)); in test_nghttp2_session_on_push_promise_received()
3665 CU_ASSERT(0 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_promise_received()
3666 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 6)); in test_nghttp2_session_on_push_promise_received()
3667 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_push_promise_received()
3671 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_on_push_promise_received()
3680 nghttp2_session_on_push_promise_received(session, &frame)); in test_nghttp2_session_on_push_promise_received()
3683 CU_ASSERT(0 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_promise_received()
3684 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 8)); in test_nghttp2_session_on_push_promise_received()
3685 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_push_promise_received()
3689 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_on_push_promise_received()
3691 nghttp2_session_del(session); in test_nghttp2_session_on_push_promise_received()
3693 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_push_promise_received()
3695 stream = open_sent_stream(session, 1); in test_nghttp2_session_on_push_promise_received()
3703 CU_ASSERT(0 == nghttp2_session_on_push_promise_received(session, &frame)); in test_nghttp2_session_on_push_promise_received()
3706 CU_ASSERT(1 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_promise_received()
3707 CU_ASSERT(NULL != nghttp2_session_get_stream(session, 2)); in test_nghttp2_session_on_push_promise_received()
3712 nghttp2_session_on_push_promise_received(session, &frame)); in test_nghttp2_session_on_push_promise_received()
3715 CU_ASSERT(1 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_promise_received()
3716 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 8)); in test_nghttp2_session_on_push_promise_received()
3717 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_push_promise_received()
3720 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_on_push_promise_received()
3728 nghttp2_session_on_push_promise_received(session, &frame)); in test_nghttp2_session_on_push_promise_received()
3731 CU_ASSERT(1 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_promise_received()
3732 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 10)); in test_nghttp2_session_on_push_promise_received()
3733 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_session_on_push_promise_received()
3736 nghttp2_session_del(session); in test_nghttp2_session_on_push_promise_received()
3738 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_push_promise_received()
3740 open_recv_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_on_push_promise_received()
3749 nghttp2_session_on_push_promise_received(session, &frame)); in test_nghttp2_session_on_push_promise_received()
3753 CU_ASSERT(1 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_promise_received()
3756 nghttp2_session_del(session); in test_nghttp2_session_on_push_promise_received()
3759 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_push_promise_received()
3761 open_sent_stream(session, 1); in test_nghttp2_session_on_push_promise_received()
3763 session->local_settings.enable_push = 0; in test_nghttp2_session_on_push_promise_received()
3771 nghttp2_session_on_push_promise_received(session, &frame)); in test_nghttp2_session_on_push_promise_received()
3775 CU_ASSERT(0 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_promise_received()
3778 nghttp2_session_del(session); in test_nghttp2_session_on_push_promise_received()
3781 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_push_promise_received()
3783 open_sent_stream(session, 1); in test_nghttp2_session_on_push_promise_received()
3791 CU_ASSERT(0 == nghttp2_session_on_push_promise_received(session, &frame)); in test_nghttp2_session_on_push_promise_received()
3797 nghttp2_session_del(session); in test_nghttp2_session_on_push_promise_received()
3801 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_push_promise_received()
3803 open_sent_stream(session, 1); in test_nghttp2_session_on_push_promise_received()
3806 nghttp2_submit_settings(session, NGHTTP2_FLAG_NONE, &iv, 1); in test_nghttp2_session_on_push_promise_received()
3812 nghttp2_session_on_push_promise_received(session, &frame)); in test_nghttp2_session_on_push_promise_received()
3814 CU_ASSERT(0 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_promise_received()
3817 nghttp2_session_del(session); in test_nghttp2_session_on_push_promise_received()
3820 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_push_promise_received()
3821 session->max_incoming_reserved_streams = 1; in test_nghttp2_session_on_push_promise_received()
3823 open_sent_stream(session, 1); in test_nghttp2_session_on_push_promise_received()
3824 open_recv_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_on_push_promise_received()
3826 CU_ASSERT(1 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_promise_received()
3832 nghttp2_session_on_push_promise_received(session, &frame)); in test_nghttp2_session_on_push_promise_received()
3834 CU_ASSERT(1 == session->num_incoming_reserved_streams); in test_nghttp2_session_on_push_promise_received()
3836 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_push_promise_received()
3842 nghttp2_session_del(session); in test_nghttp2_session_on_push_promise_received()
3846 nghttp2_session *session; in test_nghttp2_session_on_ping_received() local
3861 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_ping_received()
3864 CU_ASSERT(0 == nghttp2_session_on_ping_received(session, &frame)); in test_nghttp2_session_on_ping_received()
3869 CU_ASSERT(NULL == nghttp2_outbound_queue_top(&session->ob_urgent)); in test_nghttp2_session_on_ping_received()
3874 CU_ASSERT(0 == nghttp2_session_on_ping_received(session, &frame)); in test_nghttp2_session_on_ping_received()
3876 top = nghttp2_outbound_queue_top(&session->ob_urgent); in test_nghttp2_session_on_ping_received()
3882 nghttp2_session_del(session); in test_nghttp2_session_on_ping_received()
3888 nghttp2_session_server_new2(&session, &callbacks, &user_data, option); in test_nghttp2_session_on_ping_received()
3893 CU_ASSERT(0 == nghttp2_session_on_ping_received(session, &frame)); in test_nghttp2_session_on_ping_received()
3895 CU_ASSERT(NULL == nghttp2_outbound_queue_top(&session->ob_urgent)); in test_nghttp2_session_on_ping_received()
3898 nghttp2_session_del(session); in test_nghttp2_session_on_ping_received()
3903 nghttp2_session *session; in test_nghttp2_session_on_goaway_received() local
3919 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_goaway_received()
3922 if (nghttp2_session_is_my_stream_id(session, i)) { in test_nghttp2_session_on_goaway_received()
3923 open_sent_stream(session, i); in test_nghttp2_session_on_goaway_received()
3925 open_recv_stream(session, i); in test_nghttp2_session_on_goaway_received()
3933 CU_ASSERT(0 == nghttp2_session_on_goaway_received(session, &frame)); in test_nghttp2_session_on_goaway_received()
3936 CU_ASSERT(3 == session->remote_last_stream_id); in test_nghttp2_session_on_goaway_received()
3940 CU_ASSERT(NULL != nghttp2_session_get_stream(session, 1)); in test_nghttp2_session_on_goaway_received()
3941 CU_ASSERT(NULL != nghttp2_session_get_stream(session, 2)); in test_nghttp2_session_on_goaway_received()
3942 CU_ASSERT(NULL != nghttp2_session_get_stream(session, 3)); in test_nghttp2_session_on_goaway_received()
3943 CU_ASSERT(NULL != nghttp2_session_get_stream(session, 4)); in test_nghttp2_session_on_goaway_received()
3944 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 5)); in test_nghttp2_session_on_goaway_received()
3945 CU_ASSERT(NULL != nghttp2_session_get_stream(session, 6)); in test_nghttp2_session_on_goaway_received()
3946 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 7)); in test_nghttp2_session_on_goaway_received()
3949 nghttp2_session_del(session); in test_nghttp2_session_on_goaway_received()
3953 nghttp2_session *session; in test_nghttp2_session_on_window_update_received() local
3969 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_window_update_received()
3971 stream = open_sent_stream(session, 1); in test_nghttp2_session_on_window_update_received()
3980 CU_ASSERT(0 == nghttp2_session_on_window_update_received(session, &frame)); in test_nghttp2_session_on_window_update_received()
3988 CU_ASSERT(0 == nghttp2_session_on_window_update_received(session, &frame)); in test_nghttp2_session_on_window_update_received()
3998 open_recv_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_on_window_update_received()
4003 CU_ASSERT(!(session->goaway_flags & NGHTTP2_GOAWAY_TERM_ON_SEND)); in test_nghttp2_session_on_window_update_received()
4004 CU_ASSERT(0 == nghttp2_session_on_window_update_received(session, &frame)); in test_nghttp2_session_on_window_update_received()
4005 CU_ASSERT(session->goaway_flags & NGHTTP2_GOAWAY_TERM_ON_SEND); in test_nghttp2_session_on_window_update_received()
4009 nghttp2_session_del(session); in test_nghttp2_session_on_window_update_received()
4012 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_window_update_received()
4014 stream = open_sent_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_on_window_update_received()
4019 CU_ASSERT(0 == nghttp2_session_on_window_update_received(session, &frame)); in test_nghttp2_session_on_window_update_received()
4020 CU_ASSERT(!(session->goaway_flags & NGHTTP2_GOAWAY_TERM_ON_SEND)); in test_nghttp2_session_on_window_update_received()
4026 nghttp2_session_del(session); in test_nghttp2_session_on_window_update_received()
4030 nghttp2_session *session; in test_nghttp2_session_on_data_received() local
4039 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_data_received()
4040 stream = open_recv_stream(session, 2); in test_nghttp2_session_on_data_received()
4044 CU_ASSERT(0 == nghttp2_session_on_data_received(session, &frame)); in test_nghttp2_session_on_data_received()
4049 CU_ASSERT(0 == nghttp2_session_on_data_received(session, &frame)); in test_nghttp2_session_on_data_received()
4053 open_sent_stream2(session, 1, NGHTTP2_STREAM_CLOSING); in test_nghttp2_session_on_data_received()
4058 CU_ASSERT(0 == nghttp2_session_on_data_received(session, &frame)); in test_nghttp2_session_on_data_received()
4059 CU_ASSERT(NULL == nghttp2_outbound_queue_top(&session->ob_reg)); in test_nghttp2_session_on_data_received()
4066 CU_ASSERT(0 == nghttp2_session_on_data_received(session, &frame)); in test_nghttp2_session_on_data_received()
4067 top = nghttp2_outbound_queue_top(&session->ob_reg); in test_nghttp2_session_on_data_received()
4071 nghttp2_session_del(session); in test_nghttp2_session_on_data_received()
4075 nghttp2_session *session; in test_nghttp2_session_on_data_received_fail_fast() local
4087 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_on_data_received_fail_fast()
4090 stream = open_recv_stream(session, 1); in test_nghttp2_session_on_data_received_fail_fast()
4094 nghttp2_session_mem_recv(session, buf, sizeof(buf))); in test_nghttp2_session_on_data_received_fail_fast()
4096 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_data_received_fail_fast()
4101 nghttp2_session_del(session); in test_nghttp2_session_on_data_received_fail_fast()
4103 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_on_data_received_fail_fast()
4106 stream = open_recv_stream(session, 1); in test_nghttp2_session_on_data_received_fail_fast()
4108 nghttp2_session_close_stream(session, 1, NGHTTP2_NO_ERROR); in test_nghttp2_session_on_data_received_fail_fast()
4111 nghttp2_session_mem_recv(session, buf, sizeof(buf))); in test_nghttp2_session_on_data_received_fail_fast()
4113 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_data_received_fail_fast()
4118 nghttp2_session_del(session); in test_nghttp2_session_on_data_received_fail_fast()
4122 nghttp2_session *session; in test_nghttp2_session_on_altsvc_received() local
4137 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_on_altsvc_received()
4139 frame.ext.payload = &session->iframe.ext_frame_payload; in test_nghttp2_session_on_altsvc_received()
4147 rv = nghttp2_session_on_altsvc_received(session, &frame); in test_nghttp2_session_on_altsvc_received()
4152 nghttp2_session_del(session); in test_nghttp2_session_on_altsvc_received()
4155 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_on_altsvc_received()
4157 frame.ext.payload = &session->iframe.ext_frame_payload; in test_nghttp2_session_on_altsvc_received()
4163 rv = nghttp2_session_on_altsvc_received(session, &frame); in test_nghttp2_session_on_altsvc_received()
4168 nghttp2_session_del(session); in test_nghttp2_session_on_altsvc_received()
4171 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_on_altsvc_received()
4173 frame.ext.payload = &session->iframe.ext_frame_payload; in test_nghttp2_session_on_altsvc_received()
4175 open_sent_stream(session, 1); in test_nghttp2_session_on_altsvc_received()
4181 rv = nghttp2_session_on_altsvc_received(session, &frame); in test_nghttp2_session_on_altsvc_received()
4186 nghttp2_session_del(session); in test_nghttp2_session_on_altsvc_received()
4189 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_on_altsvc_received()
4191 frame.ext.payload = &session->iframe.ext_frame_payload; in test_nghttp2_session_on_altsvc_received()
4193 open_sent_stream(session, 1); in test_nghttp2_session_on_altsvc_received()
4199 rv = nghttp2_session_on_altsvc_received(session, &frame); in test_nghttp2_session_on_altsvc_received()
4204 nghttp2_session_del(session); in test_nghttp2_session_on_altsvc_received()
4207 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_on_altsvc_received()
4209 frame.ext.payload = &session->iframe.ext_frame_payload; in test_nghttp2_session_on_altsvc_received()
4215 rv = nghttp2_session_on_altsvc_received(session, &frame); in test_nghttp2_session_on_altsvc_received()
4220 nghttp2_session_del(session); in test_nghttp2_session_on_altsvc_received()
4226 nghttp2_session *session; in test_nghttp2_session_send_headers_start_stream() local
4238 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_send_headers_start_stream()
4247 (int32_t)session->next_stream_id, in test_nghttp2_session_send_headers_start_stream()
4249 session->next_stream_id += 2; in test_nghttp2_session_send_headers_start_stream()
4251 nghttp2_session_add_item(session, item); in test_nghttp2_session_send_headers_start_stream()
4252 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_send_headers_start_stream()
4253 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_session_send_headers_start_stream()
4256 nghttp2_session_del(session); in test_nghttp2_session_send_headers_start_stream()
4260 nghttp2_session *session; in test_nghttp2_session_send_headers_reply() local
4272 CU_ASSERT(0 == nghttp2_session_server_new(&session, &callbacks, NULL)); in test_nghttp2_session_send_headers_reply()
4273 open_recv_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_session_send_headers_reply()
4283 nghttp2_session_add_item(session, item); in test_nghttp2_session_send_headers_reply()
4284 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_send_headers_reply()
4285 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_session_send_headers_reply()
4288 nghttp2_session_del(session); in test_nghttp2_session_send_headers_reply()
4292 nghttp2_session *session; in test_nghttp2_session_send_headers_frame_size_error() local
4321 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_send_headers_frame_size_error()
4332 (int32_t)session->next_stream_id, in test_nghttp2_session_send_headers_frame_size_error()
4335 session->next_stream_id += 2; in test_nghttp2_session_send_headers_frame_size_error()
4337 nghttp2_session_add_item(session, item); in test_nghttp2_session_send_headers_frame_size_error()
4341 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_send_headers_frame_size_error()
4350 nghttp2_session_del(session); in test_nghttp2_session_send_headers_frame_size_error()
4354 nghttp2_session *session; in test_nghttp2_session_send_headers_push_reply() local
4366 CU_ASSERT(0 == nghttp2_session_server_new(&session, &callbacks, NULL)); in test_nghttp2_session_send_headers_push_reply()
4367 open_sent_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_send_headers_push_reply()
4377 nghttp2_session_add_item(session, item); in test_nghttp2_session_send_headers_push_reply()
4378 CU_ASSERT(0 == session->num_outgoing_streams); in test_nghttp2_session_send_headers_push_reply()
4379 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_send_headers_push_reply()
4380 CU_ASSERT(1 == session->num_outgoing_streams); in test_nghttp2_session_send_headers_push_reply()
4381 stream = nghttp2_session_get_stream(session, 2); in test_nghttp2_session_send_headers_push_reply()
4384 nghttp2_session_del(session); in test_nghttp2_session_send_headers_push_reply()
4388 nghttp2_session *session; in test_nghttp2_session_send_rst_stream() local
4399 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_send_rst_stream()
4400 open_sent_stream(session, 1); in test_nghttp2_session_send_rst_stream()
4409 nghttp2_session_add_item(session, item); in test_nghttp2_session_send_rst_stream()
4410 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_send_rst_stream()
4412 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 1)); in test_nghttp2_session_send_rst_stream()
4414 nghttp2_session_del(session); in test_nghttp2_session_send_rst_stream()
4418 nghttp2_session *session; in test_nghttp2_session_send_push_promise() local
4432 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_send_push_promise()
4433 open_recv_stream(session, 1); in test_nghttp2_session_send_push_promise()
4443 (int32_t)session->next_stream_id, NULL, 0); in test_nghttp2_session_send_push_promise()
4445 session->next_stream_id += 2; in test_nghttp2_session_send_push_promise()
4447 nghttp2_session_add_item(session, item); in test_nghttp2_session_send_push_promise()
4449 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_send_push_promise()
4450 stream = nghttp2_session_get_stream(session, 2); in test_nghttp2_session_send_push_promise()
4459 nghttp2_session_on_settings_received(session, frame, 1); in test_nghttp2_session_send_push_promise()
4471 nghttp2_session_add_item(session, item); in test_nghttp2_session_send_push_promise()
4474 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_send_push_promise()
4480 nghttp2_session_del(session); in test_nghttp2_session_send_push_promise()
4483 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_send_push_promise()
4484 open_sent_stream(session, 1); in test_nghttp2_session_send_push_promise()
4493 nghttp2_session_add_item(session, item); in test_nghttp2_session_send_push_promise()
4495 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_send_push_promise()
4496 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 3)); in test_nghttp2_session_send_push_promise()
4498 nghttp2_session_del(session); in test_nghttp2_session_send_push_promise()
4502 nghttp2_session *session; in test_nghttp2_session_is_my_stream_id() local
4505 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_is_my_stream_id()
4507 CU_ASSERT(0 == nghttp2_session_is_my_stream_id(session, 0)); in test_nghttp2_session_is_my_stream_id()
4508 CU_ASSERT(0 == nghttp2_session_is_my_stream_id(session, 1)); in test_nghttp2_session_is_my_stream_id()
4509 CU_ASSERT(1 == nghttp2_session_is_my_stream_id(session, 2)); in test_nghttp2_session_is_my_stream_id()
4511 nghttp2_session_del(session); in test_nghttp2_session_is_my_stream_id()
4513 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_is_my_stream_id()
4515 CU_ASSERT(0 == nghttp2_session_is_my_stream_id(session, 0)); in test_nghttp2_session_is_my_stream_id()
4516 CU_ASSERT(1 == nghttp2_session_is_my_stream_id(session, 1)); in test_nghttp2_session_is_my_stream_id()
4517 CU_ASSERT(0 == nghttp2_session_is_my_stream_id(session, 2)); in test_nghttp2_session_is_my_stream_id()
4519 nghttp2_session_del(session); in test_nghttp2_session_is_my_stream_id()
4523 nghttp2_session *session; in test_nghttp2_session_upgrade2() local
4549 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_upgrade2()
4550 CU_ASSERT(0 == nghttp2_session_upgrade2(session, settings_payload, in test_nghttp2_session_upgrade2()
4552 CU_ASSERT(1 == session->last_sent_stream_id); in test_nghttp2_session_upgrade2()
4553 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_session_upgrade2()
4557 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_upgrade2()
4569 nghttp2_session_upgrade2(session, settings_payload, in test_nghttp2_session_upgrade2()
4571 nghttp2_session_del(session); in test_nghttp2_session_upgrade2()
4574 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_upgrade2()
4576 CU_ASSERT(0 == nghttp2_session_upgrade2(session, settings_payload, in test_nghttp2_session_upgrade2()
4579 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_session_upgrade2()
4591 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_upgrade2()
4597 nghttp2_session_del(session); in test_nghttp2_session_upgrade2()
4602 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_upgrade2()
4603 CU_ASSERT(0 == nghttp2_session_upgrade2(session, settings_payload, in test_nghttp2_session_upgrade2()
4605 CU_ASSERT(1 == session->last_recv_stream_id); in test_nghttp2_session_upgrade2()
4606 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_session_upgrade2()
4610 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_session_upgrade2()
4611 CU_ASSERT(1 == session->remote_settings.max_concurrent_streams); in test_nghttp2_session_upgrade2()
4612 CU_ASSERT(4095 == session->remote_settings.initial_window_size); in test_nghttp2_session_upgrade2()
4615 nghttp2_session_upgrade2(session, settings_payload, in test_nghttp2_session_upgrade2()
4617 nghttp2_session_del(session); in test_nghttp2_session_upgrade2()
4623 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_upgrade2()
4624 CU_ASSERT(0 == nghttp2_session_upgrade2(session, settings_payload, in test_nghttp2_session_upgrade2()
4626 nghttp2_session_del(session); in test_nghttp2_session_upgrade2()
4631 nghttp2_session *session; in test_nghttp2_session_reprioritize_stream() local
4641 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_reprioritize_stream()
4643 stream = open_recv_stream(session, 1); in test_nghttp2_session_reprioritize_stream()
4647 rv = nghttp2_session_reprioritize_stream(session, stream, &pri_spec); in test_nghttp2_session_reprioritize_stream()
4651 CU_ASSERT(&session->root == stream->dep_prev); in test_nghttp2_session_reprioritize_stream()
4657 rv = nghttp2_session_reprioritize_stream(session, stream, &pri_spec); in test_nghttp2_session_reprioritize_stream()
4663 dep_stream = nghttp2_session_get_stream_raw(session, 3); in test_nghttp2_session_reprioritize_stream()
4667 dep_stream = open_recv_stream(session, 3); in test_nghttp2_session_reprioritize_stream()
4672 rv = nghttp2_session_reprioritize_stream(session, stream, &pri_spec); in test_nghttp2_session_reprioritize_stream()
4681 rv = nghttp2_session_reprioritize_stream(session, stream, &pri_spec); in test_nghttp2_session_reprioritize_stream()
4692 rv = nghttp2_session_reprioritize_stream(session, dep_stream, &pri_spec); in test_nghttp2_session_reprioritize_stream()
4700 session->last_recv_stream_id = 9; in test_nghttp2_session_reprioritize_stream()
4704 rv = nghttp2_session_reprioritize_stream(session, stream, &pri_spec); in test_nghttp2_session_reprioritize_stream()
4709 nghttp2_session_del(session); in test_nghttp2_session_reprioritize_stream()
4711 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_reprioritize_stream()
4715 stream = open_recv_stream(session, 1); in test_nghttp2_session_reprioritize_stream()
4716 stream = open_recv_stream_with_dep(session, 3, stream); in test_nghttp2_session_reprioritize_stream()
4717 stream = open_recv_stream_with_dep(session, 5, stream); in test_nghttp2_session_reprioritize_stream()
4718 stream = open_recv_stream_with_dep(session, 7, stream); in test_nghttp2_session_reprioritize_stream()
4719 open_recv_stream_with_dep(session, 9, stream); in test_nghttp2_session_reprioritize_stream()
4723 stream = nghttp2_session_get_stream(session, 3); in test_nghttp2_session_reprioritize_stream()
4724 rv = nghttp2_session_reprioritize_stream(session, stream, &pri_spec); in test_nghttp2_session_reprioritize_stream()
4729 stream = nghttp2_session_get_stream(session, 7); in test_nghttp2_session_reprioritize_stream()
4733 stream = nghttp2_session_get_stream(session, 9); in test_nghttp2_session_reprioritize_stream()
4737 stream = nghttp2_session_get_stream(session, 5); in test_nghttp2_session_reprioritize_stream()
4741 nghttp2_session_del(session); in test_nghttp2_session_reprioritize_stream()
4743 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_reprioritize_stream()
4747 stream = open_recv_stream(session, 1); in test_nghttp2_session_reprioritize_stream()
4748 stream = open_recv_stream_with_dep(session, 3, stream); in test_nghttp2_session_reprioritize_stream()
4749 stream = open_recv_stream_with_dep(session, 5, stream); in test_nghttp2_session_reprioritize_stream()
4750 stream = open_recv_stream_with_dep(session, 7, stream); in test_nghttp2_session_reprioritize_stream()
4751 open_recv_stream_with_dep(session, 9, stream); in test_nghttp2_session_reprioritize_stream()
4755 stream = nghttp2_session_get_stream(session, 3); in test_nghttp2_session_reprioritize_stream()
4756 rv = nghttp2_session_reprioritize_stream(session, stream, &pri_spec); in test_nghttp2_session_reprioritize_stream()
4761 stream = nghttp2_session_get_stream(session, 7); in test_nghttp2_session_reprioritize_stream()
4765 stream = nghttp2_session_get_stream(session, 9); in test_nghttp2_session_reprioritize_stream()
4769 stream = nghttp2_session_get_stream(session, 5); in test_nghttp2_session_reprioritize_stream()
4773 nghttp2_session_del(session); in test_nghttp2_session_reprioritize_stream()
4777 nghttp2_session *session; in test_nghttp2_session_reprioritize_stream_with_idle_stream_dep() local
4785 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_reprioritize_stream_with_idle_stream_dep()
4787 stream = open_recv_stream(session, 1); in test_nghttp2_session_reprioritize_stream_with_idle_stream_dep()
4789 session->pending_local_max_concurrent_stream = 1; in test_nghttp2_session_reprioritize_stream_with_idle_stream_dep()
4793 nghttp2_session_reprioritize_stream(session, stream, &pri_spec); in test_nghttp2_session_reprioritize_stream_with_idle_stream_dep()
4800 stream = nghttp2_session_get_stream_raw(session, 101); in test_nghttp2_session_reprioritize_stream_with_idle_stream_dep()
4804 nghttp2_session_del(session); in test_nghttp2_session_reprioritize_stream_with_idle_stream_dep()
4808 nghttp2_session *session; in test_nghttp2_submit_data() local
4823 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, &ud)); in test_nghttp2_submit_data()
4824 aob = &session->aob; in test_nghttp2_submit_data()
4827 open_sent_stream(session, 1); in test_nghttp2_submit_data()
4830 0 == nghttp2_submit_data(session, NGHTTP2_FLAG_END_STREAM, 1, &data_prd)); in test_nghttp2_submit_data()
4833 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_data()
4844 nghttp2_session_del(session); in test_nghttp2_submit_data()
4848 nghttp2_session *session; in test_nghttp2_submit_data_read_length_too_large() local
4865 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, &ud)); in test_nghttp2_submit_data_read_length_too_large()
4866 aob = &session->aob; in test_nghttp2_submit_data_read_length_too_large()
4869 open_sent_stream(session, 1); in test_nghttp2_submit_data_read_length_too_large()
4872 0 == nghttp2_submit_data(session, NGHTTP2_FLAG_END_STREAM, 1, &data_prd)); in test_nghttp2_submit_data_read_length_too_large()
4875 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_data_read_length_too_large()
4887 nghttp2_session_del(session); in test_nghttp2_submit_data_read_length_too_large()
4890 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, &ud)); in test_nghttp2_submit_data_read_length_too_large()
4894 session->remote_settings.max_frame_size = NGHTTP2_MAX_FRAME_SIZE_MAX; in test_nghttp2_submit_data_read_length_too_large()
4896 open_sent_stream(session, 1); in test_nghttp2_submit_data_read_length_too_large()
4899 0 == nghttp2_submit_data(session, NGHTTP2_FLAG_END_STREAM, 1, &data_prd)); in test_nghttp2_submit_data_read_length_too_large()
4902 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_data_read_length_too_large()
4904 aob = &session->aob; in test_nghttp2_submit_data_read_length_too_large()
4924 nghttp2_session_del(session); in test_nghttp2_submit_data_read_length_too_large()
4928 nghttp2_session *session; in test_nghttp2_submit_data_read_length_smallest() local
4944 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, &ud)); in test_nghttp2_submit_data_read_length_smallest()
4945 aob = &session->aob; in test_nghttp2_submit_data_read_length_smallest()
4948 open_sent_stream(session, 1); in test_nghttp2_submit_data_read_length_smallest()
4951 0 == nghttp2_submit_data(session, NGHTTP2_FLAG_END_STREAM, 1, &data_prd)); in test_nghttp2_submit_data_read_length_smallest()
4954 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_data_read_length_smallest()
4966 nghttp2_session_del(session); in test_nghttp2_submit_data_read_length_smallest()
4970 nghttp2_session *session, int32_t stream_id, uint8_t *buf, size_t len, in submit_data_twice_data_source_read_callback() argument
4972 (void)session; in submit_data_twice_data_source_read_callback()
4982 static int submit_data_twice_on_frame_send_callback(nghttp2_session *session, in submit_data_twice_on_frame_send_callback() argument
4995 rv = nghttp2_submit_data(session, NGHTTP2_FLAG_END_STREAM, in submit_data_twice_on_frame_send_callback()
5004 nghttp2_session *session; in test_nghttp2_submit_data_twice() local
5019 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, &ud)); in test_nghttp2_submit_data_twice()
5021 open_sent_stream(session, 1); in test_nghttp2_submit_data_twice()
5023 CU_ASSERT(0 == nghttp2_submit_data(session, NGHTTP2_FLAG_NONE, 1, &data_prd)); in test_nghttp2_submit_data_twice()
5024 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_data_twice()
5029 nghttp2_session_del(session); in test_nghttp2_submit_data_twice()
5033 nghttp2_session *session; in test_nghttp2_submit_request_with_data() local
5047 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, &ud)); in test_nghttp2_submit_request_with_data()
5048 CU_ASSERT(1 == nghttp2_submit_request(session, NULL, reqnv, ARRLEN(reqnv), in test_nghttp2_submit_request_with_data()
5050 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_request_with_data()
5054 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_request_with_data()
5057 nghttp2_session_del(session); in test_nghttp2_submit_request_with_data()
5060 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_submit_request_with_data()
5062 CU_ASSERT(NGHTTP2_ERR_PROTO == nghttp2_submit_request(session, NULL, reqnv, in test_nghttp2_submit_request_with_data()
5066 nghttp2_session_del(session); in test_nghttp2_submit_request_with_data()
5070 nghttp2_session *session; in test_nghttp2_submit_request_without_data() local
5091 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, &ud)); in test_nghttp2_submit_request_without_data()
5094 CU_ASSERT(1 == nghttp2_submit_request(session, NULL, reqnv, ARRLEN(reqnv), in test_nghttp2_submit_request_without_data()
5096 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_request_without_data()
5102 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_request_without_data()
5117 nghttp2_priority_spec_init(&pri_spec, (int32_t)session->next_stream_id, 16, in test_nghttp2_submit_request_without_data()
5121 nghttp2_submit_request(session, &pri_spec, reqnv, ARRLEN(reqnv), in test_nghttp2_submit_request_without_data()
5124 nghttp2_session_del(session); in test_nghttp2_submit_request_without_data()
5128 nghttp2_session *session; in test_nghttp2_submit_response_with_data() local
5142 CU_ASSERT(0 == nghttp2_session_server_new(&session, &callbacks, &ud)); in test_nghttp2_submit_response_with_data()
5143 open_recv_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_submit_response_with_data()
5144 CU_ASSERT(0 == nghttp2_submit_response(session, 1, resnv, ARRLEN(resnv), in test_nghttp2_submit_response_with_data()
5146 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_response_with_data()
5150 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_response_with_data()
5153 nghttp2_session_del(session); in test_nghttp2_submit_response_with_data()
5156 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_submit_response_with_data()
5160 nghttp2_submit_response(session, 1, resnv, ARRLEN(resnv), NULL)); in test_nghttp2_submit_response_with_data()
5164 nghttp2_submit_response(session, 0, resnv, ARRLEN(resnv), NULL)); in test_nghttp2_submit_response_with_data()
5166 nghttp2_session_del(session); in test_nghttp2_submit_response_with_data()
5170 nghttp2_session *session; in test_nghttp2_submit_response_without_data() local
5190 CU_ASSERT(0 == nghttp2_session_server_new(&session, &callbacks, &ud)); in test_nghttp2_submit_response_without_data()
5193 open_recv_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_submit_response_without_data()
5194 CU_ASSERT(0 == nghttp2_submit_response(session, 1, resnv, ARRLEN(resnv), in test_nghttp2_submit_response_without_data()
5196 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_response_without_data()
5202 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_response_without_data()
5215 nghttp2_session_del(session); in test_nghttp2_submit_response_without_data()
5219 nghttp2_session *session; in test_nghttp2_submit_response_push_response() local
5227 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_submit_response_push_response()
5229 open_sent_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_submit_response_push_response()
5231 session->goaway_flags |= NGHTTP2_GOAWAY_RECV; in test_nghttp2_submit_response_push_response()
5234 nghttp2_submit_response(session, 2, resnv, ARRLEN(resnv), NULL)); in test_nghttp2_submit_response_push_response()
5238 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_response_push_response()
5241 nghttp2_session_del(session); in test_nghttp2_submit_response_push_response()
5245 nghttp2_session *session; in test_nghttp2_submit_trailer() local
5266 CU_ASSERT(0 == nghttp2_session_server_new(&session, &callbacks, &ud)); in test_nghttp2_submit_trailer()
5269 open_recv_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_submit_trailer()
5270 CU_ASSERT(0 == nghttp2_submit_response(session, 1, resnv, ARRLEN(resnv), in test_nghttp2_submit_trailer()
5272 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_trailer()
5275 nghttp2_submit_trailer(session, 1, trailernv, ARRLEN(trailernv))); in test_nghttp2_submit_trailer()
5277 session->callbacks.send_callback = accumulator_send_callback; in test_nghttp2_submit_trailer()
5279 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_trailer()
5284 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_trailer()
5297 nghttp2_session_del(session); in test_nghttp2_submit_trailer()
5300 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_submit_trailer()
5301 open_recv_stream(session, 1); in test_nghttp2_submit_trailer()
5304 nghttp2_submit_trailer(session, 0, trailernv, ARRLEN(trailernv))); in test_nghttp2_submit_trailer()
5307 nghttp2_submit_trailer(session, -1, trailernv, ARRLEN(trailernv))); in test_nghttp2_submit_trailer()
5309 nghttp2_session_del(session); in test_nghttp2_submit_trailer()
5313 nghttp2_session *session; in test_nghttp2_submit_headers_start_stream() local
5321 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, NULL)); in test_nghttp2_submit_headers_start_stream()
5322 CU_ASSERT(1 == nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, -1, in test_nghttp2_submit_headers_start_stream()
5324 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_headers_start_stream()
5332 nghttp2_session_del(session); in test_nghttp2_submit_headers_start_stream()
5336 nghttp2_session *session; in test_nghttp2_submit_headers_reply() local
5349 CU_ASSERT(0 == nghttp2_session_server_new(&session, &callbacks, &ud)); in test_nghttp2_submit_headers_reply()
5350 CU_ASSERT(0 == nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, 1, in test_nghttp2_submit_headers_reply()
5352 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_headers_reply()
5363 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_headers_reply()
5366 stream = open_recv_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_submit_headers_reply()
5368 CU_ASSERT(0 == nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, 1, in test_nghttp2_submit_headers_reply()
5370 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_headers_reply()
5375 nghttp2_session_del(session); in test_nghttp2_submit_headers_reply()
5379 nghttp2_session *session; in test_nghttp2_submit_headers_push_reply() local
5389 CU_ASSERT(0 == nghttp2_session_server_new(&session, &callbacks, &ud)); in test_nghttp2_submit_headers_push_reply()
5390 stream = open_sent_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_submit_headers_push_reply()
5391 CU_ASSERT(0 == nghttp2_submit_headers(session, NGHTTP2_FLAG_NONE, 2, NULL, in test_nghttp2_submit_headers_push_reply()
5396 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_headers_push_reply()
5402 nghttp2_session_del(session); in test_nghttp2_submit_headers_push_reply()
5406 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, &ud)); in test_nghttp2_submit_headers_push_reply()
5407 open_recv_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_submit_headers_push_reply()
5408 CU_ASSERT(0 == nghttp2_submit_headers(session, NGHTTP2_FLAG_NONE, 2, NULL, in test_nghttp2_submit_headers_push_reply()
5413 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_headers_push_reply()
5416 nghttp2_session_del(session); in test_nghttp2_submit_headers_push_reply()
5420 nghttp2_session *session; in test_nghttp2_submit_headers() local
5443 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, &ud)); in test_nghttp2_submit_headers()
5446 CU_ASSERT(0 == nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, 1, in test_nghttp2_submit_headers()
5448 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_headers()
5459 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_headers()
5462 stream = open_sent_stream(session, 1); in test_nghttp2_submit_headers()
5464 CU_ASSERT(0 == nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, 1, in test_nghttp2_submit_headers()
5466 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_headers()
5489 nghttp2_submit_headers(session, NGHTTP2_FLAG_NONE, 3, &pri_spec, in test_nghttp2_submit_headers()
5492 session->next_stream_id = 5; in test_nghttp2_submit_headers()
5496 nghttp2_submit_headers(session, NGHTTP2_FLAG_NONE, -1, &pri_spec, in test_nghttp2_submit_headers()
5499 nghttp2_session_del(session); in test_nghttp2_submit_headers()
5502 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_submit_headers()
5507 nghttp2_submit_headers(session, NGHTTP2_FLAG_NONE, -1, NULL, reqnv, in test_nghttp2_submit_headers()
5512 nghttp2_submit_headers(session, NGHTTP2_FLAG_NONE, 0, NULL, resnv, in test_nghttp2_submit_headers()
5515 nghttp2_session_del(session); in test_nghttp2_submit_headers()
5519 nghttp2_session *session; in test_nghttp2_submit_headers_continuation() local
5541 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, &ud)); in test_nghttp2_submit_headers_continuation()
5542 CU_ASSERT(1 == nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, -1, in test_nghttp2_submit_headers_continuation()
5544 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_headers_continuation()
5551 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_headers_continuation()
5554 nghttp2_session_del(session); in test_nghttp2_submit_headers_continuation()
5558 nghttp2_session *session; in test_nghttp2_submit_headers_continuation_extra_large() local
5585 CU_ASSERT(0 == nghttp2_session_client_new2(&session, &callbacks, &ud, opt)); in test_nghttp2_submit_headers_continuation_extra_large()
5586 CU_ASSERT(1 == nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, -1, in test_nghttp2_submit_headers_continuation_extra_large()
5588 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_headers_continuation_extra_large()
5595 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_headers_continuation_extra_large()
5598 nghttp2_session_del(session); in test_nghttp2_submit_headers_continuation_extra_large()
5603 nghttp2_session *session; in test_nghttp2_submit_priority() local
5613 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_submit_priority()
5614 stream = open_sent_stream(session, 1); in test_nghttp2_submit_priority()
5620 nghttp2_submit_priority(session, NGHTTP2_FLAG_NONE, 1, &pri_spec)); in test_nghttp2_submit_priority()
5621 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_priority()
5626 nghttp2_submit_priority(session, NGHTTP2_FLAG_NONE, 3, &pri_spec)); in test_nghttp2_submit_priority()
5629 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_priority()
5632 nghttp2_session_del(session); in test_nghttp2_submit_priority()
5636 nghttp2_session *session; in test_nghttp2_submit_settings() local
5672 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_submit_settings()
5675 nghttp2_submit_settings(session, NGHTTP2_FLAG_NONE, iv, 7)); in test_nghttp2_submit_settings()
5679 session->local_settings.max_concurrent_streams); in test_nghttp2_submit_settings()
5681 session->local_settings.initial_window_size); in test_nghttp2_submit_settings()
5684 CU_ASSERT(0 == nghttp2_submit_settings(session, NGHTTP2_FLAG_NONE, iv, 6)); in test_nghttp2_submit_settings()
5686 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_settings()
5704 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_settings()
5707 CU_ASSERT(50 == session->pending_local_max_concurrent_stream); in test_nghttp2_submit_settings()
5713 session, NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS)); in test_nghttp2_submit_settings()
5716 session, NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE)); in test_nghttp2_submit_settings()
5719 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &ack_frame, 0)); in test_nghttp2_submit_settings()
5722 CU_ASSERT(16 * 1024 == session->local_settings.initial_window_size); in test_nghttp2_submit_settings()
5723 CU_ASSERT(1023 == session->hd_inflater.ctx.hd_table_bufsize_max); in test_nghttp2_submit_settings()
5724 CU_ASSERT(111 == session->hd_inflater.min_hd_table_bufsize_max); in test_nghttp2_submit_settings()
5725 CU_ASSERT(50 == session->local_settings.max_concurrent_streams); in test_nghttp2_submit_settings()
5728 session, NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS)); in test_nghttp2_submit_settings()
5730 session, NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE)); in test_nghttp2_submit_settings()
5733 CU_ASSERT(50 == session->pending_local_max_concurrent_stream); in test_nghttp2_submit_settings()
5735 nghttp2_session_del(session); in test_nghttp2_submit_settings()
5739 nghttp2_session *session; in test_nghttp2_submit_settings_update_local_window_size() local
5757 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_submit_settings_update_local_window_size()
5759 stream = open_recv_stream(session, 1); in test_nghttp2_submit_settings_update_local_window_size()
5763 open_recv_stream(session, 3); in test_nghttp2_submit_settings_update_local_window_size()
5765 CU_ASSERT(0 == nghttp2_submit_settings(session, NGHTTP2_FLAG_NONE, iv, 1)); in test_nghttp2_submit_settings_update_local_window_size()
5766 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_settings_update_local_window_size()
5767 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &ack_frame, 0)); in test_nghttp2_submit_settings_update_local_window_size()
5769 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_submit_settings_update_local_window_size()
5773 stream = nghttp2_session_get_stream(session, 3); in test_nghttp2_submit_settings_update_local_window_size()
5776 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_settings_update_local_window_size()
5780 nghttp2_session_del(session); in test_nghttp2_submit_settings_update_local_window_size()
5786 nghttp2_session_server_new2(&session, &callbacks, NULL, option); in test_nghttp2_submit_settings_update_local_window_size()
5790 stream = open_recv_stream(session, 1); in test_nghttp2_submit_settings_update_local_window_size()
5794 CU_ASSERT(0 == nghttp2_submit_settings(session, NGHTTP2_FLAG_NONE, iv, 1)); in test_nghttp2_submit_settings_update_local_window_size()
5795 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_settings_update_local_window_size()
5796 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &ack_frame, 0)); in test_nghttp2_submit_settings_update_local_window_size()
5798 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_submit_settings_update_local_window_size()
5804 CU_ASSERT(0 == nghttp2_session_get_stream_local_window_size(session, 1)); in test_nghttp2_submit_settings_update_local_window_size()
5806 nghttp2_session_del(session); in test_nghttp2_submit_settings_update_local_window_size()
5810 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_submit_settings_update_local_window_size()
5811 stream = open_recv_stream(session, 1); in test_nghttp2_submit_settings_update_local_window_size()
5814 CU_ASSERT(0 == nghttp2_submit_settings(session, NGHTTP2_FLAG_NONE, iv, 1)); in test_nghttp2_submit_settings_update_local_window_size()
5815 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_settings_update_local_window_size()
5816 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &ack_frame, 0)); in test_nghttp2_submit_settings_update_local_window_size()
5818 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_settings_update_local_window_size()
5822 nghttp2_session_del(session); in test_nghttp2_submit_settings_update_local_window_size()
5827 nghttp2_session *session; in test_nghttp2_submit_settings_multiple_times() local
5836 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_submit_settings_multiple_times()
5845 CU_ASSERT(0 == nghttp2_submit_settings(session, NGHTTP2_FLAG_NONE, iv, 2)); in test_nghttp2_submit_settings_multiple_times()
5847 inflight_settings = session->inflight_settings_head; in test_nghttp2_submit_settings_multiple_times()
5856 CU_ASSERT(100 == session->pending_local_max_concurrent_stream); in test_nghttp2_submit_settings_multiple_times()
5857 CU_ASSERT(0 == session->pending_enable_push); in test_nghttp2_submit_settings_multiple_times()
5863 CU_ASSERT(0 == nghttp2_submit_settings(session, NGHTTP2_FLAG_NONE, iv, 1)); in test_nghttp2_submit_settings_multiple_times()
5865 inflight_settings = session->inflight_settings_head->next; in test_nghttp2_submit_settings_multiple_times()
5874 CU_ASSERT(99 == session->pending_local_max_concurrent_stream); in test_nghttp2_submit_settings_multiple_times()
5875 CU_ASSERT(0 == session->pending_enable_push); in test_nghttp2_submit_settings_multiple_times()
5880 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &frame, 0)); in test_nghttp2_submit_settings_multiple_times()
5882 inflight_settings = session->inflight_settings_head; in test_nghttp2_submit_settings_multiple_times()
5892 CU_ASSERT(100 == session->local_settings.max_concurrent_streams); in test_nghttp2_submit_settings_multiple_times()
5895 CU_ASSERT(0 == nghttp2_session_on_settings_received(session, &frame, 0)); in test_nghttp2_submit_settings_multiple_times()
5897 CU_ASSERT(NULL == session->inflight_settings_head); in test_nghttp2_submit_settings_multiple_times()
5898 CU_ASSERT(99 == session->local_settings.max_concurrent_streams); in test_nghttp2_submit_settings_multiple_times()
5900 nghttp2_session_del(session); in test_nghttp2_submit_settings_multiple_times()
5904 nghttp2_session *session; in test_nghttp2_submit_push_promise() local
5914 CU_ASSERT(0 == nghttp2_session_server_new(&session, &callbacks, &ud)); in test_nghttp2_submit_push_promise()
5915 open_recv_stream(session, 1); in test_nghttp2_submit_push_promise()
5916 CU_ASSERT(2 == nghttp2_submit_push_promise(session, NGHTTP2_FLAG_NONE, 1, in test_nghttp2_submit_push_promise()
5919 stream = nghttp2_session_get_stream(session, 2); in test_nghttp2_submit_push_promise()
5923 CU_ASSERT(&ud == nghttp2_session_get_stream_user_data(session, 2)); in test_nghttp2_submit_push_promise()
5928 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_push_promise()
5932 stream = nghttp2_session_get_stream(session, 2); in test_nghttp2_submit_push_promise()
5935 CU_ASSERT(&ud == nghttp2_session_get_stream_user_data(session, 2)); in test_nghttp2_submit_push_promise()
5939 nghttp2_submit_push_promise(session, NGHTTP2_FLAG_NONE, 3, reqnv, in test_nghttp2_submit_push_promise()
5944 nghttp2_submit_push_promise(session, NGHTTP2_FLAG_NONE, 0, reqnv, in test_nghttp2_submit_push_promise()
5947 nghttp2_session_del(session); in test_nghttp2_submit_push_promise()
5951 nghttp2_session *session; in test_nghttp2_submit_window_update() local
5960 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_submit_window_update()
5961 stream = open_recv_stream(session, 2); in test_nghttp2_submit_window_update()
5965 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 2, 1024)); in test_nghttp2_submit_window_update()
5966 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_window_update()
5969 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_window_update()
5973 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 2, 4096)); in test_nghttp2_submit_window_update()
5974 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_window_update()
5977 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_window_update()
5981 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 2, 4096)); in test_nghttp2_submit_window_update()
5982 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_window_update()
5985 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_window_update()
5989 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 2, 0)); in test_nghttp2_submit_window_update()
5993 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 4, 4096)); in test_nghttp2_submit_window_update()
5995 nghttp2_session_del(session); in test_nghttp2_submit_window_update()
5999 nghttp2_session *session; in test_nghttp2_submit_window_update_local_window_size() local
6007 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_submit_window_update_local_window_size()
6008 stream = open_recv_stream(session, 2); in test_nghttp2_submit_window_update_local_window_size()
6011 CU_ASSERT(0 == nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 2, in test_nghttp2_submit_window_update_local_window_size()
6015 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_window_update_local_window_size()
6019 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_window_update_local_window_size()
6023 CU_ASSERT(0 == nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 2, in test_nghttp2_submit_window_update_local_window_size()
6029 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_window_update_local_window_size()
6034 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 2, 16384)); in test_nghttp2_submit_window_update_local_window_size()
6038 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_submit_window_update_local_window_size()
6041 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 2, in test_nghttp2_submit_window_update_local_window_size()
6044 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_window_update_local_window_size()
6047 session->recv_window_size = 4096; in test_nghttp2_submit_window_update_local_window_size()
6048 CU_ASSERT(0 == nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 0, in test_nghttp2_submit_window_update_local_window_size()
6049 session->recv_window_size + 1)); in test_nghttp2_submit_window_update_local_window_size()
6051 session->local_window_size); in test_nghttp2_submit_window_update_local_window_size()
6052 CU_ASSERT(0 == session->recv_window_size); in test_nghttp2_submit_window_update_local_window_size()
6053 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_window_update_local_window_size()
6057 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_submit_window_update_local_window_size()
6060 session->recv_window_size = 4096; in test_nghttp2_submit_window_update_local_window_size()
6061 CU_ASSERT(0 == nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 0, in test_nghttp2_submit_window_update_local_window_size()
6062 -session->local_window_size / 2)); in test_nghttp2_submit_window_update_local_window_size()
6063 CU_ASSERT(32768 == session->local_window_size); in test_nghttp2_submit_window_update_local_window_size()
6064 CU_ASSERT(-28672 == session->recv_window_size); in test_nghttp2_submit_window_update_local_window_size()
6065 CU_ASSERT(32768 == session->recv_reduction); in test_nghttp2_submit_window_update_local_window_size()
6066 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_submit_window_update_local_window_size()
6071 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 0, 16384)); in test_nghttp2_submit_window_update_local_window_size()
6072 CU_ASSERT(49152 == session->local_window_size); in test_nghttp2_submit_window_update_local_window_size()
6073 CU_ASSERT(-12288 == session->recv_window_size); in test_nghttp2_submit_window_update_local_window_size()
6074 CU_ASSERT(16384 == session->recv_reduction); in test_nghttp2_submit_window_update_local_window_size()
6075 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_submit_window_update_local_window_size()
6078 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 0, in test_nghttp2_submit_window_update_local_window_size()
6081 nghttp2_session_del(session); in test_nghttp2_submit_window_update_local_window_size()
6085 nghttp2_session *session; in test_nghttp2_submit_shutdown_notice() local
6094 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_submit_shutdown_notice()
6096 CU_ASSERT(0 == nghttp2_submit_shutdown_notice(session)); in test_nghttp2_submit_shutdown_notice()
6100 nghttp2_session_send(session); in test_nghttp2_submit_shutdown_notice()
6104 CU_ASSERT((1u << 31) - 1 == session->local_last_stream_id); in test_nghttp2_submit_shutdown_notice()
6108 CU_ASSERT(0 == nghttp2_session_terminate_session(session, NGHTTP2_NO_ERROR)); in test_nghttp2_submit_shutdown_notice()
6112 nghttp2_session_send(session); in test_nghttp2_submit_shutdown_notice()
6116 CU_ASSERT(0 == session->local_last_stream_id); in test_nghttp2_submit_shutdown_notice()
6118 CU_ASSERT(0 == nghttp2_submit_shutdown_notice(session)); in test_nghttp2_submit_shutdown_notice()
6123 nghttp2_session_send(session); in test_nghttp2_submit_shutdown_notice()
6128 nghttp2_session_del(session); in test_nghttp2_submit_shutdown_notice()
6132 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_submit_shutdown_notice()
6135 nghttp2_submit_shutdown_notice(session)); in test_nghttp2_submit_shutdown_notice()
6137 nghttp2_session_del(session); in test_nghttp2_submit_shutdown_notice()
6141 nghttp2_session *session; in test_nghttp2_submit_invalid_nv() local
6151 CU_ASSERT(0 == nghttp2_session_server_new(&session, &callbacks, NULL)); in test_nghttp2_submit_invalid_nv()
6154 CU_ASSERT(0 == nghttp2_submit_response(session, 2, empty_name_nv, in test_nghttp2_submit_invalid_nv()
6158 open_recv_stream(session, 1); in test_nghttp2_submit_invalid_nv()
6160 CU_ASSERT(0 < nghttp2_submit_push_promise(session, NGHTTP2_FLAG_NONE, 1, in test_nghttp2_submit_invalid_nv()
6164 nghttp2_session_del(session); in test_nghttp2_submit_invalid_nv()
6166 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, NULL)); in test_nghttp2_submit_invalid_nv()
6169 CU_ASSERT(0 < nghttp2_submit_request(session, NULL, empty_name_nv, in test_nghttp2_submit_invalid_nv()
6173 CU_ASSERT(0 < nghttp2_submit_headers(session, NGHTTP2_FLAG_NONE, -1, NULL, in test_nghttp2_submit_invalid_nv()
6177 nghttp2_session_del(session); in test_nghttp2_submit_invalid_nv()
6181 nghttp2_session *session; in test_nghttp2_submit_extension() local
6200 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_submit_extension()
6205 rv = nghttp2_submit_extension(session, 211, 0x01, 3, &ud.scratchbuf); in test_nghttp2_submit_extension()
6211 rv = nghttp2_session_send(session); in test_nghttp2_submit_extension()
6227 nghttp2_session_del(session); in test_nghttp2_submit_extension()
6230 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_submit_extension()
6232 rv = nghttp2_submit_extension(session, NGHTTP2_GOAWAY, NGHTTP2_FLAG_NONE, 0, in test_nghttp2_submit_extension()
6237 nghttp2_session_del(session); in test_nghttp2_submit_extension()
6242 nghttp2_session *session; in test_nghttp2_submit_altsvc() local
6255 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_submit_altsvc()
6257 rv = nghttp2_submit_altsvc(session, NGHTTP2_FLAG_NONE, 0, origin, in test_nghttp2_submit_altsvc()
6265 len = nghttp2_session_mem_send(session, &data); in test_nghttp2_submit_altsvc()
6286 rv = nghttp2_submit_altsvc(session, NGHTTP2_FLAG_NONE, 0, NULL, 0, in test_nghttp2_submit_altsvc()
6292 rv = nghttp2_submit_altsvc(session, NGHTTP2_FLAG_NONE, 1, origin, in test_nghttp2_submit_altsvc()
6298 nghttp2_session_del(session); in test_nghttp2_submit_altsvc()
6301 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_submit_altsvc()
6303 rv = nghttp2_submit_altsvc(session, NGHTTP2_FLAG_NONE, 0, origin, in test_nghttp2_submit_altsvc()
6309 nghttp2_session_del(session); in test_nghttp2_submit_altsvc()
6313 nghttp2_session *session; in test_nghttp2_submit_origin() local
6342 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_submit_origin()
6344 rv = nghttp2_submit_origin(session, NGHTTP2_FLAG_NONE, ov, 2); in test_nghttp2_submit_origin()
6349 len = nghttp2_session_mem_send(session, &data); in test_nghttp2_submit_origin()
6370 nghttp2_session_del(session); in test_nghttp2_submit_origin()
6373 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_submit_origin()
6375 rv = nghttp2_submit_origin(session, NGHTTP2_FLAG_NONE, ov, 1); in test_nghttp2_submit_origin()
6379 nghttp2_session_del(session); in test_nghttp2_submit_origin()
6382 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_submit_origin()
6384 rv = nghttp2_submit_origin(session, NGHTTP2_FLAG_NONE, NULL, 0); in test_nghttp2_submit_origin()
6389 len = nghttp2_session_mem_send(session, &data); in test_nghttp2_submit_origin()
6398 nghttp2_session_del(session); in test_nghttp2_submit_origin()
6402 nghttp2_session *session; in test_nghttp2_submit_rst_stream() local
6411 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_submit_rst_stream()
6413 rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE, 1, in test_nghttp2_submit_rst_stream()
6418 item = nghttp2_outbound_queue_top(&session->ob_reg); in test_nghttp2_submit_rst_stream()
6422 nghttp2_session_del(session); in test_nghttp2_submit_rst_stream()
6425 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_submit_rst_stream()
6427 rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE, 2, in test_nghttp2_submit_rst_stream()
6432 item = nghttp2_outbound_queue_top(&session->ob_reg); in test_nghttp2_submit_rst_stream()
6436 nghttp2_session_del(session); in test_nghttp2_submit_rst_stream()
6439 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_submit_rst_stream()
6441 open_sent_stream(session, 1); in test_nghttp2_submit_rst_stream()
6443 rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE, 1, in test_nghttp2_submit_rst_stream()
6448 item = nghttp2_outbound_queue_top(&session->ob_reg); in test_nghttp2_submit_rst_stream()
6454 nghttp2_session_del(session); in test_nghttp2_submit_rst_stream()
6457 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_submit_rst_stream()
6459 open_recv_stream(session, 2); in test_nghttp2_submit_rst_stream()
6461 rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE, 2, in test_nghttp2_submit_rst_stream()
6466 item = nghttp2_outbound_queue_top(&session->ob_reg); in test_nghttp2_submit_rst_stream()
6472 nghttp2_session_del(session); in test_nghttp2_submit_rst_stream()
6475 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_submit_rst_stream()
6478 nghttp2_submit_request(session, NULL, reqnv, ARRLEN(reqnv), NULL, NULL); in test_nghttp2_submit_rst_stream()
6482 item = nghttp2_outbound_queue_top(&session->ob_syn); in test_nghttp2_submit_rst_stream()
6488 rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE, stream_id, in test_nghttp2_submit_rst_stream()
6493 item = nghttp2_outbound_queue_top(&session->ob_syn); in test_nghttp2_submit_rst_stream()
6499 nghttp2_session_del(session); in test_nghttp2_submit_rst_stream()
6503 nghttp2_session *session; in test_nghttp2_session_open_stream() local
6509 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_open_stream()
6513 stream = nghttp2_session_open_stream(session, 1, NGHTTP2_STREAM_FLAG_NONE, in test_nghttp2_session_open_stream()
6515 CU_ASSERT(1 == session->num_incoming_streams); in test_nghttp2_session_open_stream()
6516 CU_ASSERT(0 == session->num_outgoing_streams); in test_nghttp2_session_open_stream()
6519 CU_ASSERT(&session->root == stream->dep_prev); in test_nghttp2_session_open_stream()
6522 stream = nghttp2_session_open_stream(session, 2, NGHTTP2_STREAM_FLAG_NONE, in test_nghttp2_session_open_stream()
6525 CU_ASSERT(1 == session->num_incoming_streams); in test_nghttp2_session_open_stream()
6526 CU_ASSERT(1 == session->num_outgoing_streams); in test_nghttp2_session_open_stream()
6527 CU_ASSERT(&session->root == stream->dep_prev); in test_nghttp2_session_open_stream()
6531 stream = nghttp2_session_open_stream(session, 4, NGHTTP2_STREAM_FLAG_NONE, in test_nghttp2_session_open_stream()
6534 CU_ASSERT(1 == session->num_incoming_streams); in test_nghttp2_session_open_stream()
6535 CU_ASSERT(1 == session->num_outgoing_streams); in test_nghttp2_session_open_stream()
6536 CU_ASSERT(&session->root == stream->dep_prev); in test_nghttp2_session_open_stream()
6542 stream = nghttp2_session_open_stream(session, 3, NGHTTP2_STREAM_FLAG_NONE, in test_nghttp2_session_open_stream()
6550 stream = nghttp2_session_open_stream(session, 5, NGHTTP2_STREAM_FLAG_NONE, in test_nghttp2_session_open_stream()
6555 stream = nghttp2_session_get_stream_raw(session, 1000000007); in test_nghttp2_session_open_stream()
6558 CU_ASSERT(&session->root == stream->dep_prev); in test_nghttp2_session_open_stream()
6561 session->last_recv_stream_id = 7; in test_nghttp2_session_open_stream()
6565 stream = nghttp2_session_open_stream(session, 9, NGHTTP2_FLAG_NONE, &pri_spec, in test_nghttp2_session_open_stream()
6569 CU_ASSERT(&session->root == stream->dep_prev); in test_nghttp2_session_open_stream()
6571 nghttp2_session_del(session); in test_nghttp2_session_open_stream()
6573 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_open_stream()
6574 stream = nghttp2_session_open_stream(session, 4, NGHTTP2_STREAM_FLAG_NONE, in test_nghttp2_session_open_stream()
6577 CU_ASSERT(0 == session->num_incoming_streams); in test_nghttp2_session_open_stream()
6578 CU_ASSERT(0 == session->num_outgoing_streams); in test_nghttp2_session_open_stream()
6579 CU_ASSERT(&session->root == stream->dep_prev); in test_nghttp2_session_open_stream()
6583 nghttp2_session_del(session); in test_nghttp2_session_open_stream()
6587 nghttp2_session *session; in test_nghttp2_session_open_stream_with_idle_stream_dep() local
6593 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_open_stream_with_idle_stream_dep()
6598 stream = nghttp2_session_open_stream(session, 1, NGHTTP2_STREAM_FLAG_NONE, in test_nghttp2_session_open_stream_with_idle_stream_dep()
6604 stream = nghttp2_session_get_stream_raw(session, 101); in test_nghttp2_session_open_stream_with_idle_stream_dep()
6612 stream = nghttp2_session_open_stream(session, 101, NGHTTP2_STREAM_FLAG_NONE, in test_nghttp2_session_open_stream_with_idle_stream_dep()
6618 stream = nghttp2_session_get_stream_raw(session, 211); in test_nghttp2_session_open_stream_with_idle_stream_dep()
6623 nghttp2_session_del(session); in test_nghttp2_session_open_stream_with_idle_stream_dep()
6627 nghttp2_session *session; in test_nghttp2_session_get_next_ob_item() local
6634 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_get_next_ob_item()
6635 session->remote_settings.max_concurrent_streams = 2; in test_nghttp2_session_get_next_ob_item()
6637 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_session_get_next_ob_item()
6638 nghttp2_submit_ping(session, NGHTTP2_FLAG_NONE, NULL); in test_nghttp2_session_get_next_ob_item()
6640 nghttp2_session_get_next_ob_item(session)->frame.hd.type); in test_nghttp2_session_get_next_ob_item()
6642 CU_ASSERT(1 == nghttp2_submit_request(session, NULL, NULL, 0, NULL, NULL)); in test_nghttp2_session_get_next_ob_item()
6644 nghttp2_session_get_next_ob_item(session)->frame.hd.type); in test_nghttp2_session_get_next_ob_item()
6646 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_get_next_ob_item()
6647 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_session_get_next_ob_item()
6651 open_recv_stream(session, 2); in test_nghttp2_session_get_next_ob_item()
6656 nghttp2_submit_request(session, &pri_spec, NULL, 0, NULL, NULL)); in test_nghttp2_session_get_next_ob_item()
6658 nghttp2_session_get_next_ob_item(session)->frame.hd.type); in test_nghttp2_session_get_next_ob_item()
6659 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_get_next_ob_item()
6662 nghttp2_submit_request(session, &pri_spec, NULL, 0, NULL, NULL)); in test_nghttp2_session_get_next_ob_item()
6663 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_session_get_next_ob_item()
6665 session->remote_settings.max_concurrent_streams = 3; in test_nghttp2_session_get_next_ob_item()
6668 nghttp2_session_get_next_ob_item(session)->frame.hd.type); in test_nghttp2_session_get_next_ob_item()
6670 nghttp2_session_del(session); in test_nghttp2_session_get_next_ob_item()
6673 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_get_next_ob_item()
6674 session->remote_settings.max_concurrent_streams = 0; in test_nghttp2_session_get_next_ob_item()
6675 open_sent_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_get_next_ob_item()
6676 CU_ASSERT(0 == nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, 2, in test_nghttp2_session_get_next_ob_item()
6678 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_session_get_next_ob_item()
6679 CU_ASSERT(1 == nghttp2_outbound_queue_size(&session->ob_syn)); in test_nghttp2_session_get_next_ob_item()
6680 nghttp2_session_del(session); in test_nghttp2_session_get_next_ob_item()
6684 nghttp2_session *session; in test_nghttp2_session_pop_next_ob_item() local
6694 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_pop_next_ob_item()
6695 session->remote_settings.max_concurrent_streams = 1; in test_nghttp2_session_pop_next_ob_item()
6697 CU_ASSERT(NULL == nghttp2_session_pop_next_ob_item(session)); in test_nghttp2_session_pop_next_ob_item()
6699 nghttp2_submit_ping(session, NGHTTP2_FLAG_NONE, NULL); in test_nghttp2_session_pop_next_ob_item()
6703 nghttp2_submit_request(session, &pri_spec, NULL, 0, NULL, NULL); in test_nghttp2_session_pop_next_ob_item()
6705 item = nghttp2_session_pop_next_ob_item(session); in test_nghttp2_session_pop_next_ob_item()
6710 item = nghttp2_session_pop_next_ob_item(session); in test_nghttp2_session_pop_next_ob_item()
6715 CU_ASSERT(NULL == nghttp2_session_pop_next_ob_item(session)); in test_nghttp2_session_pop_next_ob_item()
6719 open_recv_stream(session, 4); in test_nghttp2_session_pop_next_ob_item()
6721 open_sent_stream(session, 1); in test_nghttp2_session_pop_next_ob_item()
6725 nghttp2_submit_request(session, &pri_spec, NULL, 0, NULL, NULL); in test_nghttp2_session_pop_next_ob_item()
6727 CU_ASSERT(NULL == nghttp2_session_pop_next_ob_item(session)); in test_nghttp2_session_pop_next_ob_item()
6729 session->remote_settings.max_concurrent_streams = 2; in test_nghttp2_session_pop_next_ob_item()
6731 item = nghttp2_session_pop_next_ob_item(session); in test_nghttp2_session_pop_next_ob_item()
6736 nghttp2_session_del(session); in test_nghttp2_session_pop_next_ob_item()
6739 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_pop_next_ob_item()
6740 session->remote_settings.max_concurrent_streams = 0; in test_nghttp2_session_pop_next_ob_item()
6741 open_sent_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_pop_next_ob_item()
6742 CU_ASSERT(0 == nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, 2, in test_nghttp2_session_pop_next_ob_item()
6744 CU_ASSERT(NULL == nghttp2_session_pop_next_ob_item(session)); in test_nghttp2_session_pop_next_ob_item()
6745 CU_ASSERT(1 == nghttp2_outbound_queue_size(&session->ob_syn)); in test_nghttp2_session_pop_next_ob_item()
6746 nghttp2_session_del(session); in test_nghttp2_session_pop_next_ob_item()
6750 nghttp2_session *session; in test_nghttp2_session_reply_fail() local
6760 CU_ASSERT(0 == nghttp2_session_server_new(&session, &callbacks, &ud)); in test_nghttp2_session_reply_fail()
6761 open_recv_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_session_reply_fail()
6762 CU_ASSERT(0 == nghttp2_submit_response(session, 1, NULL, 0, &data_prd)); in test_nghttp2_session_reply_fail()
6763 CU_ASSERT(NGHTTP2_ERR_CALLBACK_FAILURE == nghttp2_session_send(session)); in test_nghttp2_session_reply_fail()
6764 nghttp2_session_del(session); in test_nghttp2_session_reply_fail()
6768 nghttp2_session *session; in test_nghttp2_session_max_concurrent_streams() local
6778 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_max_concurrent_streams()
6779 open_recv_stream(session, 1); in test_nghttp2_session_max_concurrent_streams()
6784 session->pending_local_max_concurrent_stream = 1; in test_nghttp2_session_max_concurrent_streams()
6787 nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_max_concurrent_streams()
6789 item = nghttp2_outbound_queue_top(&session->ob_reg); in test_nghttp2_session_max_concurrent_streams()
6793 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_max_concurrent_streams()
6796 session->local_settings.max_concurrent_streams = 1; in test_nghttp2_session_max_concurrent_streams()
6800 nghttp2_session_on_request_headers_received(session, &frame)); in test_nghttp2_session_max_concurrent_streams()
6802 item = nghttp2_outbound_queue_top(&session->ob_reg); in test_nghttp2_session_max_concurrent_streams()
6807 nghttp2_session_del(session); in test_nghttp2_session_max_concurrent_streams()
6811 nghttp2_session *session; in test_nghttp2_session_stop_data_with_rst_stream() local
6825 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_stop_data_with_rst_stream()
6826 open_recv_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_session_stop_data_with_rst_stream()
6827 nghttp2_submit_response(session, 1, NULL, 0, &data_prd); in test_nghttp2_session_stop_data_with_rst_stream()
6831 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_stop_data_with_rst_stream()
6837 CU_ASSERT(0 == nghttp2_session_on_rst_stream_received(session, &frame)); in test_nghttp2_session_stop_data_with_rst_stream()
6843 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_stop_data_with_rst_stream()
6848 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 1)); in test_nghttp2_session_stop_data_with_rst_stream()
6850 nghttp2_session_del(session); in test_nghttp2_session_stop_data_with_rst_stream()
6854 nghttp2_session *session; in test_nghttp2_session_defer_data() local
6869 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_defer_data()
6870 stream = open_recv_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_session_defer_data()
6872 session->remote_window_size = 1 << 20; in test_nghttp2_session_defer_data()
6875 nghttp2_submit_response(session, 1, NULL, 0, &data_prd); in test_nghttp2_session_defer_data()
6879 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_defer_data()
6885 nghttp2_submit_ping(session, NGHTTP2_FLAG_NONE, NULL); in test_nghttp2_session_defer_data()
6887 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_defer_data()
6891 CU_ASSERT(0 == nghttp2_session_resume_data(session, 1)); in test_nghttp2_session_defer_data()
6897 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_defer_data()
6905 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_defer_data()
6909 CU_ASSERT(0 == nghttp2_session_resume_data(session, 1)); in test_nghttp2_session_defer_data()
6914 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_defer_data()
6917 nghttp2_session_del(session); in test_nghttp2_session_defer_data()
6921 nghttp2_session *session; in test_nghttp2_session_flow_control() local
6945 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_flow_control()
6947 session->remote_window_size = 64 * 1024; in test_nghttp2_session_flow_control()
6948 session->remote_settings.initial_window_size = 64 * 1024; in test_nghttp2_session_flow_control()
6950 nghttp2_submit_request(session, NULL, NULL, 0, &data_prd, NULL); in test_nghttp2_session_flow_control()
6953 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_flow_control()
6959 nghttp2_session_on_window_update_received(session, &frame); in test_nghttp2_session_flow_control()
6962 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_flow_control()
6967 nghttp2_session_on_window_update_received(session, &frame); in test_nghttp2_session_flow_control()
6970 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_flow_control()
6973 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_session_flow_control()
6979 ((int32_t)session->remote_settings.initial_window_size - in test_nghttp2_session_flow_control()
6981 session->remote_settings.initial_window_size = in test_nghttp2_session_flow_control()
6988 nghttp2_session_on_window_update_received(session, &frame); in test_nghttp2_session_flow_control()
6991 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_flow_control()
6997 nghttp2_session_on_window_update_received(session, &frame); in test_nghttp2_session_flow_control()
7002 nghttp2_session_on_window_update_received(session, &frame); in test_nghttp2_session_flow_control()
7005 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_flow_control()
7014 nghttp2_session_on_settings_received(session, &settings_frame, 1); in test_nghttp2_session_flow_control()
7018 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_flow_control()
7024 nghttp2_session_on_window_update_received(session, &frame); in test_nghttp2_session_flow_control()
7027 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_flow_control()
7029 CU_ASSERT(nghttp2_session_get_stream(session, 1)->shut_flags & in test_nghttp2_session_flow_control()
7033 nghttp2_session_del(session); in test_nghttp2_session_flow_control()
7037 nghttp2_session *session; in test_nghttp2_session_flow_control_data_recv() local
7048 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_flow_control_data_recv()
7050 stream = open_sent_stream(session, 1); in test_nghttp2_session_flow_control_data_recv()
7054 session->local_window_size = NGHTTP2_MAX_PAYLOADLEN; in test_nghttp2_session_flow_control_data_recv()
7065 session, data, NGHTTP2_MAX_PAYLOADLEN + NGHTTP2_FRAME_HDLEN)); in test_nghttp2_session_flow_control_data_recv()
7067 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_flow_control_data_recv()
7075 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_flow_control_data_recv()
7084 session, data, NGHTTP2_MAX_PAYLOADLEN + NGHTTP2_FRAME_HDLEN)); in test_nghttp2_session_flow_control_data_recv()
7086 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_flow_control_data_recv()
7092 nghttp2_session_del(session); in test_nghttp2_session_flow_control_data_recv()
7096 nghttp2_session *session; in test_nghttp2_session_flow_control_data_with_padding_recv() local
7112 nghttp2_session_client_new2(&session, &callbacks, NULL, option); in test_nghttp2_session_flow_control_data_with_padding_recv()
7116 stream = open_sent_stream(session, 1); in test_nghttp2_session_flow_control_data_with_padding_recv()
7128 nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + hd.length)); in test_nghttp2_session_flow_control_data_with_padding_recv()
7130 CU_ASSERT((int32_t)hd.length == session->recv_window_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7132 CU_ASSERT(256 == session->consumed_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7134 CU_ASSERT(357 == session->recv_window_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7140 nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 103)); in test_nghttp2_session_flow_control_data_with_padding_recv()
7141 CU_ASSERT(258 == session->consumed_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7143 CU_ASSERT(460 == session->recv_window_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7147 CU_ASSERT(254 == nghttp2_session_mem_recv(session, data, 254)); in test_nghttp2_session_flow_control_data_with_padding_recv()
7148 CU_ASSERT(512 == session->consumed_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7150 CU_ASSERT(714 == session->recv_window_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7157 nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 102)); in test_nghttp2_session_flow_control_data_with_padding_recv()
7158 CU_ASSERT(513 == session->consumed_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7160 CU_ASSERT(816 == session->recv_window_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7164 CU_ASSERT(255 == nghttp2_session_mem_recv(session, data, 255)); in test_nghttp2_session_flow_control_data_with_padding_recv()
7165 CU_ASSERT(768 == session->consumed_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7167 CU_ASSERT(1071 == session->recv_window_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7174 nghttp2_session_mem_recv(session, data, NGHTTP2_FRAME_HDLEN + 51)); in test_nghttp2_session_flow_control_data_with_padding_recv()
7175 CU_ASSERT(769 == session->consumed_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7177 CU_ASSERT(1122 == session->recv_window_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7181 CU_ASSERT(306 == nghttp2_session_mem_recv(session, data, 306)); in test_nghttp2_session_flow_control_data_with_padding_recv()
7182 CU_ASSERT(1024 == session->consumed_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7184 CU_ASSERT(1428 == session->recv_window_size); in test_nghttp2_session_flow_control_data_with_padding_recv()
7187 nghttp2_session_del(session); in test_nghttp2_session_flow_control_data_with_padding_recv()
7191 nghttp2_session *session; in test_nghttp2_session_data_read_temporal_failure() local
7207 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_data_read_temporal_failure()
7208 nghttp2_submit_request(session, NULL, NULL, 0, &data_prd, NULL); in test_nghttp2_session_data_read_temporal_failure()
7212 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_data_read_temporal_failure()
7215 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_session_data_read_temporal_failure()
7225 nghttp2_session_on_window_update_received(session, &frame); in test_nghttp2_session_data_read_temporal_failure()
7227 nghttp2_session_on_window_update_received(session, &frame); in test_nghttp2_session_data_read_temporal_failure()
7232 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_data_read_temporal_failure()
7239 nghttp2_submit_request(session, NULL, NULL, 0, &data_prd, NULL); in test_nghttp2_session_data_read_temporal_failure()
7241 CU_ASSERT(NGHTTP2_ERR_CALLBACK_FAILURE == nghttp2_session_send(session)); in test_nghttp2_session_data_read_temporal_failure()
7243 nghttp2_session_del(session); in test_nghttp2_session_data_read_temporal_failure()
7247 nghttp2_session *session; in test_nghttp2_session_on_stream_close() local
7256 nghttp2_session_client_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_stream_close()
7258 open_sent_stream3(session, 1, NGHTTP2_STREAM_FLAG_NONE, &pri_spec_default, in test_nghttp2_session_on_stream_close()
7261 CU_ASSERT(nghttp2_session_close_stream(session, 1, NGHTTP2_NO_ERROR) == 0); in test_nghttp2_session_on_stream_close()
7263 nghttp2_session_del(session); in test_nghttp2_session_on_stream_close()
7267 nghttp2_session *session; in test_nghttp2_session_on_ctrl_not_send() local
7279 nghttp2_session_server_new(&session, &callbacks, &user_data); in test_nghttp2_session_on_ctrl_not_send()
7281 open_recv_stream3(session, 1, NGHTTP2_STREAM_FLAG_NONE, &pri_spec_default, in test_nghttp2_session_on_ctrl_not_send()
7286 CU_ASSERT(0 == nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, 3, in test_nghttp2_session_on_ctrl_not_send()
7288 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_on_ctrl_not_send()
7296 CU_ASSERT(0 == nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, 1, in test_nghttp2_session_on_ctrl_not_send()
7298 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_on_ctrl_not_send()
7306 CU_ASSERT(0 == nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, 1, in test_nghttp2_session_on_ctrl_not_send()
7308 CU_ASSERT(0 == nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE, 1, in test_nghttp2_session_on_ctrl_not_send()
7310 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_on_ctrl_not_send()
7315 nghttp2_session_del(session); in test_nghttp2_session_on_ctrl_not_send()
7319 CU_ASSERT(nghttp2_session_client_new(&session, &callbacks, &user_data) == 0); in test_nghttp2_session_on_ctrl_not_send()
7321 session->next_stream_id = (1u << 31) + 1; in test_nghttp2_session_on_ctrl_not_send()
7323 nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, -1, NULL, in test_nghttp2_session_on_ctrl_not_send()
7328 session->goaway_flags |= NGHTTP2_GOAWAY_RECV; in test_nghttp2_session_on_ctrl_not_send()
7329 session->next_stream_id = 9; in test_nghttp2_session_on_ctrl_not_send()
7331 CU_ASSERT(0 < nghttp2_submit_headers(session, NGHTTP2_FLAG_END_STREAM, -1, in test_nghttp2_session_on_ctrl_not_send()
7333 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_on_ctrl_not_send()
7338 nghttp2_session_del(session); in test_nghttp2_session_on_ctrl_not_send()
7342 nghttp2_session *session; in test_nghttp2_session_get_outbound_queue_size() local
7346 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, NULL)); in test_nghttp2_session_get_outbound_queue_size()
7347 CU_ASSERT(0 == nghttp2_session_get_outbound_queue_size(session)); in test_nghttp2_session_get_outbound_queue_size()
7349 CU_ASSERT(0 == nghttp2_submit_ping(session, NGHTTP2_FLAG_NONE, NULL)); in test_nghttp2_session_get_outbound_queue_size()
7350 CU_ASSERT(1 == nghttp2_session_get_outbound_queue_size(session)); in test_nghttp2_session_get_outbound_queue_size()
7352 CU_ASSERT(0 == nghttp2_submit_goaway(session, NGHTTP2_FLAG_NONE, 2, in test_nghttp2_session_get_outbound_queue_size()
7354 CU_ASSERT(2 == nghttp2_session_get_outbound_queue_size(session)); in test_nghttp2_session_get_outbound_queue_size()
7356 nghttp2_session_del(session); in test_nghttp2_session_get_outbound_queue_size()
7360 nghttp2_session *session; in test_nghttp2_session_get_effective_local_window_size() local
7365 CU_ASSERT(0 == nghttp2_session_client_new(&session, &callbacks, NULL)); in test_nghttp2_session_get_effective_local_window_size()
7367 stream = open_sent_stream(session, 1); in test_nghttp2_session_get_effective_local_window_size()
7370 nghttp2_session_get_effective_local_window_size(session)); in test_nghttp2_session_get_effective_local_window_size()
7371 CU_ASSERT(0 == nghttp2_session_get_effective_recv_data_length(session)); in test_nghttp2_session_get_effective_local_window_size()
7374 nghttp2_session_get_stream_effective_local_window_size(session, 1)); in test_nghttp2_session_get_effective_local_window_size()
7376 nghttp2_session_get_stream_effective_recv_data_length(session, 1)); in test_nghttp2_session_get_effective_local_window_size()
7379 session->recv_window_size = 100; in test_nghttp2_session_get_effective_local_window_size()
7380 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 0, 1100); in test_nghttp2_session_get_effective_local_window_size()
7383 nghttp2_session_get_effective_local_window_size(session)); in test_nghttp2_session_get_effective_local_window_size()
7385 nghttp2_session_get_local_window_size(session)); in test_nghttp2_session_get_effective_local_window_size()
7386 CU_ASSERT(0 == nghttp2_session_get_effective_recv_data_length(session)); in test_nghttp2_session_get_effective_local_window_size()
7388 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 0, -50); in test_nghttp2_session_get_effective_local_window_size()
7390 CU_ASSERT(-50 == session->recv_window_size); in test_nghttp2_session_get_effective_local_window_size()
7391 CU_ASSERT(50 == session->recv_reduction); in test_nghttp2_session_get_effective_local_window_size()
7393 nghttp2_session_get_effective_local_window_size(session)); in test_nghttp2_session_get_effective_local_window_size()
7395 nghttp2_session_get_local_window_size(session)); in test_nghttp2_session_get_effective_local_window_size()
7396 CU_ASSERT(0 == nghttp2_session_get_effective_recv_data_length(session)); in test_nghttp2_session_get_effective_local_window_size()
7398 session->recv_window_size += 50; in test_nghttp2_session_get_effective_local_window_size()
7403 nghttp2_session_get_local_window_size(session)); in test_nghttp2_session_get_effective_local_window_size()
7405 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 0, 100); in test_nghttp2_session_get_effective_local_window_size()
7406 CU_ASSERT(50 == session->recv_window_size); in test_nghttp2_session_get_effective_local_window_size()
7407 CU_ASSERT(0 == session->recv_reduction); in test_nghttp2_session_get_effective_local_window_size()
7409 nghttp2_session_get_effective_local_window_size(session)); in test_nghttp2_session_get_effective_local_window_size()
7411 nghttp2_session_get_local_window_size(session)); in test_nghttp2_session_get_effective_local_window_size()
7412 CU_ASSERT(50 == nghttp2_session_get_effective_recv_data_length(session)); in test_nghttp2_session_get_effective_local_window_size()
7416 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 1, 1100); in test_nghttp2_session_get_effective_local_window_size()
7419 nghttp2_session_get_stream_effective_local_window_size(session, 1)); in test_nghttp2_session_get_effective_local_window_size()
7421 nghttp2_session_get_stream_local_window_size(session, 1)); in test_nghttp2_session_get_effective_local_window_size()
7423 nghttp2_session_get_stream_effective_recv_data_length(session, 1)); in test_nghttp2_session_get_effective_local_window_size()
7425 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 1, -50); in test_nghttp2_session_get_effective_local_window_size()
7428 nghttp2_session_get_stream_effective_local_window_size(session, 1)); in test_nghttp2_session_get_effective_local_window_size()
7430 nghttp2_session_get_stream_local_window_size(session, 1)); in test_nghttp2_session_get_effective_local_window_size()
7432 nghttp2_session_get_stream_effective_recv_data_length(session, 1)); in test_nghttp2_session_get_effective_local_window_size()
7436 nghttp2_submit_window_update(session, NGHTTP2_FLAG_NONE, 1, 100); in test_nghttp2_session_get_effective_local_window_size()
7438 nghttp2_session_get_stream_effective_local_window_size(session, 1)); in test_nghttp2_session_get_effective_local_window_size()
7440 nghttp2_session_get_stream_local_window_size(session, 1)); in test_nghttp2_session_get_effective_local_window_size()
7442 nghttp2_session_get_stream_effective_recv_data_length(session, 1)); in test_nghttp2_session_get_effective_local_window_size()
7444 nghttp2_session_del(session); in test_nghttp2_session_get_effective_local_window_size()
7448 nghttp2_session *session; in test_nghttp2_session_set_option() local
7461 nghttp2_session_client_new2(&session, &callbacks, NULL, option); in test_nghttp2_session_set_option()
7463 CU_ASSERT(session->opt_flags & NGHTTP2_OPTMASK_NO_AUTO_WINDOW_UPDATE); in test_nghttp2_session_set_option()
7465 nghttp2_session_del(session); in test_nghttp2_session_set_option()
7472 nghttp2_session_client_new2(&session, &callbacks, NULL, option); in test_nghttp2_session_set_option()
7474 CU_ASSERT(100 == session->remote_settings.max_concurrent_streams); in test_nghttp2_session_set_option()
7475 nghttp2_session_del(session); in test_nghttp2_session_set_option()
7482 nghttp2_session_client_new2(&session, &callbacks, NULL, option); in test_nghttp2_session_set_option()
7484 CU_ASSERT(99 == session->max_incoming_reserved_streams); in test_nghttp2_session_set_option()
7485 nghttp2_session_del(session); in test_nghttp2_session_set_option()
7492 nghttp2_session_client_new2(&session, &callbacks, NULL, option); in test_nghttp2_session_set_option()
7494 CU_ASSERT(session->opt_flags & NGHTTP2_OPTMASK_NO_AUTO_PING_ACK); in test_nghttp2_session_set_option()
7496 nghttp2_session_del(session); in test_nghttp2_session_set_option()
7503 nghttp2_session_client_new2(&session, &callbacks, NULL, option); in test_nghttp2_session_set_option()
7505 deflater = &session->hd_deflater; in test_nghttp2_session_set_option()
7507 rv = nghttp2_submit_request(session, NULL, reqnv, ARRLEN(reqnv), NULL, NULL); in test_nghttp2_session_set_option()
7511 rv = nghttp2_session_send(session); in test_nghttp2_session_set_option()
7517 nghttp2_session_del(session); in test_nghttp2_session_set_option()
7522 nghttp2_session *session; in test_nghttp2_session_data_backoff_by_high_pri_frame() local
7536 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_data_backoff_by_high_pri_frame()
7537 nghttp2_submit_request(session, NULL, NULL, 0, &data_prd, NULL); in test_nghttp2_session_data_backoff_by_high_pri_frame()
7539 session->remote_window_size = 1 << 20; in test_nghttp2_session_data_backoff_by_high_pri_frame()
7543 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_data_backoff_by_high_pri_frame()
7545 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_session_data_backoff_by_high_pri_frame()
7552 nghttp2_submit_ping(session, NGHTTP2_FLAG_NONE, NULL); in test_nghttp2_session_data_backoff_by_high_pri_frame()
7555 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_data_backoff_by_high_pri_frame()
7562 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_data_backoff_by_high_pri_frame()
7566 nghttp2_session_del(session); in test_nghttp2_session_data_backoff_by_high_pri_frame()
7572 nghttp2_session *session; in check_session_recv_data_with_padding() local
7581 nghttp2_session_server_new(&session, &callbacks, &ud); in check_session_recv_data_with_padding()
7583 open_recv_stream(session, 1); in check_session_recv_data_with_padding()
7590 CU_ASSERT((ssize_t)inlen == nghttp2_session_mem_recv(session, in, inlen)); in check_session_recv_data_with_padding()
7596 nghttp2_session_del(session); in check_session_recv_data_with_padding()
7600 nghttp2_session *session; in test_nghttp2_session_pack_data_with_padding() local
7617 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_pack_data_with_padding()
7621 nghttp2_submit_request(session, NULL, NULL, 0, &data_prd, NULL); in test_nghttp2_session_pack_data_with_padding()
7625 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_pack_data_with_padding()
7628 frame = &session->aob.item->frame; in test_nghttp2_session_pack_data_with_padding()
7634 check_session_recv_data_with_padding(&session->aob.framebufs, datalen, mem); in test_nghttp2_session_pack_data_with_padding()
7636 nghttp2_session_del(session); in test_nghttp2_session_pack_data_with_padding()
7640 nghttp2_session *session, *sv_session; in test_nghttp2_session_pack_headers_with_padding() local
7654 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_pack_headers_with_padding()
7659 CU_ASSERT(1 == nghttp2_submit_request(session, NULL, reqnv, ARRLEN(reqnv), in test_nghttp2_session_pack_headers_with_padding()
7661 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_pack_headers_with_padding()
7671 nghttp2_session_del(session); in test_nghttp2_session_pack_headers_with_padding()
7717 nghttp2_session *session; in test_nghttp2_session_stream_dep_add() local
7723 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_add()
7725 root = &session->root; in test_nghttp2_session_stream_dep_add()
7727 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_add()
7729 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_dep_add()
7730 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_add()
7731 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_dep_add()
7750 CU_ASSERT(a == session->root.dep_next); in test_nghttp2_session_stream_dep_add()
7752 e = open_stream_with_dep_excl(session, 9, a); in test_nghttp2_session_stream_dep_add()
7775 CU_ASSERT(a == session->root.dep_next); in test_nghttp2_session_stream_dep_add()
7777 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_add()
7781 nghttp2_session *session; in test_nghttp2_session_stream_dep_remove() local
7788 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_remove()
7790 root = &session->root; in test_nghttp2_session_stream_dep_remove()
7792 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_remove()
7793 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_remove()
7794 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_dep_remove()
7795 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_dep_remove()
7822 CU_ASSERT(c == session->root.dep_next); in test_nghttp2_session_stream_dep_remove()
7824 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_remove()
7827 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_remove()
7829 root = &session->root; in test_nghttp2_session_stream_dep_remove()
7831 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_remove()
7832 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_remove()
7833 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_dep_remove()
7834 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_dep_remove()
7863 CU_ASSERT(a == session->root.dep_next); in test_nghttp2_session_stream_dep_remove()
7865 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_remove()
7868 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_remove()
7870 root = &session->root; in test_nghttp2_session_stream_dep_remove()
7872 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_remove()
7873 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_remove()
7874 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_dep_remove()
7875 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_dep_remove()
7876 e = open_stream_with_dep(session, 9, c); in test_nghttp2_session_stream_dep_remove()
7905 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_remove()
7908 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_remove()
7910 root = &session->root; in test_nghttp2_session_stream_dep_remove()
7912 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_remove()
7913 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_remove()
7914 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_dep_remove()
7915 d = open_stream_with_dep(session, 7, a); in test_nghttp2_session_stream_dep_remove()
7916 e = open_stream_with_dep(session, 9, c); in test_nghttp2_session_stream_dep_remove()
7917 f = open_stream_with_dep(session, 11, c); in test_nghttp2_session_stream_dep_remove()
7957 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_remove()
7961 nghttp2_session *session; in test_nghttp2_session_stream_dep_add_subtree() local
7968 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_add_subtree()
7970 root = &session->root; in test_nghttp2_session_stream_dep_add_subtree()
7972 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_add_subtree()
7973 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_add_subtree()
7974 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_dep_add_subtree()
7975 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_dep_add_subtree()
7977 e = open_stream(session, 9); in test_nghttp2_session_stream_dep_add_subtree()
7978 f = open_stream_with_dep(session, 11, e); in test_nghttp2_session_stream_dep_add_subtree()
8012 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_add_subtree()
8015 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_add_subtree()
8017 root = &session->root; in test_nghttp2_session_stream_dep_add_subtree()
8019 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_add_subtree()
8020 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_add_subtree()
8021 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_dep_add_subtree()
8022 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_dep_add_subtree()
8024 e = open_stream(session, 9); in test_nghttp2_session_stream_dep_add_subtree()
8025 f = open_stream_with_dep(session, 11, e); in test_nghttp2_session_stream_dep_add_subtree()
8061 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_add_subtree()
8065 nghttp2_session *session; in test_nghttp2_session_stream_dep_remove_subtree() local
8072 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_remove_subtree()
8074 root = &session->root; in test_nghttp2_session_stream_dep_remove_subtree()
8076 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_remove_subtree()
8077 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_remove_subtree()
8078 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_dep_remove_subtree()
8079 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_dep_remove_subtree()
8106 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_remove_subtree()
8109 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_remove_subtree()
8111 root = &session->root; in test_nghttp2_session_stream_dep_remove_subtree()
8113 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_remove_subtree()
8114 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_remove_subtree()
8115 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_dep_remove_subtree()
8116 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_dep_remove_subtree()
8145 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_remove_subtree()
8148 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_remove_subtree()
8150 root = &session->root; in test_nghttp2_session_stream_dep_remove_subtree()
8152 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_remove_subtree()
8153 e = open_stream_with_dep(session, 9, a); in test_nghttp2_session_stream_dep_remove_subtree()
8154 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_dep_remove_subtree()
8155 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_remove_subtree()
8156 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_dep_remove_subtree()
8185 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_remove_subtree()
8189 nghttp2_session *session; in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us() local
8199 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8201 root = &session->root; in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8203 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8204 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8206 c = open_stream(session, 5); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8214 CU_ASSERT(0 == nghttp2_stream_dep_insert_subtree(&session->root, c)); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8236 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8238 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8240 root = &session->root; in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8242 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8243 b = open_stream(session, 3); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8244 c = open_stream(session, 5); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8251 CU_ASSERT(0 == nghttp2_stream_dep_insert_subtree(&session->root, c)); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8271 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8273 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8275 root = &session->root; in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8277 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8278 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8280 c = open_stream(session, 5); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8281 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8289 CU_ASSERT(0 == nghttp2_stream_dep_insert_subtree(&session->root, c)); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8314 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8316 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8318 root = &session->root; in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8320 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8321 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8323 c = open_stream(session, 5); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8324 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8336 CU_ASSERT(0 == nghttp2_stream_dep_insert_subtree(&session->root, c)); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8360 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8362 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8364 root = &session->root; in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8366 a = open_stream(session, 1); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8367 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8369 c = open_stream(session, 5); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8370 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8384 CU_ASSERT(0 == nghttp2_stream_dep_insert_subtree(&session->root, c)); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8404 nghttp2_session_del(session); in test_nghttp2_session_stream_dep_all_your_stream_are_belong_to_us()
8408 nghttp2_session *session; in test_nghttp2_session_stream_attach_item() local
8418 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_attach_item()
8420 a = open_stream(session, 1); in test_nghttp2_session_stream_attach_item()
8421 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_attach_item()
8422 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_attach_item()
8423 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_attach_item()
8512 e = open_stream_with_dep_excl(session, 9, a); in test_nghttp2_session_stream_attach_item()
8568 nghttp2_session_del(session); in test_nghttp2_session_stream_attach_item()
8570 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_attach_item()
8572 a = open_stream(session, 1); in test_nghttp2_session_stream_attach_item()
8573 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_attach_item()
8574 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_attach_item()
8575 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_attach_item()
8619 nghttp2_session_del(session); in test_nghttp2_session_stream_attach_item()
8623 nghttp2_session *session; in test_nghttp2_session_stream_attach_item_subtree() local
8633 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_attach_item_subtree()
8635 a = open_stream(session, 1); in test_nghttp2_session_stream_attach_item_subtree()
8636 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_attach_item_subtree()
8637 c = open_stream_with_dep(session, 5, a); in test_nghttp2_session_stream_attach_item_subtree()
8638 d = open_stream_with_dep(session, 7, c); in test_nghttp2_session_stream_attach_item_subtree()
8640 e = open_stream_with_dep_weight(session, 9, 32, &session->root); in test_nghttp2_session_stream_attach_item_subtree()
8641 f = open_stream_with_dep(session, 11, e); in test_nghttp2_session_stream_attach_item_subtree()
8706 CU_ASSERT(0 == nghttp2_stream_dep_add_subtree(&session->root, b)); in test_nghttp2_session_stream_attach_item_subtree()
8736 CU_ASSERT(0 == nghttp2_stream_dep_add_subtree(&session->root, a)); in test_nghttp2_session_stream_attach_item_subtree()
8756 CU_ASSERT(0 == nghttp2_stream_dep_add_subtree(&session->root, c)); in test_nghttp2_session_stream_attach_item_subtree()
8843 CU_ASSERT(0 == nghttp2_stream_dep_add_subtree(&session->root, b)); in test_nghttp2_session_stream_attach_item_subtree()
8959 nghttp2_session_del(session); in test_nghttp2_session_stream_attach_item_subtree()
8963 nghttp2_session *session; in test_nghttp2_session_stream_get_state() local
8981 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_get_state()
8985 nghttp2_stream_get_state(nghttp2_session_get_root_stream(session))); in test_nghttp2_session_stream_get_state()
8992 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_stream_get_state()
8996 stream = nghttp2_session_find_stream(session, 1); in test_nghttp2_session_stream_get_state()
9010 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_stream_get_state()
9014 stream = nghttp2_session_find_stream(session, 3); in test_nghttp2_session_stream_get_state()
9024 nghttp2_submit_response(session, 1, resnv, ARRLEN(resnv), NULL); in test_nghttp2_session_stream_get_state()
9026 rv = nghttp2_session_send(session); in test_nghttp2_session_stream_get_state()
9030 stream = nghttp2_session_find_stream(session, 1); in test_nghttp2_session_stream_get_state()
9036 nghttp2_submit_response(session, 3, resnv, ARRLEN(resnv), NULL); in test_nghttp2_session_stream_get_state()
9038 rv = nghttp2_session_send(session); in test_nghttp2_session_stream_get_state()
9042 stream = nghttp2_session_find_stream(session, 3); in test_nghttp2_session_stream_get_state()
9052 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_stream_get_state()
9059 rv = nghttp2_submit_push_promise(session, NGHTTP2_FLAG_NONE, 5, reqnv, in test_nghttp2_session_stream_get_state()
9064 rv = nghttp2_session_send(session); in test_nghttp2_session_stream_get_state()
9068 stream = nghttp2_session_find_stream(session, 2); in test_nghttp2_session_stream_get_state()
9074 nghttp2_submit_response(session, 2, resnv, ARRLEN(resnv), NULL); in test_nghttp2_session_stream_get_state()
9076 rv = nghttp2_session_send(session); in test_nghttp2_session_stream_get_state()
9080 stream = nghttp2_session_find_stream(session, 2); in test_nghttp2_session_stream_get_state()
9086 rv = nghttp2_submit_push_promise(session, NGHTTP2_FLAG_NONE, 5, reqnv, in test_nghttp2_session_stream_get_state()
9091 rv = nghttp2_session_send(session); in test_nghttp2_session_stream_get_state()
9095 stream = nghttp2_session_find_stream(session, 4); in test_nghttp2_session_stream_get_state()
9103 nghttp2_submit_response(session, 4, resnv, ARRLEN(resnv), &data_prd); in test_nghttp2_session_stream_get_state()
9105 rv = nghttp2_session_send(session); in test_nghttp2_session_stream_get_state()
9109 stream = nghttp2_session_find_stream(session, 4); in test_nghttp2_session_stream_get_state()
9124 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_stream_get_state()
9128 stream = nghttp2_session_find_stream(session, 7); in test_nghttp2_session_stream_get_state()
9135 nghttp2_session_del(session); in test_nghttp2_session_stream_get_state()
9139 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_get_state()
9142 nghttp2_submit_request(session, NULL, reqnv, ARRLEN(reqnv), NULL, NULL); in test_nghttp2_session_stream_get_state()
9144 rv = nghttp2_session_send(session); in test_nghttp2_session_stream_get_state()
9153 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_stream_get_state()
9157 stream = nghttp2_session_find_stream(session, 2); in test_nghttp2_session_stream_get_state()
9169 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_stream_get_state()
9173 stream = nghttp2_session_find_stream(session, 2); in test_nghttp2_session_stream_get_state()
9181 nghttp2_session_del(session); in test_nghttp2_session_stream_get_state()
9187 nghttp2_session *session; in test_nghttp2_session_stream_get_something() local
9193 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_stream_get_something()
9195 a = open_stream(session, 1); in test_nghttp2_session_stream_get_something()
9197 CU_ASSERT(nghttp2_session_get_root_stream(session) == in test_nghttp2_session_stream_get_something()
9203 b = open_stream_with_dep(session, 3, a); in test_nghttp2_session_stream_get_something()
9204 c = open_stream_with_dep_weight(session, 5, 11, a); in test_nghttp2_session_stream_get_something()
9218 CU_ASSERT(0 == nghttp2_stream_get_stream_id(&session->root)); in test_nghttp2_session_stream_get_something()
9220 nghttp2_session_del(session); in test_nghttp2_session_stream_get_something()
9224 nghttp2_session *session; in test_nghttp2_session_find_stream() local
9230 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_find_stream()
9232 open_recv_stream(session, 1); in test_nghttp2_session_find_stream()
9234 stream = nghttp2_session_find_stream(session, 1); in test_nghttp2_session_find_stream()
9239 stream = nghttp2_session_find_stream(session, 0); in test_nghttp2_session_find_stream()
9241 CU_ASSERT(&session->root == stream); in test_nghttp2_session_find_stream()
9244 stream = nghttp2_session_find_stream(session, 2); in test_nghttp2_session_find_stream()
9248 nghttp2_session_del(session); in test_nghttp2_session_find_stream()
9252 nghttp2_session *session; in test_nghttp2_session_keep_closed_stream() local
9262 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_keep_closed_stream()
9264 nghttp2_submit_settings(session, NGHTTP2_FLAG_NONE, &iv, 1); in test_nghttp2_session_keep_closed_stream()
9267 open_recv_stream(session, (int32_t)i * 2 + 1); in test_nghttp2_session_keep_closed_stream()
9270 CU_ASSERT(0 == session->num_closed_streams); in test_nghttp2_session_keep_closed_stream()
9272 nghttp2_session_close_stream(session, 1, NGHTTP2_NO_ERROR); in test_nghttp2_session_keep_closed_stream()
9274 CU_ASSERT(1 == session->num_closed_streams); in test_nghttp2_session_keep_closed_stream()
9275 CU_ASSERT(1 == session->closed_stream_tail->stream_id); in test_nghttp2_session_keep_closed_stream()
9276 CU_ASSERT(session->closed_stream_tail == session->closed_stream_head); in test_nghttp2_session_keep_closed_stream()
9278 nghttp2_session_close_stream(session, 5, NGHTTP2_NO_ERROR); in test_nghttp2_session_keep_closed_stream()
9280 CU_ASSERT(2 == session->num_closed_streams); in test_nghttp2_session_keep_closed_stream()
9281 CU_ASSERT(5 == session->closed_stream_tail->stream_id); in test_nghttp2_session_keep_closed_stream()
9282 CU_ASSERT(1 == session->closed_stream_head->stream_id); in test_nghttp2_session_keep_closed_stream()
9283 CU_ASSERT(session->closed_stream_head == in test_nghttp2_session_keep_closed_stream()
9284 session->closed_stream_tail->closed_prev); in test_nghttp2_session_keep_closed_stream()
9285 CU_ASSERT(NULL == session->closed_stream_tail->closed_next); in test_nghttp2_session_keep_closed_stream()
9286 CU_ASSERT(session->closed_stream_tail == in test_nghttp2_session_keep_closed_stream()
9287 session->closed_stream_head->closed_next); in test_nghttp2_session_keep_closed_stream()
9288 CU_ASSERT(NULL == session->closed_stream_head->closed_prev); in test_nghttp2_session_keep_closed_stream()
9290 open_recv_stream(session, 11); in test_nghttp2_session_keep_closed_stream()
9291 nghttp2_session_adjust_closed_stream(session); in test_nghttp2_session_keep_closed_stream()
9293 CU_ASSERT(1 == session->num_closed_streams); in test_nghttp2_session_keep_closed_stream()
9294 CU_ASSERT(5 == session->closed_stream_tail->stream_id); in test_nghttp2_session_keep_closed_stream()
9295 CU_ASSERT(session->closed_stream_tail == session->closed_stream_head); in test_nghttp2_session_keep_closed_stream()
9296 CU_ASSERT(NULL == session->closed_stream_head->closed_prev); in test_nghttp2_session_keep_closed_stream()
9297 CU_ASSERT(NULL == session->closed_stream_head->closed_next); in test_nghttp2_session_keep_closed_stream()
9299 open_recv_stream(session, 13); in test_nghttp2_session_keep_closed_stream()
9300 nghttp2_session_adjust_closed_stream(session); in test_nghttp2_session_keep_closed_stream()
9302 CU_ASSERT(0 == session->num_closed_streams); in test_nghttp2_session_keep_closed_stream()
9303 CU_ASSERT(NULL == session->closed_stream_tail); in test_nghttp2_session_keep_closed_stream()
9304 CU_ASSERT(NULL == session->closed_stream_head); in test_nghttp2_session_keep_closed_stream()
9306 nghttp2_session_close_stream(session, 3, NGHTTP2_NO_ERROR); in test_nghttp2_session_keep_closed_stream()
9308 CU_ASSERT(1 == session->num_closed_streams); in test_nghttp2_session_keep_closed_stream()
9309 CU_ASSERT(3 == session->closed_stream_head->stream_id); in test_nghttp2_session_keep_closed_stream()
9312 open_sent_stream(session, 2); in test_nghttp2_session_keep_closed_stream()
9313 nghttp2_session_adjust_closed_stream(session); in test_nghttp2_session_keep_closed_stream()
9315 CU_ASSERT(1 == session->num_closed_streams); in test_nghttp2_session_keep_closed_stream()
9316 CU_ASSERT(3 == session->closed_stream_head->stream_id); in test_nghttp2_session_keep_closed_stream()
9318 nghttp2_session_close_stream(session, 2, NGHTTP2_NO_ERROR); in test_nghttp2_session_keep_closed_stream()
9320 CU_ASSERT(1 == session->num_closed_streams); in test_nghttp2_session_keep_closed_stream()
9321 CU_ASSERT(3 == session->closed_stream_head->stream_id); in test_nghttp2_session_keep_closed_stream()
9323 nghttp2_session_del(session); in test_nghttp2_session_keep_closed_stream()
9327 nghttp2_session *session; in test_nghttp2_session_keep_idle_stream() local
9338 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_keep_idle_stream()
9340 nghttp2_submit_settings(session, NGHTTP2_FLAG_NONE, &iv, 1); in test_nghttp2_session_keep_idle_stream()
9345 open_recv_stream2(session, i * 2 + 1, NGHTTP2_STREAM_IDLE); in test_nghttp2_session_keep_idle_stream()
9346 nghttp2_session_adjust_idle_stream(session); in test_nghttp2_session_keep_idle_stream()
9349 CU_ASSERT(NGHTTP2_MIN_IDLE_STREAMS == session->num_idle_streams); in test_nghttp2_session_keep_idle_stream()
9352 CU_ASSERT(1 == session->idle_stream_head->stream_id); in test_nghttp2_session_keep_idle_stream()
9353 CU_ASSERT(stream_id == session->idle_stream_tail->stream_id); in test_nghttp2_session_keep_idle_stream()
9357 open_recv_stream2(session, stream_id, NGHTTP2_STREAM_IDLE); in test_nghttp2_session_keep_idle_stream()
9358 nghttp2_session_adjust_idle_stream(session); in test_nghttp2_session_keep_idle_stream()
9360 CU_ASSERT(NGHTTP2_MIN_IDLE_STREAMS == session->num_idle_streams); in test_nghttp2_session_keep_idle_stream()
9361 CU_ASSERT(3 == session->idle_stream_head->stream_id); in test_nghttp2_session_keep_idle_stream()
9362 CU_ASSERT(stream_id == session->idle_stream_tail->stream_id); in test_nghttp2_session_keep_idle_stream()
9364 nghttp2_session_del(session); in test_nghttp2_session_keep_idle_stream()
9368 nghttp2_session *session; in test_nghttp2_session_detach_idle_stream() local
9376 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_detach_idle_stream()
9379 nghttp2_session_open_stream(session, i, NGHTTP2_STREAM_FLAG_NONE, in test_nghttp2_session_detach_idle_stream()
9383 CU_ASSERT(3 == session->num_idle_streams); in test_nghttp2_session_detach_idle_stream()
9386 stream = nghttp2_session_get_stream_raw(session, 2); in test_nghttp2_session_detach_idle_stream()
9388 CU_ASSERT(session->idle_stream_head == stream->closed_prev); in test_nghttp2_session_detach_idle_stream()
9389 CU_ASSERT(session->idle_stream_tail == stream->closed_next); in test_nghttp2_session_detach_idle_stream()
9390 CU_ASSERT(stream == session->idle_stream_head->closed_next); in test_nghttp2_session_detach_idle_stream()
9391 CU_ASSERT(stream == session->idle_stream_tail->closed_prev); in test_nghttp2_session_detach_idle_stream()
9393 nghttp2_session_detach_idle_stream(session, stream); in test_nghttp2_session_detach_idle_stream()
9395 CU_ASSERT(2 == session->num_idle_streams); in test_nghttp2_session_detach_idle_stream()
9400 CU_ASSERT(session->idle_stream_head == in test_nghttp2_session_detach_idle_stream()
9401 session->idle_stream_tail->closed_prev); in test_nghttp2_session_detach_idle_stream()
9402 CU_ASSERT(session->idle_stream_tail == in test_nghttp2_session_detach_idle_stream()
9403 session->idle_stream_head->closed_next); in test_nghttp2_session_detach_idle_stream()
9406 stream = session->idle_stream_head; in test_nghttp2_session_detach_idle_stream()
9408 nghttp2_session_detach_idle_stream(session, stream); in test_nghttp2_session_detach_idle_stream()
9410 CU_ASSERT(1 == session->num_idle_streams); in test_nghttp2_session_detach_idle_stream()
9412 CU_ASSERT(session->idle_stream_head == session->idle_stream_tail); in test_nghttp2_session_detach_idle_stream()
9413 CU_ASSERT(NULL == session->idle_stream_head->closed_prev); in test_nghttp2_session_detach_idle_stream()
9414 CU_ASSERT(NULL == session->idle_stream_head->closed_next); in test_nghttp2_session_detach_idle_stream()
9418 stream = session->idle_stream_head; in test_nghttp2_session_detach_idle_stream()
9420 nghttp2_session_detach_idle_stream(session, stream); in test_nghttp2_session_detach_idle_stream()
9422 CU_ASSERT(0 == session->num_idle_streams); in test_nghttp2_session_detach_idle_stream()
9424 CU_ASSERT(NULL == session->idle_stream_head); in test_nghttp2_session_detach_idle_stream()
9425 CU_ASSERT(NULL == session->idle_stream_tail); in test_nghttp2_session_detach_idle_stream()
9428 nghttp2_session_open_stream(session, i, NGHTTP2_STREAM_FLAG_NONE, in test_nghttp2_session_detach_idle_stream()
9432 CU_ASSERT(2 == session->num_idle_streams); in test_nghttp2_session_detach_idle_stream()
9436 stream = session->idle_stream_tail; in test_nghttp2_session_detach_idle_stream()
9438 nghttp2_session_detach_idle_stream(session, stream); in test_nghttp2_session_detach_idle_stream()
9440 CU_ASSERT(1 == session->num_idle_streams); in test_nghttp2_session_detach_idle_stream()
9442 CU_ASSERT(session->idle_stream_head == session->idle_stream_tail); in test_nghttp2_session_detach_idle_stream()
9443 CU_ASSERT(NULL == session->idle_stream_head->closed_prev); in test_nghttp2_session_detach_idle_stream()
9444 CU_ASSERT(NULL == session->idle_stream_head->closed_next); in test_nghttp2_session_detach_idle_stream()
9446 nghttp2_session_del(session); in test_nghttp2_session_detach_idle_stream()
9450 nghttp2_session *session; in test_nghttp2_session_large_dep_tree() local
9460 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_large_dep_tree()
9464 dep_stream = open_stream_with_dep(session, stream_id, dep_stream); in test_nghttp2_session_large_dep_tree()
9469 stream = nghttp2_session_get_stream(session, stream_id); in test_nghttp2_session_large_dep_tree()
9470 CU_ASSERT(nghttp2_stream_dep_find_ancestor(stream, &session->root)); in test_nghttp2_session_large_dep_tree()
9474 nghttp2_session_del(session); in test_nghttp2_session_large_dep_tree()
9478 nghttp2_session *session; in test_nghttp2_session_graceful_shutdown() local
9487 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_graceful_shutdown()
9489 open_recv_stream(session, 301); in test_nghttp2_session_graceful_shutdown()
9490 open_sent_stream(session, 302); in test_nghttp2_session_graceful_shutdown()
9491 open_recv_stream(session, 309); in test_nghttp2_session_graceful_shutdown()
9492 open_recv_stream(session, 311); in test_nghttp2_session_graceful_shutdown()
9493 open_recv_stream(session, 319); in test_nghttp2_session_graceful_shutdown()
9495 CU_ASSERT(0 == nghttp2_submit_shutdown_notice(session)); in test_nghttp2_session_graceful_shutdown()
9499 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_graceful_shutdown()
9502 CU_ASSERT((1u << 31) - 1 == session->local_last_stream_id); in test_nghttp2_session_graceful_shutdown()
9504 CU_ASSERT(0 == nghttp2_submit_goaway(session, NGHTTP2_FLAG_NONE, 311, in test_nghttp2_session_graceful_shutdown()
9510 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_graceful_shutdown()
9513 CU_ASSERT(311 == session->local_last_stream_id); in test_nghttp2_session_graceful_shutdown()
9517 nghttp2_session_terminate_session2(session, 301, NGHTTP2_NO_ERROR)); in test_nghttp2_session_graceful_shutdown()
9522 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_graceful_shutdown()
9525 CU_ASSERT(301 == session->local_last_stream_id); in test_nghttp2_session_graceful_shutdown()
9528 CU_ASSERT(NULL != nghttp2_session_get_stream(session, 301)); in test_nghttp2_session_graceful_shutdown()
9529 CU_ASSERT(NULL != nghttp2_session_get_stream(session, 302)); in test_nghttp2_session_graceful_shutdown()
9530 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 309)); in test_nghttp2_session_graceful_shutdown()
9531 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 311)); in test_nghttp2_session_graceful_shutdown()
9532 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 319)); in test_nghttp2_session_graceful_shutdown()
9534 nghttp2_session_del(session); in test_nghttp2_session_graceful_shutdown()
9538 nghttp2_session *session; in test_nghttp2_session_on_header_temporal_failure() local
9557 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_on_header_temporal_failure()
9586 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_bufs_len(&bufs)); in test_nghttp2_session_on_header_temporal_failure()
9591 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_header_temporal_failure()
9597 CU_ASSERT(NGHTTP2_GOAWAY_NONE == session->goaway_flags); in test_nghttp2_session_on_header_temporal_failure()
9600 nghttp2_session_del(session); in test_nghttp2_session_on_header_temporal_failure()
9606 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_on_header_temporal_failure()
9608 open_sent_stream(session, 1); in test_nghttp2_session_on_header_temporal_failure()
9615 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_on_header_temporal_failure()
9620 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_header_temporal_failure()
9625 nghttp2_session_del(session); in test_nghttp2_session_on_header_temporal_failure()
9631 nghttp2_session *session; in test_nghttp2_session_recv_client_magic() local
9643 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_recv_client_magic()
9645 rv = nghttp2_session_mem_recv(session, (const uint8_t *)NGHTTP2_CLIENT_MAGIC, in test_nghttp2_session_recv_client_magic()
9649 CU_ASSERT(NGHTTP2_IB_READ_FIRST_SETTINGS == session->iframe.state); in test_nghttp2_session_recv_client_magic()
9656 rv = nghttp2_session_mem_recv(session, buf, NGHTTP2_FRAME_HDLEN); in test_nghttp2_session_recv_client_magic()
9658 CU_ASSERT(NGHTTP2_IB_IGN_ALL == session->iframe.state); in test_nghttp2_session_recv_client_magic()
9659 CU_ASSERT(0 == session->iframe.payloadleft); in test_nghttp2_session_recv_client_magic()
9663 nghttp2_session_del(session); in test_nghttp2_session_recv_client_magic()
9666 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_recv_client_magic()
9669 rv = nghttp2_session_mem_recv(session, (const uint8_t *)NGHTTP2_CLIENT_MAGIC, in test_nghttp2_session_recv_client_magic()
9673 CU_ASSERT(NGHTTP2_IB_READ_CLIENT_MAGIC == session->iframe.state); in test_nghttp2_session_recv_client_magic()
9674 CU_ASSERT(1 == session->iframe.payloadleft); in test_nghttp2_session_recv_client_magic()
9676 rv = nghttp2_session_mem_recv(session, (const uint8_t *)"\0", 1); in test_nghttp2_session_recv_client_magic()
9680 nghttp2_session_del(session); in test_nghttp2_session_recv_client_magic()
9687 nghttp2_session *session; in test_nghttp2_session_delete_data_item() local
9694 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_delete_data_item()
9696 a = open_recv_stream(session, 1); in test_nghttp2_session_delete_data_item()
9697 open_recv_stream_with_dep(session, 3, a); in test_nghttp2_session_delete_data_item()
9703 CU_ASSERT(0 == nghttp2_submit_data(session, NGHTTP2_FLAG_NONE, 1, &prd)); in test_nghttp2_session_delete_data_item()
9704 CU_ASSERT(0 == nghttp2_submit_data(session, NGHTTP2_FLAG_NONE, 3, &prd)); in test_nghttp2_session_delete_data_item()
9706 nghttp2_session_del(session); in test_nghttp2_session_delete_data_item()
9710 nghttp2_session *session; in test_nghttp2_session_open_idle_stream() local
9719 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_open_idle_stream()
9725 CU_ASSERT(0 == nghttp2_session_on_priority_received(session, &frame)); in test_nghttp2_session_open_idle_stream()
9727 stream = nghttp2_session_get_stream_raw(session, 1); in test_nghttp2_session_open_idle_stream()
9732 CU_ASSERT(1 == session->num_idle_streams); in test_nghttp2_session_open_idle_stream()
9733 CU_ASSERT(session->idle_stream_head == stream); in test_nghttp2_session_open_idle_stream()
9734 CU_ASSERT(session->idle_stream_tail == stream); in test_nghttp2_session_open_idle_stream()
9736 opened_stream = open_recv_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_session_open_idle_stream()
9740 CU_ASSERT(0 == session->num_idle_streams); in test_nghttp2_session_open_idle_stream()
9741 CU_ASSERT(NULL == session->idle_stream_head); in test_nghttp2_session_open_idle_stream()
9742 CU_ASSERT(NULL == session->idle_stream_tail); in test_nghttp2_session_open_idle_stream()
9746 nghttp2_session_del(session); in test_nghttp2_session_open_idle_stream()
9750 nghttp2_session *session; in test_nghttp2_session_cancel_reserved_remote() local
9767 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_cancel_reserved_remote()
9771 stream = open_recv_stream2(session, 2, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_cancel_reserved_remote()
9773 nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE, 2, NGHTTP2_CANCEL); in test_nghttp2_session_cancel_reserved_remote()
9777 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_cancel_reserved_remote()
9788 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_cancel_reserved_remote()
9798 CU_ASSERT(0 == nghttp2_outbound_queue_size(&session->ob_reg)); in test_nghttp2_session_cancel_reserved_remote()
9802 open_recv_stream2(session, 4, NGHTTP2_STREAM_RESERVED); in test_nghttp2_session_cancel_reserved_remote()
9804 nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE, 2, NGHTTP2_CANCEL); in test_nghttp2_session_cancel_reserved_remote()
9813 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_cancel_reserved_remote()
9818 CU_ASSERT(1 == nghttp2_outbound_queue_size(&session->ob_reg)); in test_nghttp2_session_cancel_reserved_remote()
9824 nghttp2_session_del(session); in test_nghttp2_session_cancel_reserved_remote()
9830 nghttp2_session *session; in test_nghttp2_session_reset_pending_headers() local
9842 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_reset_pending_headers()
9844 stream_id = nghttp2_submit_request(session, NULL, NULL, 0, NULL, NULL); in test_nghttp2_session_reset_pending_headers()
9847 nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE, stream_id, in test_nghttp2_session_reset_pending_headers()
9850 session->remote_settings.max_concurrent_streams = 0; in test_nghttp2_session_reset_pending_headers()
9854 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_reset_pending_headers()
9858 stream = nghttp2_session_get_stream(session, stream_id); in test_nghttp2_session_reset_pending_headers()
9864 session->remote_settings.max_concurrent_streams = 1; in test_nghttp2_session_reset_pending_headers()
9868 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_reset_pending_headers()
9874 stream = nghttp2_session_get_stream(session, stream_id); in test_nghttp2_session_reset_pending_headers()
9878 nghttp2_session_del(session); in test_nghttp2_session_reset_pending_headers()
9882 nghttp2_session *session; in test_nghttp2_session_send_data_callback() local
9900 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_send_data_callback()
9902 open_sent_stream(session, 1); in test_nghttp2_session_send_data_callback()
9904 nghttp2_submit_data(session, NGHTTP2_FLAG_END_STREAM, 1, &data_prd); in test_nghttp2_session_send_data_callback()
9906 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_send_data_callback()
9922 nghttp2_session_del(session); in test_nghttp2_session_send_data_callback()
9926 nghttp2_session *session; in test_nghttp2_session_on_begin_headers_temporal_failure() local
9945 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_on_begin_headers_temporal_failure()
9953 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_on_begin_headers_temporal_failure()
9959 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_begin_headers_temporal_failure()
9964 nghttp2_session_del(session); in test_nghttp2_session_on_begin_headers_temporal_failure()
9970 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_on_begin_headers_temporal_failure()
9972 open_sent_stream(session, 1); in test_nghttp2_session_on_begin_headers_temporal_failure()
9980 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_on_begin_headers_temporal_failure()
9986 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_on_begin_headers_temporal_failure()
9991 nghttp2_session_del(session); in test_nghttp2_session_on_begin_headers_temporal_failure()
9997 nghttp2_session *session; in test_nghttp2_session_defer_then_close() local
10008 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_defer_then_close()
10012 rv = nghttp2_submit_request(session, NULL, reqnv, ARRLEN(reqnv), &prd, NULL); in test_nghttp2_session_defer_then_close()
10016 datalen = nghttp2_session_mem_send(session, &datap); in test_nghttp2_session_defer_then_close()
10021 datalen = nghttp2_session_mem_send(session, &datap); in test_nghttp2_session_defer_then_close()
10028 rv = nghttp2_session_on_rst_stream_received(session, &frame); in test_nghttp2_session_defer_then_close()
10032 nghttp2_session_del(session); in test_nghttp2_session_defer_then_close()
10035 static int submit_response_on_stream_close(nghttp2_session *session, in submit_response_on_stream_close() argument
10048 CU_ASSERT(0 == nghttp2_submit_response(session, stream_id, resnv, in submit_response_on_stream_close()
10052 CU_ASSERT(0 == nghttp2_submit_data(session, NGHTTP2_FLAG_NONE, stream_id, in submit_response_on_stream_close()
10061 nghttp2_session *session; in test_nghttp2_session_detach_item_from_closed_stream() local
10069 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_detach_item_from_closed_stream()
10071 open_recv_stream(session, 1); in test_nghttp2_session_detach_item_from_closed_stream()
10072 open_recv_stream(session, 3); in test_nghttp2_session_detach_item_from_closed_stream()
10074 nghttp2_session_close_stream(session, 1, NGHTTP2_NO_ERROR); in test_nghttp2_session_detach_item_from_closed_stream()
10075 nghttp2_session_close_stream(session, 3, NGHTTP2_NO_ERROR); in test_nghttp2_session_detach_item_from_closed_stream()
10077 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_detach_item_from_closed_stream()
10079 nghttp2_session_del(session); in test_nghttp2_session_detach_item_from_closed_stream()
10083 nghttp2_session *session; in test_nghttp2_session_flooding() local
10098 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_flooding()
10109 nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf))); in test_nghttp2_session_flooding()
10113 nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf))); in test_nghttp2_session_flooding()
10115 nghttp2_session_del(session); in test_nghttp2_session_flooding()
10120 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_flooding()
10131 nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf))); in test_nghttp2_session_flooding()
10135 nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf))); in test_nghttp2_session_flooding()
10137 nghttp2_session_del(session); in test_nghttp2_session_flooding()
10142 nghttp2_session *session; in test_nghttp2_session_change_stream_priority() local
10150 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_change_stream_priority()
10152 stream1 = open_recv_stream(session, 1); in test_nghttp2_session_change_stream_priority()
10153 stream3 = open_recv_stream_with_dep_weight(session, 3, 199, stream1); in test_nghttp2_session_change_stream_priority()
10154 stream2 = open_sent_stream_with_dep_weight(session, 2, 101, stream3); in test_nghttp2_session_change_stream_priority()
10158 rv = nghttp2_session_change_stream_priority(session, 2, &pri_spec); in test_nghttp2_session_change_stream_priority()
10166 rv = nghttp2_session_change_stream_priority(session, 5, &pri_spec); in test_nghttp2_session_change_stream_priority()
10170 rv = nghttp2_session_change_stream_priority(session, 1, &pri_spec); in test_nghttp2_session_change_stream_priority()
10174 rv = nghttp2_session_change_stream_priority(session, 0, &pri_spec); in test_nghttp2_session_change_stream_priority()
10181 rv = nghttp2_session_change_stream_priority(session, 2, &pri_spec); in test_nghttp2_session_change_stream_priority()
10185 stream5 = nghttp2_session_get_stream_raw(session, 5); in test_nghttp2_session_change_stream_priority()
10188 CU_ASSERT(&session->root == stream5->dep_prev); in test_nghttp2_session_change_stream_priority()
10192 nghttp2_session_del(session); in test_nghttp2_session_change_stream_priority()
10195 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_change_stream_priority()
10197 stream1 = open_sent_stream(session, 1); in test_nghttp2_session_change_stream_priority()
10201 rv = nghttp2_session_change_stream_priority(session, 1, &pri_spec); in test_nghttp2_session_change_stream_priority()
10205 stream5 = nghttp2_session_get_stream_raw(session, 5); in test_nghttp2_session_change_stream_priority()
10208 CU_ASSERT(&session->root == stream5->dep_prev); in test_nghttp2_session_change_stream_priority()
10212 nghttp2_session_del(session); in test_nghttp2_session_change_stream_priority()
10216 nghttp2_session *session; in test_nghttp2_session_create_idle_stream() local
10226 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_create_idle_stream()
10228 stream2 = open_sent_stream(session, 2); in test_nghttp2_session_create_idle_stream()
10232 rv = nghttp2_session_create_idle_stream(session, 4, &pri_spec); in test_nghttp2_session_create_idle_stream()
10236 stream4 = nghttp2_session_get_stream_raw(session, 4); in test_nghttp2_session_create_idle_stream()
10247 rv = nghttp2_session_create_idle_stream(session, 8, &pri_spec); in test_nghttp2_session_create_idle_stream()
10251 stream8 = nghttp2_session_get_stream_raw(session, 8); in test_nghttp2_session_create_idle_stream()
10252 stream10 = nghttp2_session_get_stream_raw(session, 10); in test_nghttp2_session_create_idle_stream()
10259 CU_ASSERT(&session->root == stream10->dep_prev); in test_nghttp2_session_create_idle_stream()
10263 rv = nghttp2_session_create_idle_stream(session, 4, &pri_spec); in test_nghttp2_session_create_idle_stream()
10270 rv = nghttp2_session_create_idle_stream(session, 6, &pri_spec); in test_nghttp2_session_create_idle_stream()
10274 rv = nghttp2_session_create_idle_stream(session, 0, &pri_spec); in test_nghttp2_session_create_idle_stream()
10278 session->last_sent_stream_id = 20; in test_nghttp2_session_create_idle_stream()
10281 rv = nghttp2_session_create_idle_stream(session, 18, &pri_spec); in test_nghttp2_session_create_idle_stream()
10285 nghttp2_session_del(session); in test_nghttp2_session_create_idle_stream()
10288 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_create_idle_stream()
10292 rv = nghttp2_session_create_idle_stream(session, 2, &pri_spec); in test_nghttp2_session_create_idle_stream()
10296 stream4 = nghttp2_session_get_stream_raw(session, 4); in test_nghttp2_session_create_idle_stream()
10297 stream2 = nghttp2_session_get_stream_raw(session, 2); in test_nghttp2_session_create_idle_stream()
10301 CU_ASSERT(&session->root == stream4->dep_prev); in test_nghttp2_session_create_idle_stream()
10306 nghttp2_session_del(session); in test_nghttp2_session_create_idle_stream()
10310 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_create_idle_stream()
10312 session->local_settings.max_concurrent_streams = 30; in test_nghttp2_session_create_idle_stream()
10316 rv = nghttp2_session_create_idle_stream(session, i * 2 + 1, &pri_spec); in test_nghttp2_session_create_idle_stream()
10323 CU_ASSERT(100 == session->num_idle_streams); in test_nghttp2_session_create_idle_stream()
10324 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_create_idle_stream()
10325 CU_ASSERT(30 == session->num_idle_streams); in test_nghttp2_session_create_idle_stream()
10326 CU_ASSERT(141 == session->idle_stream_head->stream_id); in test_nghttp2_session_create_idle_stream()
10328 nghttp2_session_del(session); in test_nghttp2_session_create_idle_stream()
10332 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_create_idle_stream()
10334 session->local_settings.max_concurrent_streams = 30; in test_nghttp2_session_create_idle_stream()
10338 rv = nghttp2_session_create_idle_stream(session, i * 2 + 1, &pri_spec); in test_nghttp2_session_create_idle_stream()
10345 CU_ASSERT(100 == session->num_idle_streams); in test_nghttp2_session_create_idle_stream()
10346 CU_ASSERT(0 == nghttp2_session_mem_recv(session, NULL, 0)); in test_nghttp2_session_create_idle_stream()
10347 CU_ASSERT(30 == session->num_idle_streams); in test_nghttp2_session_create_idle_stream()
10348 CU_ASSERT(141 == session->idle_stream_head->stream_id); in test_nghttp2_session_create_idle_stream()
10350 nghttp2_session_del(session); in test_nghttp2_session_create_idle_stream()
10354 nghttp2_session *session; in test_nghttp2_session_repeated_priority_change() local
10363 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_repeated_priority_change()
10365 session->local_settings.max_concurrent_streams = (uint32_t)max_streams; in test_nghttp2_session_repeated_priority_change()
10371 CU_ASSERT(0 == nghttp2_session_on_priority_received(session, &frame)); in test_nghttp2_session_repeated_priority_change()
10382 CU_ASSERT(0 == nghttp2_session_on_priority_received(session, &frame)); in test_nghttp2_session_repeated_priority_change()
10387 CU_ASSERT(20 == session->num_idle_streams); in test_nghttp2_session_repeated_priority_change()
10388 CU_ASSERT(1 == session->idle_stream_head->stream_id); in test_nghttp2_session_repeated_priority_change()
10394 CU_ASSERT(0 == nghttp2_session_on_priority_received(session, &frame)); in test_nghttp2_session_repeated_priority_change()
10398 CU_ASSERT(20 == session->num_idle_streams); in test_nghttp2_session_repeated_priority_change()
10399 CU_ASSERT(3 == session->idle_stream_head->stream_id); in test_nghttp2_session_repeated_priority_change()
10401 nghttp2_session_del(session); in test_nghttp2_session_repeated_priority_change()
10405 nghttp2_session *session; in test_nghttp2_session_repeated_priority_submission() local
10415 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_repeated_priority_submission()
10417 session->local_settings.max_concurrent_streams = max_streams; in test_nghttp2_session_repeated_priority_submission()
10423 nghttp2_submit_priority(session, NGHTTP2_FLAG_NONE, 1, &pri_spec)); in test_nghttp2_session_repeated_priority_submission()
10432 0 == nghttp2_submit_priority(session, NGHTTP2_FLAG_NONE, 1, &pri_spec)); in test_nghttp2_session_repeated_priority_submission()
10435 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_repeated_priority_submission()
10436 CU_ASSERT(max_streams == session->num_idle_streams); in test_nghttp2_session_repeated_priority_submission()
10437 CU_ASSERT(1 == session->idle_stream_head->stream_id); in test_nghttp2_session_repeated_priority_submission()
10443 nghttp2_submit_priority(session, NGHTTP2_FLAG_NONE, 1, &pri_spec)); in test_nghttp2_session_repeated_priority_submission()
10445 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_repeated_priority_submission()
10446 CU_ASSERT(max_streams == session->num_idle_streams); in test_nghttp2_session_repeated_priority_submission()
10447 CU_ASSERT(3 == session->idle_stream_head->stream_id); in test_nghttp2_session_repeated_priority_submission()
10449 nghttp2_session_del(session); in test_nghttp2_session_repeated_priority_submission()
10453 nghttp2_session *session; in test_nghttp2_session_set_local_window_size() local
10461 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_set_local_window_size()
10462 stream = open_sent_stream(session, 1); in test_nghttp2_session_set_local_window_size()
10466 session, NGHTTP2_FLAG_NONE, 1, 65536)); in test_nghttp2_session_set_local_window_size()
10471 nghttp2_session_get_stream_local_window_size(session, 1)); in test_nghttp2_session_set_local_window_size()
10473 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_set_local_window_size()
10479 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_set_local_window_size()
10483 session, NGHTTP2_FLAG_NONE, 1, 32768)); in test_nghttp2_session_set_local_window_size()
10488 nghttp2_session_get_stream_local_window_size(session, 1)); in test_nghttp2_session_set_local_window_size()
10490 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_set_local_window_size()
10496 session, NGHTTP2_FLAG_NONE, 1, 49152)); in test_nghttp2_session_set_local_window_size()
10501 nghttp2_session_get_stream_local_window_size(session, 1)); in test_nghttp2_session_set_local_window_size()
10502 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_session_set_local_window_size()
10506 session, NGHTTP2_FLAG_NONE, 1, 65537)); in test_nghttp2_session_set_local_window_size()
10511 nghttp2_session_get_stream_local_window_size(session, 1)); in test_nghttp2_session_set_local_window_size()
10513 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_set_local_window_size()
10517 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_set_local_window_size()
10520 session->recv_window_size = 4096; in test_nghttp2_session_set_local_window_size()
10522 session, NGHTTP2_FLAG_NONE, 0, 65536)); in test_nghttp2_session_set_local_window_size()
10524 session->local_window_size); in test_nghttp2_session_set_local_window_size()
10525 CU_ASSERT(4096 == session->recv_window_size); in test_nghttp2_session_set_local_window_size()
10526 CU_ASSERT(65536 - 4096 == nghttp2_session_get_local_window_size(session)); in test_nghttp2_session_set_local_window_size()
10528 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_set_local_window_size()
10534 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_set_local_window_size()
10538 session, NGHTTP2_FLAG_NONE, 0, 32768)); in test_nghttp2_session_set_local_window_size()
10539 CU_ASSERT(32768 == session->local_window_size); in test_nghttp2_session_set_local_window_size()
10540 CU_ASSERT(-28672 == session->recv_window_size); in test_nghttp2_session_set_local_window_size()
10541 CU_ASSERT(32768 == session->recv_reduction); in test_nghttp2_session_set_local_window_size()
10542 CU_ASSERT(65536 - 4096 == nghttp2_session_get_local_window_size(session)); in test_nghttp2_session_set_local_window_size()
10544 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_set_local_window_size()
10550 session, NGHTTP2_FLAG_NONE, 0, 49152)); in test_nghttp2_session_set_local_window_size()
10551 CU_ASSERT(49152 == session->local_window_size); in test_nghttp2_session_set_local_window_size()
10552 CU_ASSERT(-12288 == session->recv_window_size); in test_nghttp2_session_set_local_window_size()
10553 CU_ASSERT(16384 == session->recv_reduction); in test_nghttp2_session_set_local_window_size()
10554 CU_ASSERT(65536 - 4096 == nghttp2_session_get_local_window_size(session)); in test_nghttp2_session_set_local_window_size()
10555 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_session_set_local_window_size()
10559 session, NGHTTP2_FLAG_NONE, 0, 65537)); in test_nghttp2_session_set_local_window_size()
10560 CU_ASSERT(65537 == session->local_window_size); in test_nghttp2_session_set_local_window_size()
10561 CU_ASSERT(4096 == session->recv_window_size); in test_nghttp2_session_set_local_window_size()
10562 CU_ASSERT(0 == session->recv_reduction); in test_nghttp2_session_set_local_window_size()
10563 CU_ASSERT(65537 - 4096 == nghttp2_session_get_local_window_size(session)); in test_nghttp2_session_set_local_window_size()
10565 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_set_local_window_size()
10569 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_set_local_window_size()
10571 nghttp2_session_del(session); in test_nghttp2_session_set_local_window_size()
10575 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_set_local_window_size()
10576 stream = open_sent_stream(session, 1); in test_nghttp2_session_set_local_window_size()
10580 session, NGHTTP2_FLAG_NONE, 1, 0)); in test_nghttp2_session_set_local_window_size()
10582 CU_ASSERT(0 == nghttp2_session_get_stream_local_window_size(session, 1)); in test_nghttp2_session_set_local_window_size()
10586 nghttp2_session_set_local_window_size(session, NGHTTP2_FLAG_NONE, 1, in test_nghttp2_session_set_local_window_size()
10590 nghttp2_session_get_stream_local_window_size(session, 1)); in test_nghttp2_session_set_local_window_size()
10592 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_set_local_window_size()
10599 nghttp2_session_del(session); in test_nghttp2_session_set_local_window_size()
10604 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_set_local_window_size()
10605 session->recv_window_size = NGHTTP2_INITIAL_WINDOW_SIZE; in test_nghttp2_session_set_local_window_size()
10608 session, NGHTTP2_FLAG_NONE, 0, 0)); in test_nghttp2_session_set_local_window_size()
10609 CU_ASSERT(0 == session->recv_window_size); in test_nghttp2_session_set_local_window_size()
10610 CU_ASSERT(0 == nghttp2_session_get_local_window_size(session)); in test_nghttp2_session_set_local_window_size()
10614 nghttp2_session_set_local_window_size(session, NGHTTP2_FLAG_NONE, 0, in test_nghttp2_session_set_local_window_size()
10616 CU_ASSERT(0 == session->recv_window_size); in test_nghttp2_session_set_local_window_size()
10618 nghttp2_session_get_local_window_size(session)); in test_nghttp2_session_set_local_window_size()
10620 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_set_local_window_size()
10627 nghttp2_session_del(session); in test_nghttp2_session_set_local_window_size()
10632 nghttp2_session *session; in test_nghttp2_session_cancel_from_before_frame_send() local
10646 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_session_cancel_from_before_frame_send()
10651 rv = nghttp2_submit_settings(session, NGHTTP2_FLAG_NONE, &iv, 1); in test_nghttp2_session_cancel_from_before_frame_send()
10659 rv = nghttp2_session_send(session); in test_nghttp2_session_cancel_from_before_frame_send()
10669 stream_id = nghttp2_submit_request(session, NULL, reqnv, ARRLEN(reqnv), in test_nghttp2_session_cancel_from_before_frame_send()
10678 rv = nghttp2_session_send(session); in test_nghttp2_session_cancel_from_before_frame_send()
10685 stream = nghttp2_session_get_stream_raw(session, stream_id); in test_nghttp2_session_cancel_from_before_frame_send()
10689 nghttp2_session_del(session); in test_nghttp2_session_cancel_from_before_frame_send()
10691 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_cancel_from_before_frame_send()
10693 open_recv_stream(session, 1); in test_nghttp2_session_cancel_from_before_frame_send()
10695 stream_id = nghttp2_submit_push_promise(session, NGHTTP2_FLAG_NONE, 1, reqnv, in test_nghttp2_session_cancel_from_before_frame_send()
10704 rv = nghttp2_session_send(session); in test_nghttp2_session_cancel_from_before_frame_send()
10711 stream = nghttp2_session_get_stream_raw(session, stream_id); in test_nghttp2_session_cancel_from_before_frame_send()
10715 nghttp2_session_del(session); in test_nghttp2_session_cancel_from_before_frame_send()
10719 nghttp2_session *session; in test_nghttp2_session_too_many_settings() local
10741 nghttp2_session_client_new2(&session, &callbacks, &ud, option); in test_nghttp2_session_too_many_settings()
10743 CU_ASSERT(1 == session->max_settings); in test_nghttp2_session_too_many_settings()
10768 rv = nghttp2_session_mem_recv(session, buf->pos, nghttp2_buf_len(buf)); in test_nghttp2_session_too_many_settings()
10771 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_too_many_settings()
10776 nghttp2_session_del(session); in test_nghttp2_session_too_many_settings()
10780 prepare_session_removed_closed_stream(nghttp2_session *session, in prepare_session_removed_closed_stream() argument
10798 rv = nghttp2_submit_settings(session, NGHTTP2_FLAG_NONE, &iv, 1); in prepare_session_removed_closed_stream()
10802 rv = nghttp2_session_send(session); in prepare_session_removed_closed_stream()
10813 nread = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in prepare_session_removed_closed_stream()
10821 nghttp2_session_close_stream(session, 3, NGHTTP2_NO_ERROR); in prepare_session_removed_closed_stream()
10830 nread = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in prepare_session_removed_closed_stream()
10835 stream = nghttp2_session_get_stream_raw(session, 3); in prepare_session_removed_closed_stream()
10849 nread = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in prepare_session_removed_closed_stream()
10853 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in prepare_session_removed_closed_stream()
10860 nread = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in prepare_session_removed_closed_stream()
10864 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in prepare_session_removed_closed_stream()
10872 nread = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in prepare_session_removed_closed_stream()
10881 nghttp2_session *session; in test_nghttp2_session_removed_closed_stream() local
10899 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_removed_closed_stream()
10906 prepare_session_removed_closed_stream(session, &deflater); in test_nghttp2_session_removed_closed_stream()
10918 nread = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_removed_closed_stream()
10923 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_removed_closed_stream()
10928 nghttp2_session_del(session); in test_nghttp2_session_removed_closed_stream()
10930 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_session_removed_closed_stream()
10934 prepare_session_removed_closed_stream(session, &deflater); in test_nghttp2_session_removed_closed_stream()
10941 nread = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_session_removed_closed_stream()
10946 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_session_removed_closed_stream()
10951 nghttp2_session_del(session); in test_nghttp2_session_removed_closed_stream()
10957 nghttp2_session *session, int32_t stream_id, uint8_t *buf, size_t len, in pause_once_data_source_read_callback() argument
10965 return fixed_length_data_source_read_callback(session, stream_id, buf, len, in pause_once_data_source_read_callback()
10970 nghttp2_session *session; in test_nghttp2_session_pause_data() local
10982 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_session_pause_data()
10984 open_recv_stream(session, 1); in test_nghttp2_session_pause_data()
10987 0 == nghttp2_submit_data(session, NGHTTP2_FLAG_END_STREAM, 1, &data_prd)); in test_nghttp2_session_pause_data()
10992 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_pause_data()
10994 CU_ASSERT(NULL == session->aob.item); in test_nghttp2_session_pause_data()
10995 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_session_pause_data()
10998 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_session_pause_data()
11000 nghttp2_session_del(session); in test_nghttp2_session_pause_data()
11004 nghttp2_session *session; in test_nghttp2_session_no_closed_streams() local
11013 nghttp2_session_server_new2(&session, &callbacks, NULL, option); in test_nghttp2_session_no_closed_streams()
11015 open_recv_stream(session, 1); in test_nghttp2_session_no_closed_streams()
11017 nghttp2_session_close_stream(session, 1, NGHTTP2_NO_ERROR); in test_nghttp2_session_no_closed_streams()
11019 CU_ASSERT(0 == session->num_closed_streams); in test_nghttp2_session_no_closed_streams()
11021 nghttp2_session_del(session); in test_nghttp2_session_no_closed_streams()
11026 nghttp2_session *session; in test_nghttp2_session_set_stream_user_data() local
11036 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_session_set_stream_user_data()
11038 stream_id = nghttp2_submit_request(session, NULL, reqnv, ARRLEN(reqnv), NULL, in test_nghttp2_session_set_stream_user_data()
11041 rv = nghttp2_session_set_stream_user_data(session, stream_id, &user_data2); in test_nghttp2_session_set_stream_user_data()
11045 datalen = nghttp2_session_mem_send(session, &datap); in test_nghttp2_session_set_stream_user_data()
11050 nghttp2_session_get_stream_user_data(session, stream_id)); in test_nghttp2_session_set_stream_user_data()
11053 nghttp2_session_set_stream_user_data(session, 2, NULL)); in test_nghttp2_session_set_stream_user_data()
11055 nghttp2_session_del(session); in test_nghttp2_session_set_stream_user_data()
11059 nghttp2_session *session, nghttp2_hd_deflater *deflater, int32_t stream_id, in check_nghttp2_http_recv_headers_fail() argument
11070 ud = session->user_data; in check_nghttp2_http_recv_headers_fail()
11073 if (nghttp2_session_is_my_stream_id(session, stream_id)) { in check_nghttp2_http_recv_headers_fail()
11074 open_sent_stream2(session, stream_id, (nghttp2_stream_state)stream_state); in check_nghttp2_http_recv_headers_fail()
11076 open_recv_stream2(session, stream_id, (nghttp2_stream_state)stream_state); in check_nghttp2_http_recv_headers_fail()
11086 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in check_nghttp2_http_recv_headers_fail()
11091 item = nghttp2_session_get_next_ob_item(session); in check_nghttp2_http_recv_headers_fail()
11096 CU_ASSERT(0 == nghttp2_session_send(session)); in check_nghttp2_http_recv_headers_fail()
11102 nghttp2_session *session, nghttp2_hd_deflater *deflater, int32_t stream_id, in check_nghttp2_http_recv_headers_ok() argument
11112 ud = session->user_data; in check_nghttp2_http_recv_headers_ok()
11115 if (nghttp2_session_is_my_stream_id(session, stream_id)) { in check_nghttp2_http_recv_headers_ok()
11116 open_sent_stream2(session, stream_id, (nghttp2_stream_state)stream_state); in check_nghttp2_http_recv_headers_ok()
11118 open_recv_stream2(session, stream_id, (nghttp2_stream_state)stream_state); in check_nghttp2_http_recv_headers_ok()
11128 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in check_nghttp2_http_recv_headers_ok()
11132 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in check_nghttp2_http_recv_headers_ok()
11139 nghttp2_session *session; in test_nghttp2_http_mandatory_headers() local
11238 nghttp2_session_client_new(&session, &callbacks, &ud); in test_nghttp2_http_mandatory_headers()
11243 check_nghttp2_http_recv_headers_fail(session, &deflater, 1, in test_nghttp2_http_mandatory_headers()
11248 check_nghttp2_http_recv_headers_fail(session, &deflater, 3, in test_nghttp2_http_mandatory_headers()
11253 check_nghttp2_http_recv_headers_fail(session, &deflater, 5, in test_nghttp2_http_mandatory_headers()
11258 check_nghttp2_http_recv_headers_fail(session, &deflater, 7, in test_nghttp2_http_mandatory_headers()
11263 check_nghttp2_http_recv_headers_fail(session, &deflater, 9, in test_nghttp2_http_mandatory_headers()
11268 check_nghttp2_http_recv_headers_fail(session, &deflater, 11, in test_nghttp2_http_mandatory_headers()
11273 check_nghttp2_http_recv_headers_fail(session, &deflater, 13, in test_nghttp2_http_mandatory_headers()
11278 check_nghttp2_http_recv_headers_fail(session, &deflater, 15, in test_nghttp2_http_mandatory_headers()
11283 check_nghttp2_http_recv_headers_fail(session, &deflater, 17, in test_nghttp2_http_mandatory_headers()
11288 check_nghttp2_http_recv_headers_ok(session, &deflater, 19, in test_nghttp2_http_mandatory_headers()
11295 session, &deflater, 21, NGHTTP2_STREAM_OPENING, clnonzero204_resnv, in test_nghttp2_http_mandatory_headers()
11300 check_nghttp2_http_recv_headers_fail(session, &deflater, 23, in test_nghttp2_http_mandatory_headers()
11306 nghttp2_session_del(session); in test_nghttp2_http_mandatory_headers()
11309 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_http_mandatory_headers()
11314 check_nghttp2_http_recv_headers_fail(session, &deflater, 1, -1, nopath_reqnv, in test_nghttp2_http_mandatory_headers()
11318 check_nghttp2_http_recv_headers_fail(session, &deflater, 3, -1, in test_nghttp2_http_mandatory_headers()
11324 session, &deflater, 5, -1, lateconnect_reqnv, ARRLEN(lateconnect_reqnv)); in test_nghttp2_http_mandatory_headers()
11327 check_nghttp2_http_recv_headers_fail(session, &deflater, 7, -1, duppath_reqnv, in test_nghttp2_http_mandatory_headers()
11331 check_nghttp2_http_recv_headers_fail(session, &deflater, 9, -1, badcl_reqnv, in test_nghttp2_http_mandatory_headers()
11335 check_nghttp2_http_recv_headers_fail(session, &deflater, 11, -1, dupcl_reqnv, in test_nghttp2_http_mandatory_headers()
11339 check_nghttp2_http_recv_headers_fail(session, &deflater, 13, -1, badhd_reqnv, in test_nghttp2_http_mandatory_headers()
11344 check_nghttp2_http_recv_headers_fail(session, &deflater, 15, -1, in test_nghttp2_http_mandatory_headers()
11350 check_nghttp2_http_recv_headers_fail(session, &deflater, 17, -1, in test_nghttp2_http_mandatory_headers()
11355 check_nghttp2_http_recv_headers_fail(session, &deflater, 19, -1, in test_nghttp2_http_mandatory_headers()
11361 check_nghttp2_http_recv_headers_fail(session, &deflater, 21, -1, in test_nghttp2_http_mandatory_headers()
11367 check_nghttp2_http_recv_headers_ok(session, &deflater, 23, -1, in test_nghttp2_http_mandatory_headers()
11373 check_nghttp2_http_recv_headers_ok(session, &deflater, 25, -1, in test_nghttp2_http_mandatory_headers()
11379 check_nghttp2_http_recv_headers_fail(session, &deflater, 27, -1, in test_nghttp2_http_mandatory_headers()
11385 nghttp2_session_del(session); in test_nghttp2_http_mandatory_headers()
11388 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_http_mandatory_headers()
11390 session->pending_enable_connect_protocol = 1; in test_nghttp2_http_mandatory_headers()
11396 check_nghttp2_http_recv_headers_ok(session, &deflater, 1, -1, in test_nghttp2_http_mandatory_headers()
11401 check_nghttp2_http_recv_headers_fail(session, &deflater, 3, -1, in test_nghttp2_http_mandatory_headers()
11406 check_nghttp2_http_recv_headers_fail(session, &deflater, 5, -1, in test_nghttp2_http_mandatory_headers()
11411 check_nghttp2_http_recv_headers_fail(session, &deflater, 7, -1, in test_nghttp2_http_mandatory_headers()
11417 check_nghttp2_http_recv_headers_ok(session, &deflater, 9, -1, in test_nghttp2_http_mandatory_headers()
11423 nghttp2_session_del(session); in test_nghttp2_http_mandatory_headers()
11427 nghttp2_session *session; in test_nghttp2_http_content_length() local
11448 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_http_content_length()
11452 stream = open_sent_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_http_content_length()
11458 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_content_length()
11462 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_http_content_length()
11468 nghttp2_session_del(session); in test_nghttp2_http_content_length()
11473 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_http_content_length()
11481 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_content_length()
11486 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_http_content_length()
11488 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_http_content_length()
11493 nghttp2_session_del(session); in test_nghttp2_http_content_length()
11499 nghttp2_session *session; in test_nghttp2_http_content_length_mismatch() local
11520 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_http_content_length_mismatch()
11530 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_content_length_mismatch()
11535 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_content_length_mismatch()
11538 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_content_length_mismatch()
11551 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_content_length_mismatch()
11556 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_content_length_mismatch()
11559 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_content_length_mismatch()
11572 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_content_length_mismatch()
11577 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_content_length_mismatch()
11580 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_content_length_mismatch()
11586 nghttp2_session_del(session); in test_nghttp2_http_content_length_mismatch()
11589 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_http_content_length_mismatch()
11594 nghttp2_submit_request(session, NULL, reqnv, ARRLEN(reqnv), NULL, NULL); in test_nghttp2_http_content_length_mismatch()
11596 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_content_length_mismatch()
11603 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_content_length_mismatch()
11608 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_content_length_mismatch()
11611 CU_ASSERT(NULL != nghttp2_session_get_stream(session, 1)); in test_nghttp2_http_content_length_mismatch()
11612 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_content_length_mismatch()
11614 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 1)); in test_nghttp2_http_content_length_mismatch()
11619 nghttp2_submit_request(session, NULL, reqnv, ARRLEN(reqnv), NULL, NULL); in test_nghttp2_http_content_length_mismatch()
11621 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_content_length_mismatch()
11631 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_content_length_mismatch()
11636 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_content_length_mismatch()
11639 CU_ASSERT(NULL != nghttp2_session_get_stream(session, 3)); in test_nghttp2_http_content_length_mismatch()
11640 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_content_length_mismatch()
11642 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 3)); in test_nghttp2_http_content_length_mismatch()
11647 nghttp2_submit_request(session, NULL, reqnv, ARRLEN(reqnv), NULL, NULL); in test_nghttp2_http_content_length_mismatch()
11649 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_content_length_mismatch()
11659 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_content_length_mismatch()
11664 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_content_length_mismatch()
11667 CU_ASSERT(NULL != nghttp2_session_get_stream(session, 5)); in test_nghttp2_http_content_length_mismatch()
11668 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_content_length_mismatch()
11670 CU_ASSERT(NULL == nghttp2_session_get_stream(session, 5)); in test_nghttp2_http_content_length_mismatch()
11678 nghttp2_session_del(session); in test_nghttp2_http_content_length_mismatch()
11682 nghttp2_session *session; in test_nghttp2_http_non_final_response() local
11700 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_http_non_final_response()
11705 open_sent_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_http_non_final_response()
11712 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_non_final_response()
11717 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_non_final_response()
11720 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_non_final_response()
11725 open_sent_stream2(session, 3, NGHTTP2_STREAM_OPENING); in test_nghttp2_http_non_final_response()
11735 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_non_final_response()
11740 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_non_final_response()
11743 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_non_final_response()
11749 open_sent_stream2(session, 5, NGHTTP2_STREAM_OPENING); in test_nghttp2_http_non_final_response()
11759 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_non_final_response()
11764 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_http_non_final_response()
11770 open_sent_stream2(session, 7, NGHTTP2_STREAM_OPENING); in test_nghttp2_http_non_final_response()
11780 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_non_final_response()
11785 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_non_final_response()
11789 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_non_final_response()
11794 open_sent_stream2(session, 9, NGHTTP2_STREAM_OPENING); in test_nghttp2_http_non_final_response()
11800 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_non_final_response()
11811 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_non_final_response()
11816 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_http_non_final_response()
11822 nghttp2_session_del(session); in test_nghttp2_http_non_final_response()
11828 nghttp2_session *session; in test_nghttp2_http_trailer_headers() local
11845 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_http_trailer_headers()
11854 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_trailer_headers()
11866 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_trailer_headers()
11871 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_http_trailer_headers()
11880 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_trailer_headers()
11891 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_trailer_headers()
11896 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_trailer_headers()
11900 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_trailer_headers()
11909 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_trailer_headers()
11920 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_trailer_headers()
11925 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_trailer_headers()
11929 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_trailer_headers()
11935 nghttp2_session_del(session); in test_nghttp2_http_trailer_headers()
11941 nghttp2_session *session; in test_nghttp2_http_ignore_regular_header() local
11970 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_http_ignore_regular_header()
11984 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos + proclen, in test_nghttp2_http_ignore_regular_header()
11991 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos + proclen, in test_nghttp2_http_ignore_regular_header()
11996 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_ignore_regular_header()
12004 nghttp2_session_del(session); in test_nghttp2_http_ignore_regular_header()
12009 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_http_ignore_regular_header()
12016 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos + proclen, in test_nghttp2_http_ignore_regular_header()
12025 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos + proclen, in test_nghttp2_http_ignore_regular_header()
12034 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos + proclen, in test_nghttp2_http_ignore_regular_header()
12040 nghttp2_session_del(session); in test_nghttp2_http_ignore_regular_header()
12047 nghttp2_session_server_new(&session, &callbacks, &ud); in test_nghttp2_http_ignore_regular_header()
12049 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_ignore_regular_header()
12054 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_ignore_regular_header()
12059 nghttp2_session_del(session); in test_nghttp2_http_ignore_regular_header()
12064 nghttp2_session *session; in test_nghttp2_http_ignore_content_length() local
12085 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_http_ignore_content_length()
12090 open_sent_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_http_ignore_content_length()
12097 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_ignore_content_length()
12102 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_http_ignore_content_length()
12107 stream = open_sent_stream2(session, 3, NGHTTP2_STREAM_OPENING); in test_nghttp2_http_ignore_content_length()
12114 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_ignore_content_length()
12119 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_http_ignore_content_length()
12125 nghttp2_session_del(session); in test_nghttp2_http_ignore_content_length()
12128 nghttp2_session_server_new(&session, &callbacks, NULL); in test_nghttp2_http_ignore_content_length()
12137 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_ignore_content_length()
12142 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_http_ignore_content_length()
12144 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_http_ignore_content_length()
12150 nghttp2_session_del(session); in test_nghttp2_http_ignore_content_length()
12155 nghttp2_session *session; in test_nghttp2_http_record_request_method() local
12174 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_http_record_request_method()
12178 CU_ASSERT(1 == nghttp2_submit_request(session, NULL, conn_reqnv, in test_nghttp2_http_record_request_method()
12181 CU_ASSERT(0 == nghttp2_session_send(session)); in test_nghttp2_http_record_request_method()
12183 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_http_record_request_method()
12191 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_record_request_method()
12200 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_record_request_method()
12205 nghttp2_session_del(session); in test_nghttp2_http_record_request_method()
12210 nghttp2_session *session; in test_nghttp2_http_push_promise() local
12227 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_http_push_promise()
12231 open_sent_stream2(session, 1, NGHTTP2_STREAM_OPENING); in test_nghttp2_http_push_promise()
12237 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_push_promise()
12242 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_http_push_promise()
12244 stream = nghttp2_session_get_stream(session, 2); in test_nghttp2_http_push_promise()
12254 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_push_promise()
12259 CU_ASSERT(NULL == nghttp2_session_get_next_ob_item(session)); in test_nghttp2_http_push_promise()
12271 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_push_promise()
12276 item = nghttp2_session_get_next_ob_item(session); in test_nghttp2_http_push_promise()
12284 nghttp2_session_del(session); in test_nghttp2_http_push_promise()
12289 nghttp2_session *session; in test_nghttp2_http_head_method_upgrade_workaround() local
12305 nghttp2_session_client_new(&session, &callbacks, NULL); in test_nghttp2_http_head_method_upgrade_workaround()
12309 nghttp2_session_upgrade(session, NULL, 0, NULL); in test_nghttp2_http_head_method_upgrade_workaround()
12316 rv = nghttp2_session_mem_recv(session, bufs.head->buf.pos, in test_nghttp2_http_head_method_upgrade_workaround()
12321 stream = nghttp2_session_get_stream(session, 1); in test_nghttp2_http_head_method_upgrade_workaround()
12326 nghttp2_session_del(session); in test_nghttp2_http_head_method_upgrade_workaround()