Commit Graph

62 Commits

Author SHA1 Message Date
Lu Qiuwen
4d326c5c52 Close #83 去掉resume()中的gc断言,当session在gc中resume时,立即返回等待session销毁。 2018-11-26 11:29:23 +08:00
Lu Qiuwen
691e1b83a1 #93 增加GZIP解压缩失败后Passthrough整个连接的功能 2018-11-26 10:58:10 +08:00
Lu Qiuwen
86884e807a #85 连接层与HTTP解析层Warning已消除。 2018-11-22 16:27:51 +08:00
Lu Qiuwen
fbff32673f Close #76 修正HTTP Upgrade后没有正确Detach该连接的问题
* 原实现没有正确处理Upgrade标志位,导致连接再次进入HTTP解析流程从而无法解析,报#76所列之问题。
* 现修正,亦增加#76所示日志之五元组信息。
2018-11-22 13:47:17 +08:00
zhengchao
67edf968f6 #86 修正在HTTP请求在Resume()操作后设置HTTP应答,没有丢弃原始HTTP请求的问题。
* 原实现在用户调用resume()后,没有将用户设置的user_stream_action传递到原始HTTP请求,导致该原始请求没有被丢弃,现修正。@luqiuwen
2018-11-20 16:46:15 +08:00
Lu Qiuwen
88e9eecf09 调整目录结构,增加RPM打包功能
* 调整目录结构,原conf目录分拆为conf和resource目录。其中,conf目录在软件更新时不会更新,resource则更新;
* 增加RPM打包功能,利用CI发布软件的RPM,对应调整GitLAB-CI脚本。
2018-11-16 20:59:49 +08:00
Lu Qiuwen
6bcd2cb9a6 Close #77 修正http_half_private结构体未完全释放的问题 2018-11-14 15:55:51 +08:00
Lu Qiuwen
4320971285 修正执行HTTP Pass-through动作时错误的assert 2018-11-08 19:13:52 +08:00
Lu Qiuwen
571f7cd12e Close #72 修正在HTTP-REQ/RESP-BEGIN事件执行detach动作时段错误。 2018-11-07 14:14:03 +08:00
Lu Qiuwen
2d02343b50 Close #65 修正进入GC队列的HTTP Session写日志时触发的连接非法段错误 2018-11-04 18:30:33 +08:00
Lu Qiuwen
b677d8ad0f 支持在应答侧suspend/resume功能,合并http_entry中处理request/response的流程 2018-10-28 20:13:17 +08:00
Lu Qiuwen
cf64f01f7f 修正suspend/resume语义实现的若干问题,增加自行构建request/response的header标志 2018-10-26 20:30:06 +08:00
Lu Qiuwen
0cd191b9e6 Close #60 修正POST请求无Content-Length字段时无法转发请求的问题
* 部分HTTP POST请求中无有Content-Length字段,导致无法确定请求的边界。
* 现修正为,当发现Content-Length字段缺失时,Passthrough整个TCP连接。
* TODO: 解析POST编码或回应411应答。
2018-10-25 16:47:19 +08:00
Lu Qiuwen
2cea50f48c 修正HTTP Early Answer功能在HTTP头部带有Body时的引发assert的问题。
* 原实现无法正确处理HTTP请求带有Body时,业务层执行Early Answer动作;
* 现修正为HTTP请求头完整时,检查是否需要Early-Answer。如果请求已经向真实服务器转发,则不执行Early-Answer动作。
2018-10-25 10:54:53 +08:00
Lu Qiuwen
f87e21d323 改进HTTP访问日志格式 2018-10-24 20:53:29 +08:00
Lu Qiuwen
62b8089166 Close #33 增加HTTP Upgrade透明转发的功能 2018-10-24 15:40:26 +08:00
Lu Qiuwen
bcfe14055f 增加HTTP Session延迟回收机制,完善HTTP Session销毁流程 2018-10-22 21:22:59 +08:00
Lu Qiuwen
0f31b948ba 增加test-addr的MESA_handle_logger依赖 2018-10-22 15:33:24 +08:00
zhengchao
c5f5ee2655 不cache包含Set-cookie的应答。修改多处日志细节。 2018-10-21 15:03:04 +08:00
zhengchao
8a0f3c8c3c http resume后应给tcp层返回当前数据的处理结果。 2018-10-19 18:01:53 +08:00
zhengchao
aa4629ca31 todo:http 写文件的bug。 2018-10-18 16:20:44 +08:00
Lu Qiuwen
26d537b67a 修正基于请求侧构建应答侧时的假设条件 2018-10-18 16:20:44 +08:00
Lu Qiuwen
cb6c522298 修正HTTP流式发送应答时,Content-Length填写错误的问题。 2018-10-18 13:44:17 +08:00
Lu Qiuwen
af9b36eecb 增加HTTP Early-Answer功能,用户在请求侧设置应答侧数据时,立即发送到线路。 2018-10-18 13:44:17 +08:00
zhengchao
00a0ec675a 修复忘记初始化tailq的bug 2018-10-16 21:30:52 +08:00
zhengchao
1723fa1029 大文件流式缓存联调通过。UNDEFINE类型100KB以上进行缓存。 2018-10-16 21:16:58 +08:00
Lu Qiuwen
37b4f3a644 修正由于HTTP流式构建应答时,由于真实应答晚于构建应答到达触发的问题
* 原实现在真实应答晚于构建应答到达时,仍然触发流式TCP写操作;
* 现修正为该情况时,直接发送完整的构建应答而不是流式写。
2018-10-16 20:01:25 +08:00
Lu Qiuwen
01ec332844 修正流式构建HTTP响应时,重新申请write_ctx的问题 2018-10-16 17:24:52 +08:00
zhengchao
f567fba70b 业务层适配HTTP流式写消息体的接口. 2018-10-16 16:51:15 +08:00
Lu Qiuwen
95c57fe8a5 在流式发送应答时,不使用GZIP压缩 2018-10-16 16:37:27 +08:00
Lu Qiuwen
2bc366fb13 增加HTTP流式构造Body的接口及实现并修正HTTP单元测试用例 2018-10-16 10:45:47 +08:00
Lu Qiuwen
e9c11824b0 STREAM挂起时记录挂起来源,在RESUME()触发对应连接方向的读事件。HTTP SUSPEND/RESUME功能初步调通 2018-10-14 20:29:52 +08:00
zhengchao
294201ecd8 缓存能跑起来了。 2018-10-14 18:45:02 +08:00
Lu Qiuwen
cb27db40f2 增加Cache-Control相关HTTP头部字段标准域定义 2018-10-14 14:32:25 +08:00
Lu Qiuwen
b8342e5358 #34 实现HTTP解析层的Suspend/Resume操作 2018-10-14 14:05:39 +08:00
zhengchao
7ac76efac2 downstream已支持session ticket。 2018-10-05 21:34:57 +08:00
Lu Qiuwen
3f4b7cbd90 修正构建HTTP应答时,同时填写Content-Length和Transfer-Encoding: Chunk报头,导致浏览器解析失败的问题。 2018-09-28 19:52:01 +08:00
Lu Qiuwen
6bce4104d8 修正HTTP应答构建时缺少Content-Encoding和Content-Length的缺陷。 2018-09-28 16:43:24 +08:00
Lu Qiuwen
20c55b74d8 集成GZIP压缩模块,支持对GZIP压缩的应答执行替换业务,并增加了单元测试用例。 2018-09-28 15:44:17 +08:00
Lu Qiuwen
a14b665f90 增加GZIP压缩功能及对应的单元测试 2018-09-28 15:44:17 +08:00
Lu Qiuwen
26e9e4b242 修正非GZIP压缩应答的Content-Encoding处置设置错误的问题。 2018-09-27 16:27:32 +08:00
Lu Qiuwen
512954ba9a 增加Chunk类型的应答报文解析的单元测试用例 2018-09-27 16:26:54 +08:00
Lu Qiuwen
f47603c178 在HttpParser中集成解压缩模块并编写对应的单元测试用例。 2018-09-27 15:12:18 +08:00
Lu Qiuwen
8a4f02fbb8 增加对GZIP压缩编码的解压缩功能及单元测试用例 2018-09-26 21:31:17 +08:00
Lu Qiuwen
c7eeda0fb1 修正HTTP用户覆盖应答设置后,原应答仍然转发的问题。 2018-09-26 16:00:28 +08:00
Lu Qiuwen
e1122bb4bd 修正HTTP解析层单元测试用例中对hf_private_parse()返回值断言错误的问题。 2018-09-26 10:10:52 +08:00
Lu Qiuwen
d0ab629f4c 初步调通HTTP请求头部内容替换业务 2018-09-25 20:32:24 +08:00
Lu Qiuwen
d2e4ce94c2 增加HTTP重定向业务发送应答体的功能支持,调通发送403, 404等告警页面的功能。 2018-09-25 11:15:00 +08:00
Lu Qiuwen
c2f0bde211 初步调通HTTP重定向业务
* 增加HTTP Status标准化定义及辅助函数;
* 增加HTTP解析层发送应答的功能
* 修正了Pangu HTTP实现导致段错误的一系列问题。
2018-09-25 10:17:50 +08:00
Lu Qiuwen
e128dba934 增加根据Host和URI拼接URL的功能 2018-09-23 20:01:11 +08:00