初步调通HTTP重定向业务
* 增加HTTP Status标准化定义及辅助函数; * 增加HTTP解析层发送应答的功能 * 修正了Pangu HTTP实现导致段错误的一系列问题。
This commit is contained in:
@@ -50,22 +50,28 @@ struct http_half_private
|
||||
short major;
|
||||
short minor;
|
||||
|
||||
/* URI */
|
||||
struct evbuffer * evbuf_uri;
|
||||
char * url_storage;
|
||||
|
||||
/* Header Parser */
|
||||
struct evbuffer * evbuf_header_field;
|
||||
struct evbuffer * evbuf_header_value;
|
||||
bool is_evbuf_header_field_set;
|
||||
bool is_evbuf_header_value_set;
|
||||
|
||||
struct evbuffer * evbuf_body;
|
||||
|
||||
/* Status */
|
||||
enum hf_private_status body_status;
|
||||
enum hf_private_status message_status;
|
||||
|
||||
/* default stream action */
|
||||
enum tfe_stream_action stream_action;
|
||||
enum tfe_stream_action user_stream_action;
|
||||
|
||||
/* Setup by User */
|
||||
bool is_setup_by_user;
|
||||
struct evbuffer * evbuf_body;
|
||||
struct evbuffer * evbuf_raw;
|
||||
};
|
||||
|
||||
struct http_half_private * hf_private_create(tfe_http_direction ht_dir, short major, short minor);
|
||||
@@ -85,6 +91,7 @@ void hf_private_destory(struct http_half_private * hf_private);
|
||||
* -1 for error.
|
||||
*/
|
||||
int hf_private_parse(struct http_half_private * hf_private, const unsigned char * data, size_t len);
|
||||
void hf_private_construct(struct http_half_private * hf_private);
|
||||
|
||||
void hf_private_set_callback(struct http_half_private * hf_private, hf_private_cb * cb,
|
||||
void * user, void (* fn_user_deleter)(void *));
|
||||
@@ -96,6 +103,8 @@ struct http_session_private * hs_private_create(struct http_connection_private *
|
||||
|
||||
void hs_private_destory(struct http_session_private * hs_private);
|
||||
|
||||
|
||||
|
||||
void hs_private_hf_private_set(struct http_session_private * hs_private,
|
||||
struct http_half_private * hf, enum tfe_http_direction);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user