Commit Graph

6390 Commits

Author SHA1 Message Date
Tatsuhiro Tsujikawa
c663349f24 integration: Add PROXY protocol v2 tests 2020-04-18 17:23:49 +09:00
Tatsuhiro Tsujikawa
854e9fe395 nghttpx: Always call init_forwarded_for
Always call init_forwarded_for to get the default when source address
in PROXY protocol is ignored.  This ensures that forwarded header
field has the same value as x-forwarded-for.
2020-04-18 17:16:45 +09:00
Tatsuhiro Tsujikawa
c60ea227cc Update doc 2020-04-18 17:16:30 +09:00
Tatsuhiro Tsujikawa
49cd8e6e73 nghttpx: Add PROXY-protocol v2 support 2020-04-18 17:16:30 +09:00
Tatsuhiro Tsujikawa
3b17a659f6 Merge pull request #1453 from Leo-Neat/master
Add CIFuzz
2020-03-31 18:48:52 +09:00
Tatsuhiro Tsujikawa
600fcdf52d Merge pull request #1455 from xjtian/long_serials
Fix get_x509_serial for long serial numbers
2020-03-31 18:47:53 +09:00
Jacky Tian
4922bb41d6 static_cast size parameter in StringRef constructor to size_t 2020-03-31 00:54:08 -07:00
Jacky Tian
aad8697575 Fix get_x509_serial for long serial numbers 2020-03-31 00:19:06 -07:00
Leo Neat
dc7a7df61c Adding CIFuzz 2020-03-18 10:12:29 -07:00
Tatsuhiro Tsujikawa
b3f85e2daa Merge pull request #1444 from nghttp2/fix-recv-window-flow-control-issue
Fix receiving stream data stall
2020-02-20 11:22:18 +09:00
Tatsuhiro Tsujikawa
ffb49c6c58 Merge pull request #1435 from geoffhill/master
Enable session_create_idle_stream test, fix errors
2020-02-20 10:53:12 +09:00
Tatsuhiro Tsujikawa
2ec585518e Fix receiving stream data stall
Previously, if automatic window update is enabled (which is default),
after window size is set to 0 by
nghttp2_session_set_local_window_size, once the receiving window is
exhausted, even after window size is increased by
nghttp2_session_set_local_window_size, no more data cannot be
received.  This is because nghttp2_session_set_local_window_size does
not submit WINDOW_UPDATE.  It is only triggered when new data arrives
but since window is filled up, no more data cannot be received, thus
dead lock happens.

This commit fixes this issue.  nghttp2_session_set_local_window_size
submits WINDOW_UPDATE if necessary.

https://github.com/curl/curl/issues/4939
2020-02-20 10:40:38 +09:00
Tatsuhiro Tsujikawa
459df42b8b Merge pull request #1442 from nghttp2/upgrade-llhttp
Bump llhttp to 2.0.4
2020-02-11 23:26:41 +09:00
Tatsuhiro Tsujikawa
a4c1fed513 Bump llhttp to 2.0.4 2020-02-11 23:05:53 +09:00
Geoff Hill
866eadb5de Enable session_create_idle_stream test, fix errors
Add the currently-unused `test_nghttp2_session_create_idle_stream()`
function to the test suite definition.

Modify the test in two places to make it pass:

  * Use stream ID=10 as the priority stream ID to test automatic creation
    of streams for priority specs. The code below checks against stream
    ID=10 so I assume this was a typo in the test.

  * Set the `last_sent_stream_id` instead of the `next_stream_id` to test
    that idle streams cannot be created with smaller numbers than the
    most-recently-seen stream ID. Looking at the validation path in
    `session_detect_idle_stream()`, I think this was another test typo.
2020-01-23 17:29:19 -08:00
Tatsuhiro Tsujikawa
5e13274b7c Fix typo 2019-12-21 11:39:05 +09:00
Tatsuhiro Tsujikawa
e0d7f7de5e h2load: Allow port in --connect-to 2019-12-21 11:39:05 +09:00
lucas
df575f968f h2load: add --connect-to option 2019-12-21 11:39:05 +09:00
Tatsuhiro Tsujikawa
1fff737955 clang-format-9 2019-12-18 14:25:32 +09:00
Tatsuhiro Tsujikawa
b40c6c862f Merge pull request #1418 from vszakats/patch-1
lib/CMakeLists.txt: Make hard-coded static lib suffix optional
2019-12-08 11:09:59 +09:00
Viktor Szakats
9bc2c75e38 lib/CMakeLists.txt: Make hard-coded static lib suffix optional
It can be set via the `STATIC_LIB_SUFFIX` variable.

This fixes every existing dependent project that relied on the name
having no suffix and thus capable of using either a static or shared
flavour depending on which one is present on this or how the linker
is configured.

Ref: https://github.com/nghttp2/nghttp2/pull/1394
2019-11-15 20:53:50 +00:00
Tatsuhiro Tsujikawa
2d5f76594a Bump up version number to 1.41.0-DEV 2019-11-15 23:34:33 +09:00
Tatsuhiro Tsujikawa
cc05c5fe8c Update manual pages v1.40.0 2019-11-15 23:03:14 +09:00
Tatsuhiro Tsujikawa
66d7b194d4 Update AUTHORS 2019-11-15 22:54:56 +09:00
Tatsuhiro Tsujikawa
41060943bd Bump up version number to 1.40.0, LT revision to 33:0:19 2019-11-15 22:53:05 +09:00
Tatsuhiro Tsujikawa
5ae9bb8925 Fail fast if huffman decoding context is in failure state 2019-11-09 17:18:11 +09:00
Tatsuhiro Tsujikawa
bb519154fe Merge pull request #1413 from nghttp2/check-authority
Add nghttp2_check_authority as public API
2019-11-02 10:53:33 +09:00
Tatsuhiro Tsujikawa
77f5487a58 Add nghttp2_check_authority as public API 2019-11-02 00:33:59 +09:00
Tatsuhiro Tsujikawa
db9a8f6efe Merge pull request #1409 from nghttp2/fix-wrong-stream-close-error-code
Fix the bug that stream is closed with wrong error code
2019-10-29 21:24:57 +09:00
Tatsuhiro Tsujikawa
6f28a69b7d Merge pull request #1411 from richard78917/fix_warning
priority_spec::valid(): remove const qualifier from return value
2019-10-29 21:24:34 +09:00
Tatsuhiro Tsujikawa
6ce4835eea Fix the bug that stream is closed with wrong error code
This commit fixes the bug that stream is closed with wrong error code
(0).  This happens when STREAM or DATA frame with END_STREAM flag set
is received and it violates HTTP messaging rule (i.e., content-length
does not match) and the other side of stream has been closed.  In this
case, nghttp2_on_stream_close_callback should be called with nonzero
error code, but previously it is called with 0 (NO_ERROR).
2019-10-29 21:04:52 +09:00
Richard Wolfert
29042f1c95 priority_spec::valid(): remove const qualifier from return value
gcc generates warning:
* type qualifiers ignored on function return type [-Wignored-qualifiers]
2019-10-29 11:28:26 +01:00
Tatsuhiro Tsujikawa
d08c43951f Merge pull request #1405 from nghttp2/huffman
Faster Huffman encoding/decoding
2019-10-12 18:48:21 +09:00
Tatsuhiro Tsujikawa
5d6964cf81 Faster huffman decoding 2019-10-12 14:30:31 +09:00
Tatsuhiro Tsujikawa
0d855bfc1b Faster huffman encoding 2019-10-12 14:30:31 +09:00
Tatsuhiro Tsujikawa
6f967c6ef3 Fix errors reported by coverity scan 2019-09-21 13:45:20 +09:00
Tatsuhiro Tsujikawa
b8a43db84c Merge pull request #1394 from wrowe/fix-static-libname
Avoid filename collision of static and dynamic lib
2019-09-21 10:45:45 +09:00
Tatsuhiro Tsujikawa
70b62c1a32 Merge pull request #1393 from wrowe/fix-static-msvcrt
Add new flag ENABLE_STATIC_CRT for Windows
2019-09-21 10:45:11 +09:00
William A Rowe Jr
28b1f0b90f Avoid filename collision of static and dynamic lib
Renames the output of the ENABLE_STATIC_LIB library/archive output
to nghttp2_static.lib/.a to avoid filenames colliding with the output
name for ENABLE_SHARED_LIB library/archive, when both are enabled.

Signed-off-by: William A Rowe Jr <wrowe@pivotal.io>
Signed-off-by: Yechiel Kalmenson <ykalmenson@pivotal.io>
2019-09-16 08:48:35 -07:00
Tatsuhiro Tsujikawa
1dd966f189 Merge branch 'fix-nghttpx-mruby' 2019-09-17 00:42:04 +09:00
Tatsuhiro Tsujikawa
fe8946ddc7 nghttpx: Fix bug that mruby is incorrectly shared between backends
Previously, mruby context is wrongly shared by multiple patterns if
the underlying SharedDownstreamAddr is shared by multiple
DownstreamAddrGroups.  This commit fixes it.
2019-09-16 22:25:06 +09:00
William A Rowe Jr
72b71a6ba3 Add new flag ENABLE_STATIC_CRT for Windows
This change adds the CMake option;

  ENABLE_STATIC_CRT  Build libnghttp2 against the MS LIBCMT[d]

This avoids linking to msvcrt.lib for binaries to compile (/MT[d])
and link against the static C Runtime libcrt.lib, and
avoiding the msvcrt[d].dll dependency.

Signed-off-by: William A Rowe Jr <wrowe@pivotal.io>
Signed-off-by: Yechiel Kalmenson <ykalmenson@pivotal.io>
2019-09-14 16:23:16 -07:00
Tatsuhiro Tsujikawa
f8933fe504 nghttpx: Reconnect h1 backend if it lost connection before sending headers
This is the second attempt.  The first attempt was
8a59ce6d37 and it failed.
2019-09-07 18:20:24 +09:00
Tatsuhiro Tsujikawa
89c33d690f Update neverbleed 2019-09-07 00:19:59 +09:00
Tatsuhiro Tsujikawa
7079dc5e75 Update neverbleed to fix memory leak 2019-09-06 23:58:22 +09:00
Tatsuhiro Tsujikawa
5080db84e2 Revert "nghttpx: Reconnect h1 backend if it lost connection before sending headers"
This reverts commit 8a59ce6d37.
2019-09-06 22:01:03 +09:00
Tatsuhiro Tsujikawa
053c7ac588 nghttpx: Returns 408 if backend timed out before sending headers 2019-09-03 00:29:01 +09:00
Tatsuhiro Tsujikawa
8a59ce6d37 nghttpx: Reconnect h1 backend if it lost connection before sending headers 2019-09-03 00:28:21 +09:00
Tatsuhiro Tsujikawa
f2fde180cd Remove redundant null check before delete
Reported in https://github.com/nghttp2/nghttp2/issues/1384
2019-08-19 22:27:32 +09:00
Tatsuhiro Tsujikawa
95efb3e19d Don't read too greedily 2019-08-14 11:44:28 +09:00