Tatsuhiro Tsujikawa
d9acf873ed
nghttpx: Fix broken PROXY-protocol
...
Fix PROXY-protocol that is enabled for TLS connection.
2022-07-04 21:21:02 +09:00
Tatsuhiro Tsujikawa
24d27977bd
Rearrange imports
2022-05-24 21:56:38 +09:00
Tatsuhiro Tsujikawa
c67dc7ff1d
Refactor serverTester constructor
2022-05-24 21:47:24 +09:00
Tatsuhiro Tsujikawa
31b5eb597d
Avoid io/ioutil
2022-05-24 18:52:30 +09:00
Tatsuhiro Tsujikawa
79524471b4
nghttpx: Add --require-http-scheme option
2022-02-12 11:39:52 +09:00
Tatsuhiro Tsujikawa
095ee9683d
integration: Adds tests for chunked response
2021-09-16 22:37:33 +09:00
Tatsuhiro Tsujikawa
1e2081a1c5
Fix integration test error
2021-09-16 22:24:53 +09:00
Tatsuhiro Tsujikawa
c663349f24
integration: Add PROXY protocol v2 tests
2020-04-18 17:23:49 +09:00
Piotr Sikora
61efa15a14
integration: Fix issues reported by the `go vet` tool.
...
Signed-off-by: Piotr Sikora <piotrsikora@google.com>
2017-11-02 21:13:25 -07:00
Tatsuhiro Tsujikawa
6010d39325
integration: Add tests
2017-11-01 22:18:03 +09:00
Tatsuhiro Tsujikawa
4d76606fa2
Fix bug that forwarded for is not affected by proxy protocol
2017-08-09 22:44:14 +09:00
Tatsuhiro Tsujikawa
2670bfb8ba
integration: Add tests for X-Forwarded-Proto handling
2017-04-08 18:46:37 +09:00
Tatsuhiro Tsujikawa
ef92b54db3
Revert "integration: Add tests for X-Forwarded-Proto handling"
...
This reverts commit 6aa581d2f0
.
2017-04-08 18:34:10 +09:00
Tatsuhiro Tsujikawa
e2a7e867f9
integration: Add more tests for 204 status code
2017-04-07 22:36:46 +09:00
Tatsuhiro Tsujikawa
28082ff5f5
integration: Add tests for 204 status code
2017-04-07 21:46:33 +09:00
Tatsuhiro Tsujikawa
6aa581d2f0
integration: Add tests for X-Forwarded-Proto handling
2017-04-06 19:20:08 +09:00
Tatsuhiro Tsujikawa
5618e1bbc9
integration: Add configrevision API tests
2017-02-19 23:40:06 +09:00
Tatsuhiro Tsujikawa
9f1543f81e
integration: Add https redirect tests
2017-02-18 22:32:45 +09:00
Tatsuhiro Tsujikawa
1bd6893084
integration: Fix deprecation warnings
2017-02-18 22:29:59 +09:00
Tatsuhiro Tsujikawa
e007b6b031
Add DNS integration tests
2016-12-11 11:32:38 +09:00
Tatsuhiro Tsujikawa
f945653ba9
integration: Add tests for the case where response ends before request
...
This commit also fixes the rare issue that connection is not made
properly because of race between nghttpx process and TCP client
connection.
2016-06-23 22:21:12 +09:00
Tatsuhiro Tsujikawa
43d595b7f3
integration: Add tests for healthmon
2016-06-17 00:24:14 +09:00
Tatsuhiro Tsujikawa
fd09d8b861
integration: Rename method names
2016-06-14 00:19:27 +09:00
Tatsuhiro Tsujikawa
d48d399fb3
nghttpx: Allow query in API endpoint
2016-06-13 22:11:26 +09:00
Tatsuhiro Tsujikawa
81bfb84b32
nghttpx: Rename backend/replace API as backendconfig
2016-06-13 21:17:53 +09:00
Tatsuhiro Tsujikawa
8248598601
Add integration tests for nghttpx API endpoint
2016-06-05 22:51:28 +09:00
Tatsuhiro Tsujikawa
7a1e0eb618
integration: Disable tests that sometimes break randomly on travis
2016-03-19 11:50:01 +09:00
Tatsuhiro Tsujikawa
5a3ca7e700
nghttpx: Disallow user defined static obfuscated string for "for" parameter
2016-01-21 21:05:07 +09:00
Tatsuhiro Tsujikawa
acb38b726f
nghttpx: Don't quote Forwarded params if it is not required
2016-01-19 22:43:56 +09:00
Tatsuhiro Tsujikawa
b202e066fd
nghttpx: Don't allow certain characters in host and :scheme header field
...
For HTTP/2, we do this validation in libnghttp2. http-parser does
this partially, when it parses URI, but it does not do anything for
Host header field. libspdylay does not perform anything. So do some
additional validation for HTTP/1 and SPDY cases. integration tests
were also added to make sure they work.
2016-01-16 16:00:05 +09:00
Tatsuhiro Tsujikawa
198e253e9d
integration: Add X-Forwarded-For tests with HTTP/2 backend
2016-01-16 12:25:12 +09:00
Tatsuhiro Tsujikawa
f26e213dcd
integration: Additional tests for Forwarded header fields
2016-01-16 12:19:19 +09:00
Tatsuhiro Tsujikawa
9f318d1249
integration: Validate status code explicitly
...
Without this validation, test spuriously succeeds, but in fact it
doesn't. This might occur if stream is closed with RST_STREAM or
GOAWAY.
2016-01-16 12:06:41 +09:00
Tatsuhiro Tsujikawa
f72e496f96
nghttpx: Add integration tests for Forwarded header field support
2016-01-16 11:32:36 +09:00
Tatsuhiro Tsujikawa
509c515575
integration: Update go's http2 package URI
2015-10-09 00:09:45 +09:00
Tatsuhiro Tsujikawa
f1eb7638d1
nghttpx: Change mruby script handling
...
This commit changes nghttpx's mruby script handling. Previously we
have 2 options to specify the mruby script file to be run on request
and on response. Now they are merged into 1 option, namely
--mruby-file. It now must return object. On request, the object's
on_req(env) method is invoked with env object. Similarly, on
response, the object's on_resp(env) method is invoked. The
specification of Env object has not changed.
2015-10-08 23:32:15 +09:00
Tatsuhiro Tsujikawa
25db23e3c8
integration: Workaround flaky test around signal
2015-09-24 00:11:14 +09:00
Tatsuhiro Tsujikawa
79945c0c45
nghttpx: Robust PROXY protocol implementation
2015-09-07 22:37:25 +09:00
Tatsuhiro Tsujikawa
a1bb48770c
nghttpx: Add tests for PROXY protocol handling
2015-09-06 23:11:07 +09:00
Tatsuhiro Tsujikawa
2222a898a1
integration: Add mruby tests
2015-09-04 02:52:19 +09:00
Tatsuhiro Tsujikawa
b78662e506
integration: Fix errors related to host-rewrite
2015-08-09 01:23:58 +09:00
Tatsuhiro Tsujikawa
b0b792e735
integration: Add tests for x-forwarded-proto header field
2015-06-16 21:31:47 +09:00
Tatsuhiro Tsujikawa
41dd5f6897
nghttpx: Tokenize request method
...
We share the same method value with http-parser. This commit also
returns 501 for unknown request method on HTTP/2 and SPDY frontend.
2015-06-09 23:33:14 +09:00
Tatsuhiro Tsujikawa
64b1aae567
integration: Fix TestH2H1Upgrade test failure
2015-05-08 19:35:09 +09:00
Tatsuhiro Tsujikawa
026521b097
integration: Add tests for --header-field-buffer and --max-header-fields
2015-04-29 22:54:25 +09:00
Tatsuhiro Tsujikawa
87cadca3d8
integration: Add HTTP Upgrade test
2015-04-10 21:28:12 +09:00
Tatsuhiro Tsujikawa
ff60cc6b71
integration: Don't send Link header field for resource under /css/
2015-04-08 16:09:02 +09:00
Tatsuhiro Tsujikawa
5c31c130bd
integration: Add test case for trailer part
2015-03-08 19:31:43 +09:00
Tatsuhiro Tsujikawa
c98cf045d6
nghttpx: Use omit minor version in case of HTTP/2 in via header and accesslog
2015-02-24 14:43:01 +09:00
Tatsuhiro Tsujikawa
b157d4ebb2
Validate HTTP semantics by default
...
Previously we did not check HTTP semantics and it is left out for
application. Although checking is relatively easy, but they are
scattered and error prone. We have implemented these checks in our
applications and also feel they are tedious. To make application
development a bit easier, this commit adds basic HTTP semantics
validation to library code. We do following checks:
server:
* HEADERS is either request header or trailer header. Other type of
header is disallowed.
client:
* HEADERS is either zero or more non-final response header or final
response header or trailer header. Other type of header is
disallowed.
For both:
* Check mandatory pseudo header fields.
* Make sure that content-length matches the amount of DATA we
received.
If validation fails, RST_STREAM of type PROTOCOL_ERROR is issued.
2015-02-20 01:01:10 +09:00