Tatsuhiro Tsujikawa
bcfa333322
nghttpx: Refactor h1 backend retry code
2016-12-25 22:19:51 +09:00
Tatsuhiro Tsujikawa
c4aeadd57d
nghttpx: Retry h1 backend request if first write fails
2016-12-25 22:19:51 +09:00
Tatsuhiro Tsujikawa
e6b4454e48
Merge branch 'nghttpx-better-early-final-response-handling'
2016-12-24 23:02:52 +09:00
Tatsuhiro Tsujikawa
3226d21609
Merge pull request #755 from nghttp2/nghttpx-h1-frontend-keep-alive-timeout
...
nghttpx: Add frontend-keep-alive-timeout option
2016-12-24 23:01:17 +09:00
Tatsuhiro Tsujikawa
3d20c2dce6
nghttpx: Feed read event rather than calling on_read
...
on_read may fail, but we failed to check its return value most of the
places. This is because failure means deletion of ClientHandler, but
because of architecture, we cannot delete it. Feeding read event is
better since we can move call on_read from libev callback. We can
delete ClientHandler form there.
2016-12-24 22:57:59 +09:00
Tatsuhiro Tsujikawa
cd83d70e7b
nghttpx: Don't reset stream if we have already received response
2016-12-24 22:54:22 +09:00
Tatsuhiro Tsujikawa
a0ce5ea9ab
nghttpx: Keep reading after backend write failed
...
Because of bidirectional nature of TCP, we may fail write(2), but have
still pending read in TCP buffer, which may contain response body. To
forward them, we should keep reading until get EOF from backend.
To avoid stalling HTTP/1 upload when request buffer is full, and we
have received complete response from backend, drop connection in that
case.
2016-12-24 22:50:02 +09:00
Tatsuhiro Tsujikawa
3c600c103f
nghttpx: Add frontend-keep-alive-timeout option
2016-12-23 11:01:29 +09:00
Tatsuhiro Tsujikawa
841ac75c3e
nghttpx: Clarify that backend-keep-alive-timeout applies to h1 only
2016-12-23 10:49:39 +09:00
Tatsuhiro Tsujikawa
80a96817aa
Add c-ares to android build guide
2016-12-21 23:47:34 +09:00
Tatsuhiro Tsujikawa
ecc05e0a1a
Add `git submodule` to required build step
2016-12-21 23:34:28 +09:00
Tatsuhiro Tsujikawa
359730af54
Fix regression in ff64f64e1d
2016-12-21 23:19:10 +09:00
Tatsuhiro Tsujikawa
e9cb19c80e
Merge branch 'nghttpx-new-errorlog-format'
2016-12-20 23:14:18 +09:00
Tatsuhiro Tsujikawa
049e064e28
nghttpx: New error log format
...
To debug multi threaded configuration easier, we added current PID and
thread ID to error log. Previously, we didn't add date and time if
log level is NOTICE. In this change, we always write date and time
regardless of log level.
2016-12-20 23:13:19 +09:00
Tatsuhiro Tsujikawa
0463928a1e
nghttpx: Fix uninitialized errors found by coverity scan
2016-12-18 22:16:52 +09:00
Tatsuhiro Tsujikawa
02d34c8c4c
nghttpx: Fix dead code found by coverity scan
2016-12-18 22:14:26 +09:00
Tatsuhiro Tsujikawa
46acf32c41
Merge pull request #748 from nghttp2/pkg-config-libxml2
...
Use pkg-config to detect libxml2
2016-12-18 00:46:22 +09:00
Tatsuhiro Tsujikawa
cab0a76795
Use pkg-config to detect libxml2
2016-12-18 00:20:30 +09:00
Tatsuhiro Tsujikawa
0c76cebbfc
Merge branch 'travis-make-distcheck'
2016-12-17 22:54:12 +09:00
Tatsuhiro Tsujikawa
5029b85b25
Add -f option to rm rst files not to pause travis build
2016-12-17 22:27:14 +09:00
Tatsuhiro Tsujikawa
0b71d9b828
travis: Do `make distcheck` for autotools build
2016-12-17 22:18:43 +09:00
Tatsuhiro Tsujikawa
464d7c4ec6
Update doc
2016-12-16 22:09:00 +09:00
Tatsuhiro Tsujikawa
ed21b631ae
Update doc
2016-12-16 21:31:26 +09:00
Tatsuhiro Tsujikawa
950e2d9954
Mention dynamic hostname lookup in nghttpx how-to
2016-12-16 21:30:13 +09:00
Tatsuhiro Tsujikawa
71c054a789
Merge pull request #745 from nghttp2/remove-tiny-nghttpd
...
examples: Delete tiny-nghttpd
2016-12-15 00:18:33 +09:00
Tatsuhiro Tsujikawa
d2f456e5b1
Remove tiny-nghttpd from cmake build system
2016-12-14 23:56:02 +09:00
Tatsuhiro Tsujikawa
30a44b26d3
examples: Delete tiny-nghttpd
...
nghttpd does the better job in this area.
2016-12-14 23:26:52 +09:00
Tatsuhiro Tsujikawa
7dff758f8b
Merge pull request #743 from nghttp2/fix-fetch-ocsp-response-with-openssl-1-1-0
...
Fix bug that fetch-ocsp-response does not work with OpenSSL 1.1.0
2016-12-12 22:59:40 +09:00
Tatsuhiro Tsujikawa
bd3ececdd8
Fix bug that fetch-ocsp-response does not work with OpenSSL 1.1.0
...
The syntax of openssl ocsp -header option has been changed in OpenSSL
1.1.0. And it now does not require -header option anymore. It looks
like that it is workaround for 1.0.x versions.
2016-12-12 21:22:48 +09:00
Tatsuhiro Tsujikawa
77416b0ac2
Update man pages
2016-12-11 17:01:16 +09:00
Tatsuhiro Tsujikawa
fce9efd341
Mention that non-numeric host is allowed in API call if "dns" is used
2016-12-11 17:00:33 +09:00
Tatsuhiro Tsujikawa
928fda1d70
Update bash_completion
2016-12-11 16:52:14 +09:00
Tatsuhiro Tsujikawa
2d9d654507
Update man pages
2016-12-11 16:52:03 +09:00
Tatsuhiro Tsujikawa
7398e57174
Merge pull request #740 from nghttp2/backend-dns
...
nghttpx: Dynamic DNS
2016-12-11 16:48:28 +09:00
Tatsuhiro Tsujikawa
503ec82f4d
Merge pull request #737 from alagoutte/win
...
Add Windows CI via AppVeyor
2016-12-11 16:38:46 +09:00
Tatsuhiro Tsujikawa
22bd9fb530
nghttpx: Set DNS cache expire date for error and ok statuses only
2016-12-11 11:49:24 +09:00
Tatsuhiro Tsujikawa
e007b6b031
Add DNS integration tests
2016-12-11 11:32:38 +09:00
Tatsuhiro Tsujikawa
c487cd888f
nghttpx: Periodically remove expired DNS cache entries
2016-12-11 10:42:54 +09:00
Tatsuhiro Tsujikawa
fd403a85c8
nghttpx: Just return DNS_STATUS_ERROR
...
At the moment, we use both resolvers, and if either one is not
DNS_STATUS_IDLE, the other one is also not DNS_STATUS_IDLE. This may
change if we are going to configure DNS so that either A or AAAA
lookup is done. In that case, it is better to just return
DNS_STATUS_ERROR in the diff. This is because the calling side does
not expect DNS_STATUS_IDLE in that case.
2016-12-11 10:39:19 +09:00
Tatsuhiro Tsujikawa
a06a8c36a4
nghttpx: Add --dns-lookup-timeout and --dns-max-try options
2016-12-11 00:50:16 +09:00
Tatsuhiro Tsujikawa
0967ee9cb9
nghttpx: Better logging for DNS resolver
2016-12-10 23:10:18 +09:00
Tatsuhiro Tsujikawa
d66d34f9b9
Add libc-ares detection to cmake
2016-12-10 22:40:18 +09:00
Tatsuhiro Tsujikawa
264a98d106
nghttpx: Call c-ares initialization/cleanup functions
2016-12-10 21:41:03 +09:00
Tatsuhiro Tsujikawa
7c11d2d9bb
Require c-ares >= 1.7.5
2016-12-10 21:40:50 +09:00
Tatsuhiro Tsujikawa
b58d7b406f
Try c-ares 1.7.5 because it is the latest version travis offers
2016-12-10 21:32:37 +09:00
Tatsuhiro Tsujikawa
5ed9e4c83b
Document that c-ares is a required library for nghttpx
2016-12-10 21:09:51 +09:00
Tatsuhiro Tsujikawa
e7da2a669e
.travis.yml: Add libc-ares-dev
2016-12-10 21:09:51 +09:00
Tatsuhiro Tsujikawa
d66377d4b6
nghttpx: Add dns-cache-timeout option
...
This option controls how long cached DNS entries remain valid.
2016-12-10 21:09:51 +09:00
Tatsuhiro Tsujikawa
77a324fa46
nghttpx: Backend API call allows non-numeric host with dns parameter
2016-12-10 21:09:50 +09:00
Tatsuhiro Tsujikawa
38b5cad4e3
nghttpx: Lookup backend host name dynamically
...
We have added "dns" parameter to backend option. If specified, name
lookup is done dynamically. If not, name lookup is done at start up,
or configuration reloading. nghttpx caches DNS result including error
case in 30 seconds in this commit. Later commit makes this
configurable.
DNS resolution is done asynchronously using c-ares library.
2016-12-10 21:09:50 +09:00