fzerorubigd
f619c854a0
wait for unfinished jobs and close all accepts
2015-05-16 00:53:20 +04:30
Chen Yufei
9162aae88a
Sleep on error in accept loop.
...
Avoid flood of error logs upon too many open file error on Linux.
2014-07-22 23:44:31 +08:00
Chen Yufei
edea3583d4
New load balance strategy: latency.
...
Select proxy with lowest connection latency.
2014-07-09 10:54:16 +08:00
Chen Yufei
a4fa2816b6
Refactor proxy selection.
2014-07-09 10:54:16 +08:00
Chen Yufei
6d07c41901
Close idle upon too many open fd error.
2014-07-04 21:55:28 +08:00
fzerorubigd
47fa1101e1
add support for using proxy over custom http error code
2014-06-15 19:54:49 +04:30
Chen Yufei
7fe3c1d552
Reset server conn state after getting from pool.
2013-11-22 13:32:32 +08:00
Chen Yufei
cd21806791
Do not retry if there's no parent proxy.
2013-10-31 22:14:15 +08:00
Chen Yufei
2c90662986
Fix keeping cow connection alive.
2013-10-31 16:32:53 +08:00
Chen Yufei
5230bf0d6e
Fix using multiplexing connection for direct site.
2013-10-31 16:21:46 +08:00
Chen Yufei
c8216bc0df
Always keep cow connection alive for more reuse.
2013-10-31 11:34:49 +08:00
Chen Yufei
ecb3428826
Fix CONNECT bug.
2013-10-31 00:01:07 +08:00
Chen Yufei
4d3ca5bc58
cow chain server done.
2013-10-30 13:17:47 +08:00
Chen Yufei
cfc756f3cb
Refactor proxy server representation.
2013-10-26 00:57:59 +08:00
Chen Yufei
8639ef67a0
Small refactor for config parsing.
2013-10-07 00:02:11 +08:00
Chen Yufei
377fd4e392
Take as self request if URL path seem like getting PAC.
2013-08-22 21:00:42 +08:00
Chen Yufei
49b56b6538
Fix handling empty/no Host header.
2013-08-20 00:26:56 +08:00
Chen Yufei
fe42ffe0dc
Handle requests with no host in initial request line.
2013-08-20 00:19:41 +08:00
Chen Yufei
7de5e77b2f
Refactor (*Response).genStatusLine
2013-08-19 21:45:36 +08:00
Chen Yufei
97ccd5d762
Print server read error type in debug msg.
2013-08-19 17:42:02 +08:00
Chen Yufei
32716c048c
Cleanup handle server read error message printing.
2013-08-19 10:48:25 +08:00
Chen Yufei
77a746dd22
More error message when serving request to cow itself.
2013-08-19 10:34:50 +08:00
Chen Yufei
00b459ad0e
Comment about http buffer size.
2013-08-09 23:23:36 +08:00
Chen Yufei
b6e82fffa8
Revert "Consolidate connect&http parse buffer, reduce size to 4096."
...
This reverts commit a6c2d4fa04 .
There are sites using very long cookie, like www.fitbit.com. Limiting the buffer
size to 4096 will get buffer full error for those sites.
2013-08-09 09:47:28 +08:00
Chen Yufei
a6c2d4fa04
Consolidate connect&http parse buffer, reduce size to 4096.
2013-08-08 23:24:52 +08:00
Chen Yufei
8d1607486d
Print chunk size in debug log.
2013-08-08 22:08:55 +08:00
Chen Yufei
ebc48847ab
Use debug log for request retry message.
2013-08-08 13:13:12 +08:00
Chen Yufei
cc70911325
Use debug log for unset timeout error.
2013-08-08 13:10:34 +08:00
Chen Yufei
f2b4db6e3a
Use %#v to print malformed data.
2013-08-07 14:15:31 +08:00
Chen Yufei
13421e9b3e
Release buffer before putting server conn to pool.
...
This can save memory if the server conn is not going to be used soon.
2013-08-07 00:14:47 +08:00
Chen Yufei
ec0bace769
Extract (*Request).hasSent
2013-08-06 12:31:12 +08:00
Chen Yufei
9ccf4bf7be
Extrace (*serverConn).sendRequestBody
2013-08-06 11:06:30 +08:00
Chen Yufei
946a01efd1
Reorder send body function parameters.
2013-08-06 10:44:22 +08:00
Chen Yufei
6e36cfccd6
Add comment for (*serverWriter).Write
2013-08-06 01:06:15 +08:00
Chen Yufei
91f5d9cfbc
Skip request body before reading next upon errPageSent.
2013-08-06 01:06:15 +08:00
Chen Yufei
54946bfdc9
Extract (*Request).hasBody
2013-08-06 01:06:12 +08:00
Chen Yufei
862496fa12
Refactor sendBody.
2013-08-06 00:17:49 +08:00
Chen Yufei
d00fe35bb2
Suppress chunked extension error log in test.
2013-08-05 20:19:13 +08:00
Chen Yufei
1fb6fc4219
Use strict skipCRLF, revert to skipTrailer until find its actual use.
2013-08-05 15:40:12 +08:00
Chen Yufei
4af91eeca5
Print chunk extension if any.
2013-08-05 14:16:34 +08:00
Chen Yufei
080e113393
Refactor parent proxy connection type.
2013-08-05 14:16:09 +08:00
Chen Yufei
656540c904
Simplify error handling in readResponse(), remove errShouldClose.
2013-08-05 00:21:48 +08:00
Chen Yufei
691d364d00
Remove unnecessary "ing" in debug message.
2013-08-03 13:19:28 +08:00
Chen Yufei
9c2cee1782
Print version in startup info log.
2013-08-03 12:51:42 +08:00
Chen Yufei
b6fc2215d0
Increase dial/read timeout for sites with large direct count.
2013-08-02 21:35:07 +08:00
Chen Yufei
8b6822f8fd
Tweak debug message.
2013-08-02 19:56:15 +08:00
Chen Yufei
3497ca6fed
Close connection if authentication is required.
...
Fix malformed request problem. Request may have body, but COW does not
skip the body before reading the next request.
2013-08-02 19:29:16 +08:00
Chen Yufei
51344d0e82
Lower case for common error messages.
2013-08-02 11:03:04 +08:00
Chen Yufei
b4e5370a84
Report precise error message to client.
2013-08-02 10:47:07 +08:00
Chen Yufei
72fae5ca18
Skip possible trailers in chunked body.
2013-08-02 01:36:08 +08:00