Commit Graph

627 Commits

Author SHA1 Message Date
Tatsuhiro Tsujikawa 333dd73a18 Update man pages 2016-03-25 02:15:29 +09:00
Tatsuhiro Tsujikawa 8e84bbd781 Update doc 2016-03-25 02:15:02 +09:00
Tatsuhiro Tsujikawa f6b78a027c Update doc 2016-03-25 01:57:00 +09:00
Tatsuhiro Tsujikawa 4bb88b35ec nghttpx: "*" must match at least one character 2016-03-22 22:40:23 +09:00
Tatsuhiro Tsujikawa cca7e398fd Update doc 2016-03-21 16:11:35 +09:00
Tatsuhiro Tsujikawa 3d04fe2a87 Update doc 2016-03-21 13:08:53 +09:00
Tatsuhiro Tsujikawa c459034ae9 Update doc 2016-03-20 18:28:01 +09:00
Tatsuhiro Tsujikawa 442bd47535 Update bash_completion 2016-03-20 18:15:02 +09:00
Tatsuhiro Tsujikawa 5cea3e227c Update man pages 2016-03-20 18:14:40 +09:00
Tatsuhiro Tsujikawa db0a22e991 Update doc 2016-03-20 18:13:44 +09:00
Peter Wu 7c55c335cc Merge branches 'master' and 'cmake-updated' into cmake
Update to latest master with appropriate cmake changes at the same time.
2016-03-14 17:26:15 +01:00
Peter Wu 2ddb83206b cmake: sync with v1.8.0-63-g37b09f6
Adds missing source files and configure.ac changes since
v1.7.0-93-g093eb51.
2016-03-14 17:20:37 +01:00
Peter Wu b092166bc6 cmake: clean more files, fix python dependency
Remove generated documentation, python and mruby build artifacts.
Note that this does not work for Ninja, Makefile works fine though.
2016-03-13 17:36:03 +01:00
Tatsuhiro Tsujikawa 2a606bae4c Add nghttp2_error_callback to tell application human readable error message 2016-03-13 18:22:52 +09:00
Tatsuhiro Tsujikawa 12dad32890 Add nghttp2_on_header_callback2 2016-03-12 21:13:09 +09:00
Peter Wu bdb6581990 Add CMake-related files to EXTRA_DIST 2016-03-12 01:38:12 +01:00
Tatsuhiro Tsujikawa e453759637 Add nghttp2_option_set_no_auto_ping_ack() option
This option prevents the nghttp2 library from sending PING frame with
ACK flag set in the reply to incoming PING frame.  To allow the
application to send PING with ACK flag set, nghttp2_submit_ping() now
recognizes NGHTTP2_FLAG_PING in its flags parameter.
2016-02-29 23:39:50 +09:00
Tatsuhiro Tsujikawa a21c87d11c Add nghttp2_http2_strerror() to return HTTP/2 error code string 2016-02-29 23:10:20 +09:00
Tatsuhiro Tsujikawa bffc0ec87a Update doc 2016-02-29 01:00:03 +09:00
Tatsuhiro Tsujikawa 1b9b03b68f Update man pages 2016-02-29 00:55:16 +09:00
Tatsuhiro Tsujikawa df6466cfbd nghttpx: Update doc 2016-02-28 23:15:57 +09:00
Tatsuhiro Tsujikawa 1e1752266f Update doc 2016-02-28 00:19:18 +09:00
Tatsuhiro Tsujikawa 887d4d2a41 Update bash_completion 2016-02-25 23:35:44 +09:00
Tatsuhiro Tsujikawa 1c8e625045 Update man pages 2016-02-25 23:35:23 +09:00
Tatsuhiro Tsujikawa 31d4077638 Remove files copied in the rule for apiref.rst target 2016-02-25 23:18:21 +09:00
Tatsuhiro Tsujikawa 34bf153653 Merge branch 'master' into simple-extensions 2016-02-24 23:21:03 +09:00
Tatsuhiro Tsujikawa 95ffb4565f Update nghttpx documentation 2016-02-21 18:20:53 +09:00
Tatsuhiro Tsujikawa f3a415f623 Update nghttpx documentation 2016-02-21 17:47:27 +09:00
Tatsuhiro Tsujikawa 936d4aca1a Update h2load documentation 2016-02-21 17:46:48 +09:00
Tatsuhiro Tsujikawa 216ae0a328 Update nghttpx documentation 2016-02-21 17:36:10 +09:00
Peter Wu 4814d14db5 cmake: fix installing nghttp2_asio.pc, manpages, README.rst 2016-02-16 16:25:50 +01:00
Tatsuhiro Tsujikawa eebed206c9 Add Architecture doc 2016-02-14 18:23:28 +09:00
Peter Wu 15adc23277 cmake: working doc (sphinx-build), out-of-tree! 2016-02-13 20:13:43 +01:00
Peter Wu a6effb4d23 doc: fix out-of-tree doc builds
Fixes multiple errors while making docs:

    Could not import extension sphinxcontrib.rubydomain (exception: No module named 'sphinxcontrib')

and

    ../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'nghttp.1'
    ../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'nghttpd.1'
    ../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'nghttpx.1'
    ../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'h2load.1'
    ../../doc/sources/index.rst:15: WARNING: toctree contains reference to nonexisting document 'programmers-guide'
2016-02-13 20:11:50 +01:00
Tatsuhiro Tsujikawa 5f1866fd6b Update man pages 2016-02-14 00:29:07 +09:00
Tatsuhiro Tsujikawa 8449958425 doc: Mention encryption for memcached connections 2016-02-13 18:50:15 +09:00
David Beitey b8717208c7 Document compiling apps and include h2load in configure 2016-02-10 08:37:43 +10:00
Tatsuhiro Tsujikawa c3a5fe7185 Update bash_completion 2016-02-07 21:24:29 +09:00
Tatsuhiro Tsujikawa c8b6a79225 Update man pages 2016-02-07 21:24:11 +09:00
Tatsuhiro Tsujikawa fc39f2d9d2 Merge branch 'master' into simple-extensions 2016-02-07 21:09:08 +09:00
Tatsuhiro Tsujikawa b3e5d49a3e Update doc 2016-02-07 17:43:30 +09:00
Tatsuhiro Tsujikawa 7ba18df6cf Update bash_completion 2016-01-25 19:44:56 +09:00
Tatsuhiro Tsujikawa 196de5db89 Update man pages 2016-01-25 19:44:41 +09:00
Tatsuhiro Tsujikawa e428bff961 Update man pages 2016-01-19 20:55:08 +09:00
Tatsuhiro Tsujikawa e4816c5ba9 nghttpx: Add clarification of quotes in configuration file 2016-01-16 16:11:41 +09:00
Tatsuhiro Tsujikawa e14da859b6 Merge branch 'master' into simple-extensions 2016-01-11 16:39:35 +09:00
Tatsuhiro Tsujikawa 863addcd5a Update man pages 2016-01-11 16:23:32 +09:00
Tatsuhiro Tsujikawa 0248d979fe Add missing nghttp2_option_set_user_recv_extension_type.rst 2016-01-10 17:08:03 +09:00
Tatsuhiro Tsujikawa 0caefe20ef Merge branch 'master' into simple-extensions 2016-01-09 19:08:28 +09:00
Tatsuhiro Tsujikawa a7ec90506f Happy new year! 2016-01-09 18:28:38 +09:00
Tatsuhiro Tsujikawa fe8998ab5c Update man pages 2015-12-23 22:52:11 +09:00
Tatsuhiro Tsujikawa 5a2d75551d h2load: Remove "(client)" from per-client req/s stat for simplicity 2015-12-19 22:56:10 +09:00
Tatsuhiro Tsujikawa 86505b1c54 Update h2load howto and all manual pages 2015-12-08 23:56:21 +09:00
Tatsuhiro Tsujikawa 9c84f60ba0 Merge branch 'master' into simple-extensions 2015-12-04 23:48:40 +09:00
Tatsuhiro Tsujikawa 6beaf4d9f3 h2load: Add req/s min, max, mean and sd for clients 2015-12-01 23:54:21 +09:00
Tatsuhiro Tsujikawa e01d213636 Update man pages 2015-11-29 19:12:53 +09:00
Tatsuhiro Tsujikawa e1e7840b2c doc: Fix broken layout in ascii art 2015-11-29 19:08:17 +09:00
Tatsuhiro Tsujikawa 12b2e0a2b3 Add nghttp2_session_create_idle_stream() API
See GH-436
2015-11-28 15:23:44 +09:00
Tatsuhiro Tsujikawa 0d52097213 Update bash_completion 2015-11-26 22:25:34 +09:00
Tatsuhiro Tsujikawa 6444f0c5cd Update man pages 2015-11-26 22:25:22 +09:00
Tatsuhiro Tsujikawa aa317c89ea Add API to change stream priority without sending PRIORITY frame
The added API is nghttp2_session_change_stream_priority().  This
provides the same functionality to re-prioritize stream when PRIORITY
frame.  is received, but we do it without PRIORITY frame.  This could
be useful for server to change pushed stream's priority silently.
2015-11-21 18:32:42 +09:00
Tatsuhiro Tsujikawa 72f2c4b272 Add nghttp2_session_check_server_session.rst to APIDOCS 2015-11-21 18:31:39 +09:00
Tatsuhiro Tsujikawa 1753bea692 nghttpx: Support server push from HTTP/2 backend
This commits enables HTTP/2 server push from HTTP/2 backend to be
relayed to HTTP/2 frontend.  To use this feature, --http2-bridge or
--client is required.  Server push via Link header field contiues to
work.
2015-11-16 23:12:25 +09:00
Tatsuhiro Tsujikawa eb4e402aae Merge branch 'master' into simple-extensions 2015-11-14 22:31:52 +09:00
Tatsuhiro Tsujikawa c6ef1c02b9 Switch to clang-format-3.6 2015-11-13 00:53:29 +09:00
Tatsuhiro Tsujikawa 7c613386db Update man pages 2015-11-12 23:14:45 +09:00
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
Tatsuhiro Tsujikawa cfabce6e70 Update man pages 2015-04-17 23:14:23 +09:00
Tatsuhiro Tsujikawa 3bdf78e8af Document nghttp's dependency based priority 2015-04-17 23:06:07 +09:00
Tatsuhiro Tsujikawa 03746884a4 Update man pages 2015-04-10 00:35:00 +09:00
Tatsuhiro Tsujikawa 90bfea77e0 doc: Remove nghttp2_submit_altsvc.rst 2015-04-08 18:12:54 +09:00
Tatsuhiro Tsujikawa cf0576253f Merge branch 'master' into v1.0.0 2015-04-08 18:10:04 +09:00
Tatsuhiro Tsujikawa 9d711f65f7 Fix `make distcheck` 2015-04-08 17:55:23 +09:00
Tatsuhiro Tsujikawa 0eab08a7cf Update bash_completion files 2015-04-08 17:38:55 +09:00
Tatsuhiro Tsujikawa b9c4757d21 Update man pages 2015-04-08 17:36:12 +09:00
Tatsuhiro Tsujikawa 59e3783f3f Update manual entry 2015-04-07 00:19:57 +09:00
Tatsuhiro Tsujikawa d56ecd7414 Add nghttp2_session_consume_{connection,stream} to consume bytes independently
The existing nghttp2_session_consume() affects both connection and
stream level flow control windows.  The new functions only affects
either connection or stream.  There is some interesting use cases.
For example, we may want to pause a stream by not sending
WINDOW_UPDATE, meanwhile we want to continue to process other streams.
In this case, we use nghttp2_session_consume_connection() to tell
library that only connection level window is recovered.  The relevant
discussion: https://code.google.com/p/chromium/issues/detail?id=473259
2015-04-07 00:14:18 +09:00
Tatsuhiro Tsujikawa d0c27d5229 Send 24 bytes client magic byte string by library
Previously nghttp2_session_send() and nghttp2_session_mem_send() did
not send 24 bytes client magic byte string (MAGIC).  We made
nghttp2_session_recv() and nghttp2_session_mem_recv() process MAGIC by
default, so it is natural to make library send MAGIC as well.  This
commit makes nghttp2_session_send() and nghttp2_session_mem_send()
send MAGIC.  This commit also replace "connection preface" with
"client magic", since we call MAGIC as "connection preface" but it is
just a part of connection preface.  NGHTTP2_CLIENT_CONNECTION_PREFACE
macro was replaced with NGHTTP2_CLIENT_MAGIC.  The already deprecated
NGHTTP2_CLIENT_CONNECTION_HEADER macro was removed permanently.
nghttp2_option_set_no_recv_client_preface() was renamed as
nghttp2_option_set_no_recv_client_magic().  NGHTTP2_ERR_BAD_PREFACE
was renamed as NGHTTP2_ERR_BAD_CLIENT_MAGIC.
2015-04-05 23:15:20 +09:00
Tatsuhiro Tsujikawa 9eff511c5e Add nghttp2_send_data_callback to send DATA payload without copying
To avoid buffer copy in nghttp2_data_source_read_callback, this commit
introduces NGHTTP2_DATA_FLAG_NO_COPY and nghttp2_send_data_callback.
By using NGHTTP2_DATA_FLAG_NO_COPY in
nghttp2_data_source_read_callback, application can avoid to copy
application data to given buffer.  Instead, application has to
implement nghttp2_send_data_callback to send complete DATA frame by
itself.  We see noticeable performance increase in nghttpd and
tiny-nghttpd using this new feature.  On the other hand, nghttpx does
not show such difference, probably because buffer copy is not
bottleneck.  Using nghttp2_send_data_callback adds complexity, so it
is recommended to measure the performance to see whether this extra
complexity worth it.
2015-04-04 21:23:50 +09:00
Tatsuhiro Tsujikawa 524a1f9498 Update sphinx_rtd_theme 2015-04-01 23:11:07 +09:00
Tatsuhiro Tsujikawa 28cfae162a Update doc 2015-04-01 23:10:01 +09:00
Tatsuhiro Tsujikawa b0123448a4 python: Add async body generation support 2015-04-01 22:54:31 +09:00
Tatsuhiro Tsujikawa 45c4187d8f doc: Update .gitignore 2015-04-01 01:19:08 +09:00
Tatsuhiro Tsujikawa 87029e05af doc: Split API reference into smaller fine grained files
Previously API reference is gigantic one rst file and it is a bit hard
to use, especially when browsing similar functions.  This commit
splits API reference into smaller fine grained files.  The macros,
enums, types are now in its own file.  Each API function has its own
file now.  API reference doc is now index to above documentation
files.  The apiref-header.rst is renamed as programmers-guide.rst and
becomes standalone document.
2015-04-01 01:13:10 +09:00
Tatsuhiro Tsujikawa 363914c3f7 Mention OCSP stapling in doc 2015-03-31 23:31:24 +09:00
Tatsuhiro Tsujikawa 763293a050 Update man pages 2015-03-31 00:23:12 +09:00
Tatsuhiro Tsujikawa ccea4d42b5 Refactor .gitignore files 2015-03-29 18:40:37 +09:00
Tatsuhiro Tsujikawa d7fdcbb3d6 Update man pages 2015-03-27 00:37:12 +09:00
Tatsuhiro Tsujikawa 03e699e013 Update man pages 2015-03-24 00:04:07 +09:00
Tatsuhiro Tsujikawa b7bda783c5 Update doc 2015-03-21 23:09:17 +09:00
Tatsuhiro Tsujikawa ef581e94bb Update man pages 2015-03-14 18:52:50 +09:00
Tatsuhiro Tsujikawa 5789987ca3 Update doc 2015-03-11 00:16:29 +09:00
Tatsuhiro Tsujikawa 4236fa603f Document asio linking 2015-03-07 15:55:47 +09:00
Tatsuhiro Tsujikawa 76eb3193ab Update documents using updated libnghttp2_asio API, including client API 2015-03-07 03:12:13 +09:00
Tatsuhiro Tsujikawa 94d6320376 Update man pages 2015-02-27 00:57:13 +09:00
Tatsuhiro Tsujikawa c6d019da5f Update doc 2015-02-24 23:53:12 +09:00
Tatsuhiro Tsujikawa 1646352f3c Update doc 2015-02-24 14:48:58 +09:00
Tatsuhiro Tsujikawa c5c58ccd78 Add note for nghttpx UNIX domain socket support 2015-02-22 18:23:09 +09:00
Tatsuhiro Tsujikawa 1468bcd7b4 Update man pages 2015-02-22 18:10:55 +09:00
Tatsuhiro Tsujikawa a55a080b9c Update man pages 2015-02-22 18:02:57 +09:00
Tatsuhiro Tsujikawa e45c523dc7 Add nghttp2_option_set_no_http_messaging() API function
This API function with nonzero |val| parameter disables HTTP Messaging
validation in nghttp2 library, so that application can use nghttp2
library for non-HTTP use.
2015-02-20 23:26:56 +09:00
Tatsuhiro Tsujikawa dec115cff3 Document HTTP Messaging enforcement performed by nghttp2 library 2015-02-20 23:06:14 +09:00
Tatsuhiro Tsujikawa ba9ea1831c Update man pages 2015-02-15 13:07:23 +09:00
Tatsuhiro Tsujikawa a8889971db doc: Make html rule html-local 2015-02-15 12:18:13 +09:00
Tatsuhiro Tsujikawa 1fbaae837c Sort sphix theme files 2015-02-15 12:13:36 +09:00
Tatsuhiro Tsujikawa e8c294b701 Add bash_completion files for nghttp, nghttpd, nghttpx and h2load 2015-02-15 12:05:27 +09:00
Tatsuhiro Tsujikawa 16475f6613 Update doc 2015-02-12 23:04:21 +09:00
Tatsuhiro Tsujikawa 75d7e5abe0 Update man pages 2015-02-08 17:48:18 +09:00
Tatsuhiro Tsujikawa b01d0c88fe Document nghttpx server push feature 2015-02-08 17:13:36 +09:00
Tatsuhiro Tsujikawa a14c614c10 Document use case of --no-host-rewrite 2015-02-04 01:43:48 +09:00
Tatsuhiro Tsujikawa 928b49a916 Update man pages 2015-02-01 18:33:24 +09:00
Tatsuhiro Tsujikawa 267f877255 Update man pages 2015-02-01 18:19:16 +09:00
Tatsuhiro Tsujikawa e9eae3fb61 doc: Add output section to h2load man page 2015-02-01 16:36:58 +09:00
Tatsuhiro Tsujikawa 4b0b036d3b Update man pages 2015-01-29 23:29:52 +09:00
Tatsuhiro Tsujikawa 01313c1241 Update man pages 2015-01-25 23:00:43 +09:00
Tatsuhiro Tsujikawa 82cd23e40b Update man pages 2015-01-25 21:49:12 +09:00
Tatsuhiro Tsujikawa 18d42b411b Update man pages 2015-01-16 00:10:16 +09:00
Tatsuhiro Tsujikawa bdfb2b9a0d Update man pages 2015-01-11 19:03:45 +09:00
Tatsuhiro Tsujikawa 1164e931c5 Use clang for android build
With androideabi-4.9, android build now supports threading.
2015-01-11 18:50:54 +09:00
Tatsuhiro Tsujikawa 0e8afdb050 Add extra doc to FILES section in nghttpx man pages 2015-01-11 17:34:43 +09:00
Tatsuhiro Tsujikawa 23119a6f12 Update sphinx_rtd_theme 2015-01-11 17:20:46 +09:00
Tatsuhiro Tsujikawa 8001f226b9 Update instruction and Dockerfile to build android binary 2015-01-11 17:04:50 +09:00
Tatsuhiro Tsujikawa fe750240c8 Update doc about nghttpx feature 2015-01-10 17:12:24 +09:00
Tatsuhiro Tsujikawa a3dcf1e004 Produce man pages using sphinx
Previously to create manual page for bundled programs, we use help2man
to create man page from program's help output.  Then our man2rst.py
script converts man page to rst document.  Sphinx generates html from
rst documents.

Now help2rst.py produces rst document from programs output.  We use
Sphinx solely to produce both man pages and html files.
2015-01-10 00:37:42 +09:00
Tatsuhiro Tsujikawa ad57435953 Update man pages 2015-01-07 01:40:55 +09:00
Tatsuhiro Tsujikawa 21b48d24e4 Remove altsvc 2014-12-07 23:11:54 +09:00
Tatsuhiro Tsujikawa e13c9102b8 Update man pages 2014-12-06 23:03:50 +09:00
Tatsuhiro Tsujikawa 14d8894b40 Update doc 2014-12-06 23:00:04 +09:00
Tatsuhiro Tsujikawa 381488a9bd doc: Add link to nghttp2.org 2014-12-03 23:14:44 +09:00
Tatsuhiro Tsujikawa 0cbc78656e building-android-binary.rst: Highlight sh code 2014-12-03 23:09:16 +09:00
Tatsuhiro Tsujikawa ed1ea91a6f Update man pages 2014-11-30 23:14:02 +09:00
Tatsuhiro Tsujikawa 30499005f8 Reformat source code in libnghttp2_asio.rst 2014-11-30 21:26:13 +09:00
Tatsuhiro Tsujikawa f2cd057e89 Update tutorial 2014-11-30 21:10:59 +09:00
Tatsuhiro Tsujikawa 1915408096 doc: Add language attribute in asio_http2.h.rst.in 2014-11-28 02:01:59 +09:00
Tatsuhiro Tsujikawa 0a406eab94 Add contribution guidelines 2014-11-27 23:56:29 +09:00
Andy Davies 4cf7b3cebd Fixed minor typo
turotial -> tutorial
2014-11-25 10:03:10 +00:00
Tatsuhiro Tsujikawa 8f22ff3032 Update man pages 2014-11-24 15:27:41 +09:00
Tatsuhiro Tsujikawa c59ffa09e0 Update man pages 2014-11-08 22:55:24 +09:00
Tatsuhiro Tsujikawa 14e56fcd81 Update man pages 2014-10-31 00:11:38 +09:00
Tatsuhiro Tsujikawa 0ef99b90d9 asio-lib: Make request_cb take const ref and use int64_t as http_date arg 2014-10-28 01:01:48 +09:00
Tatsuhiro Tsujikawa f70c142e10 doc: Remove note about legacy NULL concatenation of header field 2014-10-28 00:39:46 +09:00
Tatsuhiro Tsujikawa b3fbf047b2 Update man pages 2014-10-28 00:35:44 +09:00
Tatsuhiro Tsujikawa 0cd8da2cd9 Update doc 2014-10-28 00:18:28 +09:00
Tatsuhiro Tsujikawa d13ed04b17 Add Dockerfile.android 2014-10-19 21:51:43 +09:00
Tatsuhiro Tsujikawa cfbf907418 doc: Disable smartypants since we use '--' prefix for cmd options 2014-10-18 18:25:37 +09:00
Tatsuhiro Tsujikawa 19c2805d0d Update man pages 2014-10-14 23:30:44 +09:00
Tatsuhiro Tsujikawa f2bfe623fc Update doc 2014-10-09 21:40:26 +09:00
Tatsuhiro Tsujikawa 4e71e9e2e8 Update man pages 2014-09-28 23:34:07 +09:00
Tatsuhiro Tsujikawa 4023c26cf1 Update doc 2014-09-28 23:24:39 +09:00
Tatsuhiro Tsujikawa a0f558ee3c doc: Add example to use nghttp2::asio_http2::server::request::run_task 2014-09-28 16:55:32 +09:00
Tatsuhiro Tsujikawa 937bb9f768 Update doc 2014-09-26 01:25:00 +09:00
Tatsuhiro Tsujikawa c27ec6f57b doc: Add doc how to enable multi threading in libnghttp2_asio 2014-09-24 00:45:40 +09:00
Tatsuhiro Tsujikawa 83728219db Update doc 2014-09-24 00:45:40 +09:00
Tatsuhiro Tsujikawa 6fc12caa6d Just link to github releases page for released versions 2014-09-14 22:46:59 +09:00
Tatsuhiro Tsujikawa d00d4d647d Compile with android NDK r10b 32bit target
Android does not have _Exit.  We detect this and use _exit instead.
clang-3.4 has an issue around undefined reference to
__atomic_fetch_add_4, so we stick to gcc-4.8 for now.
2014-09-14 21:32:53 +09:00
Tatsuhiro Tsujikawa 5ff73de195 libevent-server: Use nghttp2_option_set_recv_client_preface() 2014-09-13 21:24:45 +09:00
Tatsuhiro Tsujikawa 0da0140026 Update man pages 2014-09-11 00:31:02 +09:00
Tatsuhiro Tsujikawa 340b52da84 Update man pages 2014-08-30 00:15:31 +09:00
Tatsuhiro Tsujikawa 0af71ee6be Update sphinx_rtd_theme 2014-08-30 00:07:48 +09:00
Tatsuhiro Tsujikawa 3daa6f2c30 doc: Update tutorials 2014-08-25 21:24:04 +09:00
Tatsuhiro Tsujikawa 2b4bd57c7f doc: Add building-android-binary document 2014-08-17 19:15:19 +09:00
Tatsuhiro Tsujikawa 1b8ad61779 doc: Add note how to re-open log files in nghttpx 2014-08-16 23:00:35 +09:00
Tatsuhiro Tsujikawa ede801d099 doc: Update man pages 2014-08-16 22:54:15 +09:00
Tatsuhiro Tsujikawa 9649b2d346 doc: Fix typo 2014-08-16 22:53:12 +09:00
Tatsuhiro Tsujikawa bf13d91264 nghttpx: Add hot deploy feature
nghttpx supports hot deploy feature using signals.  The host deploy in
nghttpx is multi step process.  First send USR2 signal to nghttpx
process.  It will do fork and execute new executable, using same
command-line arguments and environment variables.  At this point, both
current and new processes can accept requests.  To gracefully shutdown
current process, send QUIT signal to current nghttpx process.  When
all existing frontend connections are done, the current process will
exit.  At this point, only new nghttpx process exists and serves
incoming requests.
2014-08-13 00:43:54 +09:00
Tatsuhiro Tsujikawa 11fa71ba6c Update doc 2014-08-10 18:05:24 +09:00
Daniel Stenberg 2e0775d506 tutorial-server.rst: language
I went through and fixed the English and grammar somwhat
2014-08-01 10:50:23 +02:00
Tatsuhiro Tsujikawa 8838f666cb Update doc 2014-07-31 23:16:52 +09:00
Tatsuhiro Tsujikawa 8d29710393 Update man pages 2014-07-23 00:47:33 +09:00
Tatsuhiro Tsujikawa 0a2149f322 Update man pages 2014-07-18 21:26:32 +09:00
Tatsuhiro Tsujikawa 25326b40db doc: Generate HTML version manual page from manpage 2014-07-09 00:38:43 +09:00
Tatsuhiro Tsujikawa 2f91a7f603 Update doc 2014-07-01 00:26:02 +09:00
Tatsuhiro Tsujikawa a7501609e8 doc: Fix python-apiref.rst is not generated in distribution 2014-06-29 23:57:18 +09:00
Tatsuhiro Tsujikawa 8235bb136b doc: Add HPACK API tutorial 2014-06-29 23:45:49 +09:00
Tatsuhiro Tsujikawa 48c8c89a3f Add Rewriting location header field section to nghttpx how-to 2014-06-29 00:17:06 +09:00
Tatsuhiro Tsujikawa 305efe4181 Update doc 2014-06-28 00:25:23 +09:00
Tatsuhiro Tsujikawa 451c7d957d doc: Add h2load-howto.rst 2014-06-27 00:05:49 +09:00
Tatsuhiro Tsujikawa 15a7b0414c Update doc 2014-06-26 23:24:08 +09:00
Tatsuhiro Tsujikawa 323c3b4225 doc: Update tutorial 2014-06-18 13:14:07 +09:00
Tatsuhiro Tsujikawa 6cb971ee7b doc: Update reference 2014-06-18 12:15:15 +09:00
Tatsuhiro Tsujikawa 1cbb5a3d8f Update tutorial 2014-06-14 22:47:56 +09:00
Tatsuhiro Tsujikawa 7146954de2 Update man pages 2014-06-02 22:36:22 +09:00
Tatsuhiro Tsujikawa 453e12cd1f Update man pages 2014-05-16 23:54:09 +09:00
Tatsuhiro Tsujikawa ec30af9117 Update sphinx_rtd_theme to 54a48b1726ed602c9b5416ee46c639462ec315fe 2014-05-16 00:36:06 +09:00
Tatsuhiro Tsujikawa 03e2dabea9 doc: Add Python API doc 2014-05-13 21:46:39 +09:00
Tatsuhiro Tsujikawa f2bb7947ee Update doc 2014-05-10 23:22:06 +09:00
Tatsuhiro Tsujikawa f131705ba4 Add h2load.1 dev version for now to `make` happy 2014-05-10 00:34:56 +09:00
Tatsuhiro Tsujikawa 6a70584459 doc: Add h2load man page 2014-05-10 00:19:57 +09:00
Tatsuhiro Tsujikawa 29d2386f13 Update doc 2014-05-08 00:59:06 +09:00
Tatsuhiro Tsujikawa 48fc0c04bc doc: Update tutorial-client.rst 2014-05-08 00:11:36 +09:00
Tatsuhiro Tsujikawa 1d5a1b895b doc: Use autoconf template nghttpx-howto.rst.in properly 2014-04-20 23:42:15 +09:00
Tatsuhiro Tsujikawa e6fdb3418d doc: Add nghttpx-howto.rst 2014-04-20 23:35:07 +09:00
Tatsuhiro Tsujikawa 15e8d0de7b Update tutorial 2014-04-05 18:04:21 +09:00
Tatsuhiro Tsujikawa b671375abc doc: Update tutorial 2014-04-03 15:22:22 +09:00
Tatsuhiro Tsujikawa 334658044e Update tutorial 2014-03-30 21:08:04 +09:00
Tatsuhiro Tsujikawa ab2dc5967d Replace HTTP/2.0 with HTTP/2 2014-03-30 19:26:37 +09:00
Tatsuhiro Tsujikawa abdbd29d5f Update doc 2014-02-27 00:01:35 +09:00
Tatsuhiro Tsujikawa 46f5d4b1c4 examples: Check stream_data is null 2014-02-20 21:30:05 +09:00
Tatsuhiro Tsujikawa 649586fff6 Add nghttp2_session_mem_send() API function
This function behaves like nghttp2_session_send(), but it does not
use nghttp2_send_callback to send data. Instead, it returns the
serialized data to trasmit and its length to the caller.
2014-02-18 23:23:11 +09:00
Tatsuhiro Tsujikawa a9991133af Add man page generation script using help2man 2014-02-16 19:44:28 +09:00
Tatsuhiro Tsujikawa c7c496b029 Update doc 2014-02-16 15:30:46 +09:00