Commit Graph

361 Commits

Author SHA1 Message Date
Syohei YOSHIDA a93e0016ff Correct misspellings 2015-11-09 11:40:35 +09:00
Tatsuhiro Tsujikawa 269a100081 Add nghttp2_session_upgrade2(), deprecate nghttp2_session_upgrade()
To validate actual response body length against the value declared in
content-length response header field, we first check request method.
If request method is HEAD, respose body must be 0 regardless of the
value in content-length.  nghttp2_session_upgrade() has no parameter
to indicate the request method is HEAD, so we failed to validate
response body if HEAD is used with HTTP Upgrade.  New
nghttp2_session_upgrade2() accepts new parameter to indicate that
request method is HEAD or not to fix this issue.  Although, this issue
affects client side only, we deprecate nghttp2_session_upgrade() in
favor of nghttp2_session_upgrade2() for both client and server side.
2015-11-07 16:13:06 +09:00
Tatsuhiro Tsujikawa 0dc7fee713 h2load: Print "space savings" to measure header compression efficiency 2015-11-04 01:04:56 +09:00
Tatsuhiro Tsujikawa be0d0e2995 Rename nghttp2_session_request_allowed as nghttp2_session_check_request_allowed 2015-10-30 22:48:27 +09:00
Tatsuhiro Tsujikawa 5d611d2e24 Merge branch 'master' into simple-extensions 2015-10-29 23:24:34 +09:00
Tatsuhiro Tsujikawa 1c37abc0dd Add nghttp2_session_request_allowed() API function
This function is useful for the client application to know that there
is a chance that request can be sent.  If this function returns 0,
there is zero chance to make a request.

This commit also set error_code passed to
nghttp2_on_stream_close_callback to NGHTTP2_REFUSED_STREAM if request
is not sent.
2015-10-29 22:53:30 +09:00
Tatsuhiro Tsujikawa da1eb19a73 Add missing documents to APIDOCS 2015-10-25 17:24:10 +09:00
Tatsuhiro Tsujikawa af3bc53332 Update bash_completion files 2015-10-25 17:11:03 +09:00
Tatsuhiro Tsujikawa 86911bd67d Update man pages 2015-10-25 17:10:41 +09:00
Tatsuhiro Tsujikawa 9c43acfd3a Update sphinx_rtd_theme 2015-10-24 19:30:51 +09:00
Tatsuhiro Tsujikawa 1fdf208a28 Update man pages 2015-10-20 00:22:03 +09:00
Tatsuhiro Tsujikawa f0bf2233d2 Remove the word "experimental" since HTTP/2 has been finalized 2015-10-20 00:19:49 +09:00
Tatsuhiro Tsujikawa bb43b8e4c1 Update Firefox version as well 2015-10-15 21:31:56 +09:00
Zhuoyun Wei 751766a46f Update doc for Chromium HTTP/2 proxy support 2015-10-15 18:41:24 +08:00
Tatsuhiro Tsujikawa 3785cf07ba Add simple HTTP/2 extension framework
Application can utilize this framework to send/receive user defined
extension frames.  These frames are expected not to change existing
protocol behaviour.
2015-10-11 17:46:23 +09:00
Tatsuhiro Tsujikawa 2b8b8f1ffd Update mruby doc 2015-10-08 23:32:15 +09:00
Tatsuhiro Tsujikawa 8dd5f7585e Update doc 2015-09-26 20:59:56 +09:00
Tatsuhiro Tsujikawa 895da9a7aa Update man pages 2015-09-25 01:10:35 +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 1d88f02b10 Update bash_completion 2015-09-24 00:17:26 +09:00
Tatsuhiro Tsujikawa a0643b86eb Update man pages 2015-09-24 00:17:14 +09:00
Tatsuhiro Tsujikawa c3283e1c6e Update tutorial 2015-09-23 22:57:53 +09:00
Tatsuhiro Tsujikawa 4ac8edfe27 Update doc 2015-09-19 19:50:54 +09:00
Tatsuhiro Tsujikawa ce1b11e3a0 nghttpx: Split monolithic one process into control and worker processes
The control process handles signals, reads configuration, reads
private keys, and bind port (which may be privileged one).  It never
drop privileges, so that it can execute new binary with the same
privilege.  It forks worker process.  The worker process handles all
incoming connections.  It drops privilege.
2015-09-18 23:28:26 +09:00
Tatsuhiro Tsujikawa 818c3bcadc Update man pages 2015-09-16 22:35:11 +09:00
Tatsuhiro Tsujikawa 7f12f0671c Update bash_completion 2015-09-12 22:53:05 +09:00
Tatsuhiro Tsujikawa 39fb5972d4 Update man pages 2015-09-12 22:51:40 +09:00
Tatsuhiro Tsujikawa 4ae2850aa6 Add sphinx rubydomain files to EXTRA_DIST 2015-09-12 17:51:19 +09:00
Tatsuhiro Tsujikawa 231db4a3e6 Update man pages 2015-09-06 17:41:37 +09:00
Tatsuhiro Tsujikawa 1b63e6d478 nghttpx: Call request phase hook for pushed resource as well 2015-09-06 15:21:36 +09:00
Tatsuhiro Tsujikawa 7273c7d688 Document mruby push 2015-09-06 00:05:07 +09:00
Tatsuhiro Tsujikawa e1106e0f91 Update doc 2015-09-05 21:28:43 +09:00
Tatsuhiro Tsujikawa 18064d1626 Document nghttpx mruby extension 2015-09-05 21:23:27 +09:00
Tatsuhiro Tsujikawa 3029e5c530 Bundle sphinxcontrib.rubydomain
Source files were downloaded from
https://bitbucket.org/birkenfeld/sphinx-contrib/src/default/rubydomain/
2015-09-05 21:22:50 +09:00
Tatsuhiro Tsujikawa e19d5efced nghttpx: Allow absolute URI in Link header field for push 2015-09-05 19:01:02 +09:00
Tatsuhiro Tsujikawa 6d6ed16ab9 Update bash_completion 2015-08-30 18:59:44 +09:00
Tatsuhiro Tsujikawa 5a0f8b1f1f Update man pages 2015-08-30 18:59:30 +09:00
Tatsuhiro Tsujikawa 789eb8a590 Update man pages 2015-08-30 00:24:11 +09:00
Tatsuhiro Tsujikawa e6566a1e3a Fix parallel `make distcheck` 2015-08-27 02:20:22 +09:00
Tatsuhiro Tsujikawa 176411aada Update doc 2015-08-20 23:31:22 +09:00
Tatsuhiro Tsujikawa 059280d1a5 Add stream public API
The intention of this stream API is give server application about
stream dependency information, so that it can utilize it for better
scheduling of stream processing.  We have no plan to add object
oriented API based on stream object.
2015-08-19 23:04:06 +09:00
Tatsuhiro Tsujikawa 04aaaa3821 h2load: Remove trailing white spaces 2015-08-18 21:32:47 +09:00
Nora 727ba4906c h2load adding timeout options 2015-08-18 01:52:22 -04:00
Tatsuhiro Tsujikawa 48244b9aca Update man pages 2015-08-14 23:59:47 +09:00
Tatsuhiro Tsujikawa 3a1c37248a Update doc 2015-08-14 22:38:23 +09:00
Tatsuhiro Tsujikawa 0c4cbc800b Document that previous OCSP response is continued to be used 2015-08-13 00:47:32 +09:00
Tom Harwood 560955f50d doc: Reword the HPAC tutorial.
The overall meaning is the same. I added a paragraph to introduce nghttp2_hd_inflate_hd(), and added an explanation of using NGHTTP2_NV_FLAG_NO_INDEX for security sensitive headers.
2015-08-09 17:05:52 +01:00
Tatsuhiro Tsujikawa 8a7bc6f7bc Update bash_completion 2015-08-09 01:13:53 +09:00
Tatsuhiro Tsujikawa 66f2097627 Update man pages 2015-08-09 01:13:35 +09:00
Tom Harwood c50ea91a3f doc: Reword some of the client tutorial.
The overall meaning of the tutorial is the same. I added text describing frame types where it helps explain the callbacks better, e.g. introducing the HEADERS frame before on_header_callback().

Also fixed a couple of typos:
- Fixed ``reacb`` typo to ``readcb``
- Added parens to some functions, e.g. ``on_frame_recv_callback`` => ``on_frame_recv_callback()``
2015-08-04 00:08:12 +01:00
Tatsuhiro Tsujikawa 0481d44c69 Fix typo 2015-08-01 20:20:32 +09:00
Tom Harwood 4f0ff5bfb1 doc: fix a couple of links 2015-08-01 02:39:38 +01:00
Tom Harwood e9e9626c2c doc: Reword some of the server tutorial.
The overall meaning of the tutorial is the same, except for a couple of changes:
- app_context struct was called "app_content", fixed the typo
- nghttp2_session_server_new2() is mentioned, but the example uses nghttp2_session_server_new() instead, changed the text to match
2015-07-30 23:50:34 +01:00
Tatsuhiro Tsujikawa 762bafa47b Add tlsticketupdate.go to EXTRA_DIST 2015-07-29 21:18:16 +09:00
Tatsuhiro Tsujikawa 58dd924343 Update man pages 2015-07-29 00:01:12 +09:00
Tatsuhiro Tsujikawa 80d96590c5 nghttpx: Update doc 2015-07-28 23:43:32 +09:00
Alexis La Goutte 26b7bee16f Fix rm: cannot remove ‘*.rst’: No such file or directory when "make clean"
When you don't generated documentation via make html
2015-07-21 11:19:50 +02:00
Tatsuhiro Tsujikawa 5c96ecd77d Dump APIDOC removal failure errors to /dev/null 2015-07-19 19:16:09 +09:00
Tatsuhiro Tsujikawa 03034c0081 Update man pages 2015-07-18 00:23:53 +09:00
Tatsuhiro Tsujikawa 3396c71c3c Update man pages 2015-07-15 23:48:41 +09:00
Tatsuhiro Tsujikawa da51389927 Update man pages 2015-07-15 01:25:27 +09:00
Tatsuhiro Tsujikawa 1c7431293d Update bash_completion 2015-07-15 00:01:22 +09:00
Tatsuhiro Tsujikawa 9c8bc1218d Update man pages 2015-07-15 00:01:04 +09:00
Tatsuhiro Tsujikawa 3db0badc35 Update man pages 2015-07-12 23:26:45 +09:00
Tatsuhiro Tsujikawa d62e4dbc5e Update man pages 2015-07-11 12:45:23 +09:00
Tatsuhiro Tsujikawa 68f6df61e5 Update man pages 2015-06-27 10:58:25 +09:00
Tatsuhiro Tsujikawa 5a8d5e5dd9 Update man pages 2015-06-23 23:22:35 +09:00
Tatsuhiro Tsujikawa 3abb162969 Update man pages 2015-06-23 00:54:09 +09:00
Tatsuhiro Tsujikawa 4242478f39 Update nghttpx man page template 2015-06-23 00:53:51 +09:00
Tatsuhiro Tsujikawa a61054e1f7 Update bash_completion 2015-06-12 22:38:32 +09:00
Tatsuhiro Tsujikawa 749f5d6a32 Update man pages 2015-06-12 22:38:19 +09:00
Tatsuhiro Tsujikawa ba34313f9f mkapiref.py: Ensure better 2 and 3 support 2015-06-07 13:13:51 +09:00
Tatsuhiro Tsujikawa aa6699435a make_bash_completion.py: Support Python 3.4 2015-06-07 13:01:02 +09:00
Tatsuhiro Tsujikawa 1534edd3f3 Update building android doc to include zlib build instruction 2015-06-01 23:14:38 +09:00
Tatsuhiro Tsujikawa 8e5c8430f1 Update man pages 2015-05-24 19:21:24 +09:00
Tatsuhiro Tsujikawa 6bd728b3c2 Update man pages 2015-05-16 00:10:41 +09:00
Tatsuhiro Tsujikawa fe39ec8697 doc: Update Resources 2015-05-15 23:36:51 +09:00
Tatsuhiro Tsujikawa 0b27f005e0 Merge branch 'master' into v1.0.0
Conflicts:
	src/HttpServer.cc
2015-05-15 23:24:19 +09:00
Tatsuhiro Tsujikawa 92a20c76e6 Update bash_completion 2015-05-15 23:01:33 +09:00
Tatsuhiro Tsujikawa 42ccea806c Update man pages 2015-05-15 23:01:19 +09:00
Tatsuhiro Tsujikawa 0aa17f64c1 doc: Remove 'NGHTTP2_EXTERN' from api doc 2015-05-13 23:39:48 +09:00
Tatsuhiro Tsujikawa 91c8f085ef Update man pages 2015-05-13 00:44:37 +09:00
Tatsuhiro Tsujikawa 2f2a7ace81 Fix corresponding upstream source reported in previous commits accordingly 2015-05-12 23:24:18 +09:00
Syohei YOSHIDA 132719f752 Correct misspellings in document 2015-05-12 10:49:42 +09:00
Tatsuhiro Tsujikawa e63d6e490a Merge branch 'master' into v1.0.0
Conflicts:
	lib/nghttp2_option.h
	lib/nghttp2_session.h
	src/HttpServer.cc
2015-05-08 19:21:51 +09:00
Tatsuhiro Tsujikawa 3a46a2c0a4 Update man pages 2015-05-08 17:55:15 +09:00
Tatsuhiro Tsujikawa fbff101165 Update bash_completion 2015-05-08 17:54:51 +09:00
Tatsuhiro Tsujikawa 1a1902350b Update sphinx_rtd_theme 2015-05-07 21:09:57 +09:00
Tatsuhiro Tsujikawa eec65826cf Update man pages 2015-05-07 20:55:10 +09:00
Tatsuhiro Tsujikawa 2620992003 Document about time for connect and time for 1st byte in h2load man page 2015-05-07 18:58:32 +09:00
Viacheslav Biriukov 8f0899a190 mages to images typo 2015-04-30 18:22:51 +03:00
Tatsuhiro Tsujikawa 1ad1fe6005 Merge branch 'master' into v1.0.0 2015-04-28 22:48:34 +09:00
Tatsuhiro Tsujikawa 63630690a8 Fix `make -j3 distcheck` error 2015-04-27 23:52:36 +09:00
Tatsuhiro Tsujikawa dbc613e0d0 Update man pages 2015-04-27 23:09:00 +09:00
Tatsuhiro Tsujikawa df707df21b Update man pages 2015-04-27 22:36:34 +09:00
Tatsuhiro Tsujikawa 2436acbd23 Update doc about h2load flow control 2015-04-27 22:36:03 +09:00
Tatsuhiro Tsujikawa b41835f19b h2load: Effectively disable flow control by setting large window size
Previously h2load used default flow control window as described in
HTTP/2 and SPDY specification.  The window size is 64KiB, which is a
bit small, and cannot utilize full server performance when response
size is not too small.  Basically, we do this kind of benchmarking
test to measure server's throughput, and optimal performance.  Smaller
window certainly degrades performance even in local testing because
server is so fast that it has to wait for WINDOW_UPDATE from h2load.
To make default behaviour suitable for peak performance test, we
decided to disable flow control in h2load by setting large enough
window size.

Most users used h2load without -w or -W options, so they were
implicitly throttled by flow control and the result was affected by
that negatively.  Now flow control is disabled by default, the result
may improve depending on the implementations.
2015-04-27 21:23:01 +09:00
Tatsuhiro Tsujikawa 5937b4b6f7 Merge branch 'master' into v1.0.0 2015-04-19 23:13:38 +09:00
Tatsuhiro Tsujikawa 28bde2cef0 Update bash_completion 2015-04-19 18:11:11 +09:00
Tatsuhiro Tsujikawa a9b54a1bfa Update man pages 2015-04-19 18:10:54 +09:00