Tatsuhiro Tsujikawa
d22ced77c0
Return fatal error if flooding is detected to close session immediately
...
This change adds new return error code from nghttp2_session_mem_recv
and nghttp2_session_recv functions, namely NGHTTP2_ERR_FLOODED. It is
fatal error, and is returned when flooding was detected.
2015-09-30 22:19:03 +09:00
Tatsuhiro Tsujikawa
0cb8c82125
Detect flooding and tear down session
2015-09-30 00:44:08 +09:00
Tatsuhiro Tsujikawa
f150f9aec4
Fix compile error without BoringSSL
2015-09-29 23:45:13 +09:00
Tatsuhiro Tsujikawa
22a89ff7a6
Fix compile error and warning with gcc
2015-09-29 23:38:26 +09:00
Tatsuhiro Tsujikawa
f0d2c9f94b
Compile with BoringSSL
...
Compile with BoringSSL except for neverbleed and libnghttp2_asio. The
former uses ENGINE and RSA_METHOD, and they are quite different
between OpenSSL and BoringSSL. The latter uses boost::asio, which
calls OpenSSL functions deleted in BoringSSL.
2015-09-29 23:38:17 +09:00
Tatsuhiro Tsujikawa
49ef571ecf
nghttpx: Stop watchers in ConnectionHandler dtor
2015-09-29 00:45:31 +09:00
Tatsuhiro Tsujikawa
75ff04f87a
nghttpx: Don't stop default loop of worker process on graceful shutdown
...
To keep ipc channel being read from worker process, default loop
should not be stopped. To join all worker threads, now we use
dedicated thread to do this. When all worker threads are joined,
ev_async_send sends message to default loop, and it is finally
stopped.
2015-09-29 00:40:33 +09:00
Tatsuhiro Tsujikawa
3fca142e5f
nghttpx: Exit immediately if IPC channel read failed on worker process
2015-09-29 00:08:46 +09:00
Tatsuhiro Tsujikawa
a28aee058f
nghttpx: Don't need to trap SIGTERM and SIGINT signals
2015-09-29 00:07:29 +09:00
Tatsuhiro Tsujikawa
ad5d73738c
Return type of nghttp2_submit_trailer is int
2015-09-29 00:06:20 +09:00
Tatsuhiro Tsujikawa
55075516c9
h2load: Reuse SSL/TLS session
2015-09-28 23:59:42 +09:00
Tatsuhiro Tsujikawa
ff87bf7584
h2load: Fix compile error
2015-09-28 23:57:58 +09:00
Tatsuhiro Tsujikawa
252df2d22c
h2load: Reconnect server on connection: close
2015-09-28 23:50:44 +09:00
Tatsuhiro Tsujikawa
4e2ff875dc
h2load: Don't exit in the case of no ALPN protocol overlap
2015-09-28 22:48:43 +09:00
Tatsuhiro Tsujikawa
3fafbfe1ed
Fix gcc build
2015-09-27 00:51:32 +09:00
Tatsuhiro Tsujikawa
ef3e2c7764
Don't send WINDOW_UPDATE with 0 increment
2015-09-27 00:22:33 +09:00
Tatsuhiro Tsujikawa
b5427d9651
Remove unused nghttp2_memdup
2015-09-26 22:44:08 +09:00
Tatsuhiro Tsujikawa
2d5b42693d
Don't expect NULL terminated name/value in nghttp2_hd_deflate_hd
...
If it is called through libnghttp2 internally, name/value pairs are
all NULL-terminated. But it is one of public API, and we cannot
expect that applications always make NULL-terminated string for
name/value pairs.
2015-09-26 22:41:05 +09:00
Tatsuhiro Tsujikawa
c2eacc8b10
Update doc
2015-09-26 22:24:44 +09:00
Tatsuhiro Tsujikawa
8acf9a2802
nghttpx: Trie based routing
2015-09-26 22:19:10 +09:00
Tatsuhiro Tsujikawa
566b0476d7
nghttpx: Enable neverbleed for client private key; don't run nb without TLS
2015-09-26 21:28:46 +09:00
Tatsuhiro Tsujikawa
8dd5f7585e
Update doc
2015-09-26 20:59:56 +09:00
Tatsuhiro Tsujikawa
45366ae9dc
Merge branch 'neverbleed'
2015-09-26 19:02:24 +09:00
Tatsuhiro Tsujikawa
044385ab6e
Add neverbleed support
...
neverbleed is disabled by default. To enable it, use
--with-neverbleed configure option.
2015-09-26 19:01:31 +09:00
Tatsuhiro Tsujikawa
f337b94537
Add neverbleed as submodule
2015-09-26 18:55:02 +09:00
Tatsuhiro Tsujikawa
c749ae0cac
Add doc
2015-09-26 18:54:38 +09:00
Tatsuhiro Tsujikawa
637288359e
Ignore 0 length header partial block if it is not final
2015-09-25 22:53:35 +09:00
Tatsuhiro Tsujikawa
d618cd92cc
Merge branch 'rraptorr-systemd'
2015-09-25 22:35:50 +09:00
Tatsuhiro Tsujikawa
86663ff333
Merge branch 'systemd' of https://github.com/rraptorr/nghttp2 into rraptorr-systemd
2015-09-25 22:35:37 +09:00
Tatsuhiro Tsujikawa
93ba75b602
Fix bug that headers in CONTINUATION were ignored after HEADERS with padding
2015-09-25 22:28:03 +09:00
Tatsuhiro Tsujikawa
1f72648b0e
Fix compile error with --enable-debug and --enable-werror
2015-09-25 22:19:18 +09:00
Janusz Dziemidowicz
1cdd8b1c58
Fix daemon upgrade when running under systemd
...
Systemd assumes that service of type simple is stopped when the main
process exits. This causes systemd to kill all nghttpx processes when
doing a process upgrade (via USR2/QUIT signals). Change the service
type to forking which behaves correctly on upgrade.
2015-09-25 15:01:02 +02:00
Tatsuhiro Tsujikawa
d804780c25
Fix compile error with Android NDK and --enable-werror
2015-09-25 01:45:28 +09:00
Tatsuhiro Tsujikawa
6200bf3329
Bump up version number to 1.3.5-DEV
2015-09-25 01:25:04 +09:00
Tatsuhiro Tsujikawa
895da9a7aa
Update man pages
2015-09-25 01:10:35 +09:00
Tatsuhiro Tsujikawa
f9eaaa9da5
Bump up version number to 1.3.4, LT revision to 15:4:1
2015-09-25 01:07:28 +09:00
Tatsuhiro Tsujikawa
6680d8b792
nghttpx: Call setsid after executing new binary
2015-09-25 00:55:08 +09:00
Tatsuhiro Tsujikawa
0b32df94a5
nghttpx: Log when worker process exits
2015-09-25 00:11:35 +09:00
Tatsuhiro Tsujikawa
913b95336b
Fix warning 'this decimal constant is unsigned only in ISO C90'
2015-09-25 00:03:38 +09:00
Tatsuhiro Tsujikawa
c44587a70c
nghttpx: Use _Exit when exiting from child process
2015-09-24 23:57:24 +09:00
Tatsuhiro Tsujikawa
938fa9a1e2
nghttpx: Fix compile error with --disable-threads
2015-09-24 23:57:06 +09:00
Tatsuhiro Tsujikawa
206eab3b33
Merge branch 'fix-signal-handling'
2015-09-24 23:43:43 +09:00
Tatsuhiro Tsujikawa
bb4ab7e333
integration: Robust process termination
2015-09-24 23:43:24 +09:00
Tatsuhiro Tsujikawa
f470d1cc06
Document that sending signal to nghttpx worker process may not work
2015-09-24 23:43:24 +09:00
Tatsuhiro Tsujikawa
3d5493c3f1
nghttpx-logrotate: Don't use killall since we have multiple processes
2015-09-24 23:43:24 +09:00
Tatsuhiro Tsujikawa
389a96483a
nghttpx: Fix improper signal handling
2015-09-24 23:43:24 +09:00
Tatsuhiro Tsujikawa
bff59e09dc
src: Robust make_array implementation
...
This is meant to be used for ints, but unfortunately std::forward is
not constexpr in C++11.
2015-09-24 23:43:07 +09:00
Tatsuhiro Tsujikawa
1e96a2d357
Merge branch 'rraptorr-init-upgrade'
2015-09-24 23:41:15 +09:00
Janusz Dziemidowicz
4a5d1b6708
Make traditional init script fail if new config file is broken
...
Instead of assuming that upgrade is always successful, check if a new
process actually started. Do not kill old process if the new one
failed.
2015-09-24 14:56:55 +02:00
Tatsuhiro Tsujikawa
b7fd0fdd96
Bump up version to 1.3.4-DEV
2015-09-24 00:40:35 +09:00