*.修改帧处理方式

*.删除同一流中多ID遍历模式
*.添加函数指针数组管理不同帧回调
*.添加流处理打印
This commit is contained in:
fengweihao
2019-03-29 15:37:18 +08:00
committed by zhengchao
parent fcde7bfbf3
commit ad004b29a6
8 changed files with 1655 additions and 1236 deletions

View File

@@ -29,6 +29,7 @@ struct data_t
{
int gzip;
uint8_t flags;
ssize_t padlen;
struct z_stream_st *inflater;
struct z_stream_st *deflate;
struct evbuffer * evbuf_body;
@@ -42,6 +43,7 @@ struct header_data{
struct http2_headers{
int nvlen;
int complete;
uint8_t flag;
struct header_data *head, *tail;
};
@@ -59,6 +61,7 @@ struct http2_half_private
char * url_storage;
struct data_t body;
struct http2_headers headers;
struct http2_headers promised;
enum nghttp2_manage_stage body_state;
enum nghttp2_manage_stage message_state;
@@ -82,7 +85,10 @@ struct h2_stream_data_t{
int spd_set;
int spd_valid;
int rse_set;
int set_cnt;
int flag_end;
int spd_set_cnt;
int spd_cnt;
tfe_http_event spd_event;
struct http_frame_session_ctx *frame_ctx;
@@ -90,20 +96,16 @@ struct h2_stream_data_t{
struct http2_half_private *resp, *pangu_resp;
};
struct h2_run_id
{
int num;
int32_t id[128];
};
struct tfe_session_info_t
{
TAILQ_HEAD(list_head, h2_stream_data_t) list;
/* stream type**/
int state;
int goaway;
enum tfe_stream_action stream_action;
unsigned int thread_id;
struct h2_run_id h2_id;
/** for down stream as server */
nghttp2_session *as_server;
/** for up stream as client*/