From edd7420898093c9bb97618abecb086d9bd17fe9f Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Sun, 4 Aug 2013 18:30:37 +0900 Subject: [PATCH] Update doc --- _sources/apiref.txt | 115 ++++++++++++++++++++---------------------- _sources/index.txt | 1 + apiref.html | 119 ++++++++++++++++++++------------------------ genindex.html | 16 +----- index.html | 1 + objects.inv | Bin 1842 -> 1819 bytes package_README.html | 5 +- searchindex.js | 2 +- 8 files changed, 113 insertions(+), 146 deletions(-) diff --git a/_sources/apiref.txt b/_sources/apiref.txt index 327ca2bd..d9649aba 100644 --- a/_sources/apiref.txt +++ b/_sources/apiref.txt @@ -402,10 +402,11 @@ Types (structs, unions and typedefs) .. member:: uint8_t *name - The *name* byte string, which is not necessarily NULL terminated. + The *name* byte string, which is not necessarily ``NULL`` + terminated. .. member:: uint8_t *value - The *value* byte string, which is not necessarily NULL + The *value* byte string, which is not necessarily ``NULL`` terminated. .. member:: uint16_t namelen @@ -614,21 +615,6 @@ Types (structs, unions and typedefs) The window size increment. -.. type:: nghttp2_mem_chunk - - - The structure to hold chunk of memory. - - TODO Drop this if it is not used anymore. - - .. member:: uint8_t *data - - The pointer to the data. - .. member:: size_t length - - The length of the data. - - .. type:: nghttp2_frame @@ -1134,24 +1120,24 @@ Functions different in each other. If called from client side, the *settings_payload* must be the - value sent in HTTP2-Settings header field and must be decoded by - base64url decoder. The *settings_payloadlen* is the length of + value sent in ``HTTP2-Settings`` header field and must be decoded + by base64url decoder. The *settings_payloadlen* is the length of *settings_payload*. The *settings_payload* is unpacked and its setting values will be submitted using - nghttp2_submit_settings(). This means that the client application + `nghttp2_submit_settings()`. This means that the client application code does not need to submit SETTINGS by itself. The stream with stream ID=1 is opened and the *stream_user_data* is used for its stream_user_data. The opened stream becomes half-closed (local) state. If called from server side, the *settings_payload* must be the - value received in HTTP2-Settings header field and must be decoded - by base64url decoder. The *settings_payloadlen* is the length of - *settings_payload*. It is treated as if the SETTINGS frame with - that payload is received. Thus, callback functions for the - reception of SETTINGS frame will be invoked. The stream with stream - ID=1 is opened. The *stream_user_data* is ignored. The opened - stream becomes half-closed (remote). + value received in ``HTTP2-Settings`` header field and must be + decoded by base64url decoder. The *settings_payloadlen* is the + length of *settings_payload*. It is treated as if the SETTINGS + frame with that payload is received. Thus, callback functions for + the reception of SETTINGS frame will be invoked. The stream with + stream ID=1 is opened. The *stream_user_data* is ignored. The + opened stream becomes half-closed (remote). This function returns 0 if it succeeds, or one of the following negative error codes: @@ -1163,8 +1149,8 @@ Functions :macro:`NGHTTP2_ERR_PROTO` The stream ID 1 is already used or closed; or is not available; or the *settings_payload* does not include both - NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS and - NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE. + :macro:`NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS` and + :macro:`NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE`. .. function:: ssize_t nghttp2_pack_settings_payload(uint8_t *buf, nghttp2_settings_entry *iv, size_t niv) @@ -1173,10 +1159,10 @@ Functions entry pointed by *iv* array is given by the *niv*. This function may reorder the pointers in *iv*. The *buf* must have enough region to hold serialized data. The required space for the *niv* entries - are 8**niv* bytes. This function is used mainly for creating - SETTINGS payload to be sent with HTTP2-Settings header field in + are ``8*niv`` bytes. This function is used mainly for creating + SETTINGS payload to be sent with ``HTTP2-Settings`` header field in HTTP Upgrade request. The data written in *buf* is not still - base64url encoded and the application is responsible to do that. + base64url encoded and the application is responsible for encoding. This function returns the number of bytes written in *buf*, or one of the following negative error codes: @@ -1196,8 +1182,7 @@ Functions Submits HEADERS frame and optionally one or more DATA frames. The *pri* is priority of this request. 0 is the highest priority - value. Use `nghttp2_session_get_pri_lowest()` to know the lowest - priority value for this *session*. + value and :macro:`NGHTTP2_PRI_LOWEST` is the lowest value. The *nv* contains the name/value pairs. For i >= 0, ``nv[2*i]`` contains a pointer to the name string and ``nv[2*i+1]`` contains a @@ -1250,8 +1235,8 @@ Functions negative error codes: :macro:`NGHTTP2_ERR_INVALID_ARGUMENT` - The *pri* is invalid; or the *nv* includes empty name or NULL - value. + The *pri* is invalid; or the *nv* includes empty name or + ``NULL`` value. :macro:`NGHTTP2_ERR_NOMEM` Out of memory. @@ -1285,7 +1270,7 @@ Functions negative error codes: :macro:`NGHTTP2_ERR_INVALID_ARGUMENT` - The *nv* includes empty name or NULL value. + The *nv* includes empty name or ``NULL`` value. :macro:`NGHTTP2_ERR_NOMEM` Out of memory. @@ -1296,13 +1281,17 @@ Functions following values: * :macro:`NGHTTP2_FLAG_END_STREAM` + * :macro:`NGHTTP2_FLAG_END_HEADERS` * :macro:`NGHTTP2_FLAG_PRIORITY` If *flags* includes :macro:`NGHTTP2_FLAG_END_STREAM`, this frame has - END_STREAM flag set. + END_STREAM flag set. The library does not support header + continuation and the HEADERS frame always has + :macro:`NGHTTP2_FLAG_END_HEADERS` flag set regardless of the *flags* + value. If the *stream_id* is -1, this frame is assumed as request (i.e., - first HEADERS frame which opens new stream). In this case, the + request HEADERS frame which opens new stream). In this case, the actual stream ID is assigned just before the frame is sent. For response, specify stream ID in *stream_id*. @@ -1323,15 +1312,15 @@ Functions state from idle or reserved to open. This function is low-level in a sense that the application code can - specify flags and the Associated-To-Stream-ID directly. For usual - HTTP request, `nghttp2_submit_request()` is useful. + specify flags directly. For usual HTTP request, + `nghttp2_submit_request()` is useful. This function returns 0 if it succeeds, or one of the following negative error codes: :macro:`NGHTTP2_ERR_INVALID_ARGUMENT` - The *pri* is invalid; or the *assoc_stream_id* is invalid; or - the *nv* includes empty name or NULL value. + The *pri* is invalid; or the *nv* includes empty name or + ``NULL`` value. :macro:`NGHTTP2_ERR_NOMEM` Out of memory. @@ -1383,9 +1372,7 @@ Functions Stores local settings and submits SETTINGS frame. The *iv* is the pointer to the array of :type:`nghttp2_settings_entry`. The *niv* - indicates the number of :type:`nghttp2_settings_entry`. The *flags* - is bitwise-OR of one or more values from - :type:`nghttp2_settings_flag`. + indicates the number of :type:`nghttp2_settings_entry`. This function does not take ownership of the *iv*. This function copies all the elements in the *iv*. @@ -1401,7 +1388,10 @@ Functions .. function:: int nghttp2_submit_push_promise(nghttp2_session *session, uint8_t flags, int32_t stream_id, const char **nv) - Submits PUSH_PROMISE frame. The *flags* is currently ignored. + Submits PUSH_PROMISE frame. The *flags* is currently ignored and + the resulting PUSH_PROMISE frame always has + :macro:`NGHTTP2_FLAG_END_PUSH_PROMISE` flag set due to the lack of + header continuation support in the library. The *stream_id* must be client initiated stream ID. @@ -1419,7 +1409,7 @@ Functions stream ID must be strictly increasing, the promised stream ID cannot be known until it is about to sent. To know the promised stream ID, the application can use - :member:`nghttp2_session_callbacks.before_ctrl_send_callback`. This + :member:`nghttp2_session_callbacks.before_frame_send_callback`. This callback is called just before the frame is sent. For PUSH_PROMISE frame, the argument frame has the promised stream ID assigned. @@ -1427,7 +1417,7 @@ Functions negative error codes: :macro:`NGHTTP2_ERR_INVALID_ARGUMENT` - The *nv* includes empty name or NULL value. + The *nv* includes empty name or ``NULL`` value. :macro:`NGHTTP2_ERR_NOMEM` Out of memory. @@ -1438,10 +1428,10 @@ Functions received PING frame. The library automatically submits PING frame in this case. - If the *opaque_data* is non NULL, then it should point to the 8 + If the *opaque_data* is non ``NULL``, then it should point to the 8 bytes array of memory to specify opaque data to send with PING - frame. If the *opaque_data* is NULL, 8 zero bytes will be sent as - opaque data. + frame. If the *opaque_data* is ``NULL``, zero-cleared 8 bytes will + be sent as opaque data. This function returns 0 if it succeeds, or one of the following negative error codes: @@ -1454,12 +1444,12 @@ Functions Submits GOAWAY frame with the error code *error_code*. - If the *opaque_data* is not NULL and opaque_data_len is not zero, - those data will be sent as additional debug data. The library - makes a copy of the memory region pointed by *opaque_data* with the - length *opaque_data_len*, so the caller does not need to keep this - memory after the return of this function. If the *opaque_data_len* - is 0, the *opaque_data* could be NULL. + If the *opaque_data* is not ``NULL`` and *opaque_data_len* is not + zero, those data will be sent as additional debug data. The + library makes a copy of the memory region pointed by *opaque_data* + with the length *opaque_data_len*, so the caller does not need to + keep this memory after the return of this function. If the + *opaque_data_len* is 0, the *opaque_data* could be ``NULL``. This function returns 0 if it succeeds, or one of the following negative error codes: @@ -1473,8 +1463,8 @@ Functions Submits WINDOW_UPDATE frame. The effective range of the *window_size_increment* is [1, (1 << 31)-1], inclusive. But the application must be responsible to keep the resulting window size - <= (1 << 31)-1. If NGHTTP2_FLAG_END_FLOW_CONTROL bit set in the - *flags*, 0 can be specified in the *window_size_increment*. In + <= (1 << 31)-1. If :macro:`NGHTTP2_FLAG_END_FLOW_CONTROL` bit set in + the *flags*, 0 can be specified in the *window_size_increment*. In fact, if this flag is set, the value specified in the *window_size_increment* is ignored. @@ -1482,8 +1472,9 @@ Functions negative error codes: :macro:`NGHTTP2_ERR_INVALID_ARGUMENT` - The *delta_window_size* is 0 or negative if - NGHTTP2_FLAG_END_FLOW_CONTROL bit is not set in *flags*. + The *delta_window_size* is 0 or negative and + :macro:`NGHTTP2_FLAG_END_FLOW_CONTROL` bit is not set in + *flags*. :macro:`NGHTTP2_ERR_STREAM_CLOSED` The stream is already closed or does not exist. :macro:`NGHTTP2_ERR_NOMEM` diff --git a/_sources/index.txt b/_sources/index.txt index c29c6607..6d99c4c5 100644 --- a/_sources/index.txt +++ b/_sources/index.txt @@ -21,3 +21,4 @@ Resources --------- * http://tools.ietf.org/html/draft-ietf-httpbis-http2-04 +* http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-01 diff --git a/apiref.html b/apiref.html index 92537c49..4ebc1569 100644 --- a/apiref.html +++ b/apiref.html @@ -634,13 +634,14 @@ from the public API.

uint8_t *name
-

The name byte string, which is not necessarily NULL terminated.

+

The name byte string, which is not necessarily NULL +terminated.

uint8_t *value
-

The value byte string, which is not necessarily NULL +

The value byte string, which is not necessarily NULL terminated.

@@ -957,25 +958,6 @@ int32_t window_size_increment -
-
-nghttp2_mem_chunk
-

The structure to hold chunk of memory.

-

TODO Drop this if it is not used anymore.

-
-
-uint8_t *data
-

The pointer to the data.

-
- -
-
-size_t length
-

The length of the data.

-
- -
-
nghttp2_frame
@@ -1573,23 +1555,23 @@ int nghttp2_session_upgrade(HTTP2-Settings header field and must be decoded +by base64url decoder. The settings_payloadlen is the length of settings_payload. The settings_payload is unpacked and its setting values will be submitted using -nghttp2_submit_settings(). This means that the client application +nghttp2_submit_settings(). This means that the client application code does not need to submit SETTINGS by itself. The stream with stream ID=1 is opened and the stream_user_data is used for its stream_user_data. The opened stream becomes half-closed (local) state.

If called from server side, the settings_payload must be the -value received in HTTP2-Settings header field and must be decoded -by base64url decoder. The settings_payloadlen is the length of -settings_payload. It is treated as if the SETTINGS frame with -that payload is received. Thus, callback functions for the -reception of SETTINGS frame will be invoked. The stream with stream -ID=1 is opened. The stream_user_data is ignored. The opened -stream becomes half-closed (remote).

+value received in HTTP2-Settings header field and must be +decoded by base64url decoder. The settings_payloadlen is the +length of settings_payload. It is treated as if the SETTINGS +frame with that payload is received. Thus, callback functions for +the reception of SETTINGS frame will be invoked. The stream with +stream ID=1 is opened. The stream_user_data is ignored. The +opened stream becomes half-closed (remote).

This function returns 0 if it succeeds, or one of the following negative error codes:

@@ -1600,8 +1582,8 @@ negative error codes:

NGHTTP2_ERR_PROTO
The stream ID 1 is already used or closed; or is not available; or the settings_payload does not include both -NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS and -NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE.
+NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS and +NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE.
@@ -1612,10 +1594,10 @@ ssize_t nghttp2_pack_settings_payload(uint8 entry pointed by iv array is given by the niv. This function may reorder the pointers in iv. The buf must have enough region to hold serialized data. The required space for the niv entries -are 8**niv* bytes. This function is used mainly for creating -SETTINGS payload to be sent with HTTP2-Settings header field in +are 8*niv bytes. This function is used mainly for creating +SETTINGS payload to be sent with HTTP2-Settings header field in HTTP Upgrade request. The data written in buf is not still -base64url encoded and the application is responsible to do that.

+base64url encoded and the application is responsible for encoding.

This function returns the number of bytes written in buf, or one of the following negative error codes:

@@ -1636,8 +1618,7 @@ const char* nghttp2_strerror(int l int nghttp2_submit_request(nghttp2_session *session, int32_t pri, const char **nv, const nghttp2_data_provider *data_prd, void *stream_user_data)

Submits HEADERS frame and optionally one or more DATA frames.

The pri is priority of this request. 0 is the highest priority -value. Use nghttp2_session_get_pri_lowest() to know the lowest -priority value for this session.

+value and NGHTTP2_PRI_LOWEST is the lowest value.

The nv contains the name/value pairs. For i >= 0, nv[2*i] contains a pointer to the name string and nv[2*i+1] contains a pointer to the value string. The one beyond last value must be @@ -1685,8 +1666,8 @@ the stream is already opened, negative error codes:

NGHTTP2_ERR_INVALID_ARGUMENT
-
The pri is invalid; or the nv includes empty name or NULL -value.
+
The pri is invalid; or the nv includes empty name or +NULL value.
NGHTTP2_ERR_NOMEM
Out of memory.
@@ -1718,7 +1699,7 @@ END_STREAM flag set.

negative error codes:

NGHTTP2_ERR_INVALID_ARGUMENT
-
The nv includes empty name or NULL value.
+
The nv includes empty name or NULL value.
NGHTTP2_ERR_NOMEM
Out of memory.
@@ -1731,12 +1712,16 @@ int nghttp2_submit_headers(
  • NGHTTP2_FLAG_END_STREAM
  • +
  • NGHTTP2_FLAG_END_HEADERS
  • NGHTTP2_FLAG_PRIORITY
  • If flags includes NGHTTP2_FLAG_END_STREAM, this frame has -END_STREAM flag set.

    +END_STREAM flag set. The library does not support header +continuation and the HEADERS frame always has +NGHTTP2_FLAG_END_HEADERS flag set regardless of the flags +value.

    If the stream_id is -1, this frame is assumed as request (i.e., -first HEADERS frame which opens new stream). In this case, the +request HEADERS frame which opens new stream). In this case, the actual stream ID is assigned just before the frame is sent. For response, specify stream ID in stream_id.

    The pri is priority of this request.

    @@ -1752,14 +1737,14 @@ associated to the stream this frame will open. Therefore it is only used if this frame opens streams, in other words, it changes stream state from idle or reserved to open.

    This function is low-level in a sense that the application code can -specify flags and the Associated-To-Stream-ID directly. For usual -HTTP request, nghttp2_submit_request() is useful.

    +specify flags directly. For usual HTTP request, +nghttp2_submit_request() is useful.

    This function returns 0 if it succeeds, or one of the following negative error codes:

    NGHTTP2_ERR_INVALID_ARGUMENT
    -
    The pri is invalid; or the assoc_stream_id is invalid; or -the nv includes empty name or NULL value.
    +
    The pri is invalid; or the nv includes empty name or +NULL value.
    NGHTTP2_ERR_NOMEM
    Out of memory.
    @@ -1815,9 +1800,7 @@ negative error codes:

    int nghttp2_submit_settings(nghttp2_session *session, const nghttp2_settings_entry *iv, size_t niv)

    Stores local settings and submits SETTINGS frame. The iv is the pointer to the array of nghttp2_settings_entry. The niv -indicates the number of nghttp2_settings_entry. The flags -is bitwise-OR of one or more values from -nghttp2_settings_flag.

    +indicates the number of nghttp2_settings_entry.

    This function does not take ownership of the iv. This function copies all the elements in the iv.

    This function returns 0 if it succeeds, or one of the following @@ -1833,7 +1816,10 @@ negative error codes:

    int nghttp2_submit_push_promise(nghttp2_session *session, uint8_t flags, int32_t stream_id, const char **nv)
    -

    Submits PUSH_PROMISE frame. The flags is currently ignored.

    +

    Submits PUSH_PROMISE frame. The flags is currently ignored and +the resulting PUSH_PROMISE frame always has +NGHTTP2_FLAG_END_PUSH_PROMISE flag set due to the lack of +header continuation support in the library.

    The stream_id must be client initiated stream ID.

    The nv contains the name/value pairs. For i >= 0, nv[2*i] contains a pointer to the name string and nv[2*i+1] contains a @@ -1847,14 +1833,14 @@ prioritized one first and the HTTP/2.0 specification requires the stream ID must be strictly increasing, the promised stream ID cannot be known until it is about to sent. To know the promised stream ID, the application can use -nghttp2_session_callbacks.before_ctrl_send_callback. This +nghttp2_session_callbacks.before_frame_send_callback. This callback is called just before the frame is sent. For PUSH_PROMISE frame, the argument frame has the promised stream ID assigned.

    This function returns 0 if it succeeds, or one of the following negative error codes:

    NGHTTP2_ERR_INVALID_ARGUMENT
    -
    The nv includes empty name or NULL value.
    +
    The nv includes empty name or NULL value.
    NGHTTP2_ERR_NOMEM
    Out of memory.
    @@ -1866,10 +1852,10 @@ int nghttp2_submit_ping(NULL, then it should point to the 8 bytes array of memory to specify opaque data to send with PING -frame. If the opaque_data is NULL, 8 zero bytes will be sent as -opaque data.

    +frame. If the opaque_data is NULL, zero-cleared 8 bytes will +be sent as opaque data.

    This function returns 0 if it succeeds, or one of the following negative error codes:

    @@ -1882,12 +1868,12 @@ negative error codes:

    int nghttp2_submit_goaway(nghttp2_session *session, nghttp2_error_code error_code, uint8_t *opaque_data, size_t opaque_data_len)

    Submits GOAWAY frame with the error code error_code.

    -

    If the opaque_data is not NULL and opaque_data_len is not zero, -those data will be sent as additional debug data. The library -makes a copy of the memory region pointed by opaque_data with the -length opaque_data_len, so the caller does not need to keep this -memory after the return of this function. If the opaque_data_len -is 0, the opaque_data could be NULL.

    +

    If the opaque_data is not NULL and opaque_data_len is not +zero, those data will be sent as additional debug data. The +library makes a copy of the memory region pointed by opaque_data +with the length opaque_data_len, so the caller does not need to +keep this memory after the return of this function. If the +opaque_data_len is 0, the opaque_data could be NULL.

    This function returns 0 if it succeeds, or one of the following negative error codes:

    @@ -1902,16 +1888,17 @@ int nghttp2_submit_window_update(NGHTTP2_FLAG_END_FLOW_CONTROL bit set in +the flags, 0 can be specified in the window_size_increment. In fact, if this flag is set, the value specified in the window_size_increment is ignored.

    This function returns 0 if it succeeds, or one of the following negative error codes:

    NGHTTP2_ERR_INVALID_ARGUMENT
    -
    The delta_window_size is 0 or negative if -NGHTTP2_FLAG_END_FLOW_CONTROL bit is not set in flags.
    +
    The delta_window_size is 0 or negative and +NGHTTP2_FLAG_END_FLOW_CONTROL bit is not set in +flags.
    NGHTTP2_ERR_STREAM_CLOSED
    The stream is already closed or does not exist.
    NGHTTP2_ERR_NOMEM
    diff --git a/genindex.html b/genindex.html index a9b40560..6a203a09 100644 --- a/genindex.html +++ b/genindex.html @@ -425,18 +425,6 @@ -
    nghttp2_mem_chunk (C type) -
    - - -
    nghttp2_mem_chunk.data (C member) -
    - - -
    nghttp2_mem_chunk.length (C member) -
    - -
    NGHTTP2_NO_ERROR (C macro)
    @@ -460,8 +448,6 @@
    nghttp2_nv.valuelen (C member)
    -
    -
    nghttp2_on_data_chunk_recv_callback (C type)
    @@ -470,6 +456,8 @@
    nghttp2_on_data_recv_callback (C type)
    +
    +
    nghttp2_on_data_send_callback (C type)
    diff --git a/index.html b/index.html index 494fe7e7..313890a6 100644 --- a/index.html +++ b/index.html @@ -78,6 +78,7 @@ version 2.0.

    Resources

    diff --git a/objects.inv b/objects.inv index d02317fe0ad12760365555163055d89dfa2335c0..029799af1faae66b5259ae9514f18e614bb9f389 100644 GIT binary patch delta 1056 zcmV+*1mF9z4x0|J^a6i%Uk!a`+l;d=qVHlbBA(seDWb0UR5xn|u~48hAnMoqTkjQy zF}pu;PUCc&h!CO?Q$X9LKmilU&~B^hJ%iTY;^mNEz;X=B@D0J=Mr5KZ*`DzWWyO}g zCTlqT-*|;mL?yA{q@uo^)GC0)b-fvaugECuMNp;j5wT!`vlxHFtDU+aOYs4P`FI97 z3|!_YoR*j6Rl=>u2Ki(y%4;2KB7q=10~>$V(u1oSqSg{wB)`5f{kv3z@{YE!e9mMsc}uJXbvE8(olI-P zLn}s4S#@`{Sqm|%z=<`8p`N=3uFtIk@{k23!49I0O$dQ4jBCudF3$6fs0CI}gFL{^ zk8|CpF8Ow@nGXqY@##dm$o&pv6)5zQ}V-rf^x1~b7BGyx@5T#5>!3LcC4gX zRX%5xpg{jrtYS@Z!5lL5Cl!U*jXtk3cn=x@W0vyH#^8HwPhT3tbAT56zL4*xEI}{4=_S3MX26U7& zN@6fGwn3bXBrf8E7Li6%0r`HecU8^<;|MpW&T6$L4OY9F_0JW8ajG5FqVke_DudOy zL8u@$ht@({6IB*nlPktEDYSdnL`jJ(Uva#6)**%na|&$VcU=*5(g<^eBQe~|ItDnDm}W*6lh z$La9hi!%u^MAJ)jm-ni6&a~xyQ9>#nZ zghYQZ;V9J36fSC}+8qS2Cv_EgAryKqjKP#pQQd!iRpm!P@1+MI=O;T@^Kl4PVZ~e3 z&x6+_lM$?bLiDP~MT=`fG;OCwK~F)#H$3npGK?v4r%_tsOhvxIH_tmI+0|A~u!Xw% zWgs`YMz?tODq^>*daCE3aCnZ8#CzQM^a;E@hKkk8+M`t2043VoH9+r{_1vHV4W)L) a2;LMac-q#dzH;yQN=xSbsQnkd1}D}IbPCx3 delta 1083 zcmV-B1jPHB4zdog^a6i{3=j{r)e?(b5vp!)uP7Nl)y#@ z(>UEGB06Zq6o7Oo65K?RuiJ%sJD~NqP&lLxupGlOd_z#P5l`rL@by9gi4Ou!;2Ld@Oytf8|7|I9lOL{qVAI0 ze!f3wA^;K8lEE`>03hCwXri|7%DqaK)y%&3DK^nrC6RVOud$;>EK~BsfP!+aTXSLp z54vQz5o%RE#&)cvSyet~l}ONkDps+kSYZwsTA7NP?M6#jxfl$Z17oW4CdlA>d+oTy zYq%EL2yT+7DKCFwq+?qiLHSu%vA2*o!nzpiC!*&h-C)T-d_v(L(c4Z-x9u*4C(i9|4)K1^EP0YM1eMz&^ zod*;{n*;#jX}?6R-LhXs0lJb-_8e7aaFYS_-pR$@Y>s~vX= z(y|d{*s!xRr{In)HK3ECQR0Kyv<>29B(o78v?w;33c!eS&8>3W7)Q7{H4>;bim-au ztbeW$j8pxp7L}KTRT<#MO-cp9JG3|2I;yhhD&O%SVrqFbvGg`-LJ707^(Xx&)lHE% zi=TpBLlS?pZ~n?9-TUY57%Rv74_!aLJ@Ld_>smL%-RH!p#ItORsHpc^HA8%4N@4SW z7py-d`EOK#Gr`M?@{Xf=_+H1EW|mUd0bSJ4T>~4?Z-+S&fA#lJz{?OF0nYM3c$CT_ z?ws~rzc2wE2zBS@?P<_=!AA546OKadOcJAJs@;EY0Gnc0Q5S-s_re%V2^E>%msEZf zdO&&tbAGghbw7t-6;`~J{5*I~G8wz-Cq%E2T=c{yEYo&s6!a7{e?tOKBEy&xaT=v1 zPE+I?e6vp|$*#6+f<4^TF9W$PHo76SS5e1Z$x}Uug~M}%B;Mo3r%x_^*@Uwq&r(@K zZPYK&Mn diff --git a/package_README.html b/package_README.html index 2719b39f..3ea1a2af 100644 --- a/package_README.html +++ b/package_README.html @@ -145,9 +145,8 @@ $ make

    The src directory contains HTTP/2.0 client, server and proxy programs.

    nghttp - client

    -

    nghttp is HTTP-default04/2.0 client. It can connect to the -HTTP/2.0 server with prior knowledge, HTTP Upgrade and NPN TLS -extension.

    +

    nghttp is a HTTP/2.0 client. It can connect to the HTTP/2.0 server +with prior knowledge, HTTP Upgrade and NPN TLS extension.

    By default, it uses SSL/TLS connection. Use --no-tls option to disable it.

    It has verbose output mode for framing information. Here is sample diff --git a/searchindex.js b/searchindex.js index 251068f1..7c986150 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({objects:{"":{NGHTTP2_ERR_INVALID_STATE:[0,0,1,""],NGHTTP2_ERR_FRAME_TOO_LARGE:[0,0,1,""],NGHTTP2_ERR_HEADER_COMP:[0,0,1,""],nghttp2_settings_entry:[0,2,1,""],NGHTTP2_INTERNAL_ERROR:[0,0,1,""],NGHTTP2_PRI_LOWEST:[0,0,1,""],nghttp2_on_frame_recv_callback:[0,2,1,""],NGHTTP2_FLAG_PONG:[0,0,1,""],NGHTTP2_CLIENT_CONNECTION_HEADER_LEN:[0,0,1,""],nghttp2_goaway:[0,2,1,""],NGHTTP2_OPT_NO_AUTO_WINDOW_UPDATE:[0,0,1,""],nghttp2_submit_rst_stream:[0,3,1,""],NGHTTP2_ERR_INVALID_FRAME:[0,0,1,""],nghttp2_frame_type:[0,2,1,""],nghttp2_on_data_recv_callback:[0,2,1,""],nghttp2_select_next_protocol:[0,3,1,""],NGHTTP2_ERR_INVALID_HEADER_BLOCK:[0,0,1,""],nghttp2_session_callbacks:[0,2,1,""],NGHTTP2_ERR_PROTO:[0,0,1,""],NGHTTP2_FRAME_TOO_LARGE:[0,0,1,""],nghttp2_submit_window_update:[0,3,1,""],NGHTTP2_ERR_UNSUPPORTED_VERSION:[0,0,1,""],nghttp2_window_update:[0,2,1,""],NGHTTP2_DATA:[0,0,1,""],nghttp2_frame_hd:[0,2,1,""],NGHTTP2_ERR_INVALID_STREAM_STATE:[0,0,1,""],NGHTTP2_ERR_STREAM_ID_NOT_AVAILABLE:[0,0,1,""],NGHTTP2_STREAM_CLOSED:[0,0,1,""],NGHTTP2_SETTINGS_MAX:[0,0,1,""],nghttp2_headers_category:[0,2,1,""],nghttp2_error_code:[0,2,1,""],NGHTTP2_REFUSED_STREAM:[0,0,1,""],nghttp2_on_data_chunk_recv_callback:[0,2,1,""],NGHTTP2_ERR_START_STREAM_NOT_ALLOWED:[0,0,1,""],nghttp2_strerror:[0,3,1,""],nghttp2_gzip_inflate_del:[0,3,1,""],NGHTTP2_ERR_FATAL:[0,0,1,""],nghttp2_submit_goaway:[0,3,1,""],nghttp2_error:[0,2,1,""],NGHTTP2_INITIAL_CONNECTION_WINDOW_SIZE:[0,0,1,""],NGHTTP2_ERR_NOMEM:[0,0,1,""],NGHTTP2_NO_ERROR:[0,0,1,""],NGHTTP2_ERR_DEFERRED:[0,0,1,""],nghttp2_push_promise:[0,2,1,""],NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE:[0,0,1,""],nghttp2_session_get_outbound_queue_size:[0,3,1,""],nghttp2_rst_stream:[0,2,1,""],NGHTTP2_PROTO_VERSION_ID_LEN:[0,0,1,""],NGHTTP2_INITIAL_MAX_CONCURRENT_STREAMS:[0,0,1,""],nghttp2_data_source_read_callback:[0,2,1,""],NGHTTP2_ERR_WOULDBLOCK:[0,0,1,""],nghttp2_session_resume_data:[0,3,1,""],NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE:[0,0,1,""],NGHTTP2_PRI_DEFAULT:[0,0,1,""],nghttp2_session_server_new:[0,3,1,""],NGHTTP2_FLAG_END_PUSH_PROMISE:[0,0,1,""],NGHTTP2_ERR_INVALID_ARGUMENT:[0,0,1,""],nghttp2_submit_push_promise:[0,3,1,""],NGHTTP2_ERR_GOAWAY_ALREADY_SENT:[0,0,1,""],nghttp2_session_mem_recv:[0,3,1,""],nghttp2_flag:[0,2,1,""],NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS:[0,0,1,""],NGHTTP2_HCAT_REQUEST:[0,0,1,""],nghttp2_ping:[0,2,1,""],nghttp2_gzip:[0,2,1,""],NGHTTP2_FLAG_END_STREAM:[0,0,1,""],NGHTTP2_ERR_EOF:[0,0,1,""],NGHTTP2_HCAT_HEADERS:[0,0,1,""],NGHTTP2_SETTINGS:[0,0,1,""],nghttp2_frame:[0,2,1,""],NGHTTP2_ERR_DEFERRED_DATA_EXIST:[0,0,1,""],NGHTTP2_CANCEL:[0,0,1,""],nghttp2_send_callback:[0,2,1,""],NGHTTP2_ERR_INVALID_STREAM_ID:[0,0,1,""],nghttp2_on_frame_send_callback:[0,2,1,""],nghttp2_session_client_new:[0,3,1,""],NGHTTP2_VERSION:[0,0,1,""],nghttp2_session:[0,2,1,""],NGHTTP2_COMPRESSION_ERROR:[0,0,1,""],NGHTTP2_HCAT_PUSH_RESPONSE:[0,0,1,""],nghttp2_submit_headers:[0,3,1,""],nghttp2_recv_callback:[0,2,1,""],nghttp2_session_get_stream_user_data:[0,3,1,""],NGHTTP2_FLAG_PRIORITY:[0,0,1,""],nghttp2_on_data_send_callback:[0,2,1,""],nghttp2_nv:[0,2,1,""],NGHTTP2_FLAG_END_FLOW_CONTROL:[0,0,1,""],nghttp2_on_unknown_frame_recv_callback:[0,2,1,""],NGHTTP2_ERR_STREAM_CLOSED:[0,0,1,""],nghttp2_opt:[0,2,1,""],NGHTTP2_ERR_CALLBACK_FAILURE:[0,0,1,""],nghttp2_on_invalid_frame_recv_callback:[0,2,1,""],NGHTTP2_FLOW_CONTROL_ERROR:[0,0,1,""],nghttp2_session_set_option:[0,3,1,""],NGHTTP2_ERR_STREAM_CLOSING:[0,0,1,""],nghttp2_session_fail_session:[0,3,1,""],NGHTTP2_PROTO_VERSION_ID:[0,0,1,""],nghttp2_settings_id:[0,2,1,""],NGHTTP2_HEADERS:[0,0,1,""],nghttp2_session_send:[0,3,1,""],NGHTTP2_PROTOCOL_ERROR:[0,0,1,""],nghttp2_gzip_inflate:[0,3,1,""],nghttp2_session_upgrade:[0,3,1,""],nghttp2_session_del:[0,3,1,""],nghttp2_settings:[0,2,1,""],nghttp2_on_frame_not_send_callback:[0,2,1,""],nghttp2_submit_data:[0,3,1,""],nghttp2_submit_response:[0,3,1,""],NGHTTP2_CLIENT_CONNECTION_HEADER:[0,0,1,""],NGHTTP2_FLAG_NONE:[0,0,1,""],NGHTTP2_FLAG_END_HEADERS:[0,0,1,""],nghttp2_on_frame_recv_parse_error_callback:[0,2,1,""],nghttp2_submit_settings:[0,3,1,""],NGHTTP2_HCAT_RESPONSE:[0,0,1,""],nghttp2_mem_chunk:[0,2,1,""],nghttp2_priority:[0,2,1,""],nghttp2_session_want_read:[0,3,1,""],NGHTTP2_RST_STREAM:[0,0,1,""],nghttp2_on_stream_close_callback:[0,2,1,""],NGHTTP2_PUSH_PROMISE:[0,0,1,""],nghttp2_data_provider:[0,2,1,""],nghttp2_on_request_recv_callback:[0,2,1,""],nghttp2_session_recv:[0,3,1,""],NGHTTP2_INITIAL_WINDOW_SIZE:[0,0,1,""],NGHTTP2_WINDOW_UPDATE:[0,0,1,""],NGHTTP2_SETTINGS_FLOW_CONTROL_OPTIONS:[0,0,1,""],nghttp2_session_want_write:[0,3,1,""],nghttp2_submit_priority:[0,3,1,""],nghttp2_headers:[0,2,1,""],nghttp2_before_frame_send_callback:[0,2,1,""],NGHTTP2_PING:[0,0,1,""],NGHTTP2_GOAWAY:[0,0,1,""],NGHTTP2_ERR_GZIP:[0,0,1,""],nghttp2_submit_ping:[0,3,1,""],nghttp2_data_source:[0,2,1,""],NGHTTP2_ERR_STREAM_SHUT_WR:[0,0,1,""],NGHTTP2_PRIORITY:[0,0,1,""],nghttp2_submit_request:[0,3,1,""],nghttp2_pack_settings_payload:[0,3,1,""],nghttp2_gzip_inflate_new:[0,3,1,""]},nghttp2_session_callbacks:{on_invalid_frame_recv_callback:[0,1,1,""],before_frame_send_callback:[0,1,1,""],on_stream_close_callback:[0,1,1,""],on_data_chunk_recv_callback:[0,1,1,""],on_unknown_frame_recv_callback:[0,1,1,""],send_callback:[0,1,1,""],nghttp2_on_frame_recv_parse_error_callback:[0,1,1,""],on_frame_send_callback:[0,1,1,""],on_frame_recv_callback:[0,1,1,""],on_data_send_callback:[0,1,1,""],on_frame_not_send_callback:[0,1,1,""],on_request_recv_callback:[0,1,1,""],on_data_recv_callback:[0,1,1,""],recv_callback:[0,1,1,""]},nghttp2_frame:{push_promise:[0,1,1,""],settings:[0,1,1,""],ping:[0,1,1,""],rst_stream:[0,1,1,""],priority:[0,1,1,""],headers:[0,1,1,""],goaway:[0,1,1,""],window_update:[0,1,1,""],hd:[0,1,1,""]},nghttp2_mem_chunk:{length:[0,1,1,""],data:[0,1,1,""]},nghttp2_data_provider:{source:[0,1,1,""],read_callback:[0,1,1,""]},nghttp2_priority:{pri:[0,1,1,""],hd:[0,1,1,""]},nghttp2_settings_entry:{settings_id:[0,1,1,""],value:[0,1,1,""]},nghttp2_window_update:{hd:[0,1,1,""],window_size_increment:[0,1,1,""]},nghttp2_frame_hd:{stream_id:[0,1,1,""],length:[0,1,1,""],type:[0,1,1,""],flags:[0,1,1,""]},nghttp2_ping:{hd:[0,1,1,""]},nghttp2_rst_stream:{error_code:[0,1,1,""],hd:[0,1,1,""]},nghttp2_nv:{valuelen:[0,1,1,""],namelen:[0,1,1,""],name:[0,1,1,""],value:[0,1,1,""]},nghttp2_headers:{nvlen:[0,1,1,""],pri:[0,1,1,""],hd:[0,1,1,""],nva:[0,1,1,""]},nghttp2_goaway:{opaque_data:[0,1,1,""],error_code:[0,1,1,""],opaque_data_len:[0,1,1,""],hd:[0,1,1,""],last_stream_id:[0,1,1,""]},nghttp2_data_source:{fd:[0,1,1,""],ptr:[0,1,1,""]},nghttp2_push_promise:{promised_stream_id:[0,1,1,""],nvlen:[0,1,1,""],nva:[0,1,1,""],hd:[0,1,1,""]},nghttp2_settings:{niv:[0,1,1,""],hd:[0,1,1,""],iv:[0,1,1,""]}},terms:{all:0,code:[0,1],on_unknown_frame_recv_callback:0,illustr:1,nghttp2_err_start_stream_not_allow:0,my_obj:0,lack:1,nghttp2_frame_hd:0,nghttp2_cancel:0,prefix:0,overlap:0,follow:[0,1],ptr:0,categori:0,"const":0,uint8_t:0,unpack:0,indirectli:0,specif:0,send:[0,1],program:[2,1],under:[0,1],sens:0,fatal:0,spec:0,sent:0,sourc:0,string:0,nul:0,"void":0,nghttp2_flag_end_push_promis:0,nghttp2_submit_p:0,failur:0,veri:0,retriev:0,tri:0,nghttp2_on_frame_recv_callback:0,foo:0,level:0,did:0,list:0,nghttp2_headers_categori:0,settings_id:0,concurr:0,optlen:0,refer:[0,2],prepar:0,pleas:1,prevent:0,on_stream_close_callback:0,"0x1":0,direct:1,"0x4":0,zero:0,pass:0,download:1,further:0,port:1,settings_flow_control_opt:0,neg:0,invok:0,current:[0,1],version:[0,1,2],base64url:0,"new":[0,1],net:1,on_invalid_ctrl_recv_callback:0,"public":0,nghttp2_session_resume_data:0,on_ctrl_recv_callback:0,abov:[0,1],gener:[0,1],onli:[0,1],here:[0,1],closur:0,met:0,nghttp2_rst_stream:0,ubuntu:1,nghttp2_opt_no_auto_window_upd:0,depend:0,becom:0,modifi:1,sinc:0,valu:0,nextprotoneg:0,incom:[0,1],remark:[0,2],aug:1,anymor:0,host:[0,1],autoreconf:1,queue:0,prior:1,behav:0,nghttp2_submit_prior:0,aka:[0,1],nghttp2_err_gzip:0,nghttp2_frame:0,nghttp2_err_goaway_already_s:0,appli:0,transit:0,prefer:0,put:0,api:[0,2],org:[0,1,2],instal:1,should:0,"byte":[0,1],select:[0,1],from:[0,1,2],describ:0,would:0,memori:0,upgrad:[0,1],next:[0,1],call:[0,1],asset:1,nghttp2_nv:0,nghttp2_on_invalid_frame_recv_callback:0,nghttp2_version:0,type:[0,1,2],until:0,reorder:0,more:0,goawai:[0,1],nghttp2_set:0,nghttp2_pri_default:0,rst_stream:0,inflater_ptr:0,user_data:0,flag:[0,1],accept:1,nghttp2_submit_window_upd:0,known:0,hold:0,nghttp2_err_wouldblock:0,must:0,endpoint:0,word:0,tunnel:1,nghttp2_settings_id:0,work:1,stream_user_data:0,dev:1,nghttp2_session_fail_sess:0,remain:0,can:[0,1],http2:[0,1,2],could:0,control:0,defer:0,stream:[0,1],give:0,process:0,pad:1,indic:0,abort:0,want:0,onlin:1,nghttp2_header:0,pong:0,nghttp2_err_invalid_stream_st:0,unsign:0,occur:0,nghttp2_settings_flow_control_opt:0,alwai:0,multipl:0,secur:1,nghttp2_session_want_read:0,charset:1,ping:0,nghttp2_flag_non:0,write:1,nghttp2_err_fat:0,pair:0,sever:[0,1],serveraddr:1,reject:0,sec9:0,instead:[0,1],simpl:0,updat:0,nghttp2_on_request_recv_callback:0,npn:[0,1],resourc:[0,2],default04:1,after:0,spdylai:1,nghttp2_session_get_pri_lowest:0,badli:0,mai:0,nghttp2_compression_error:0,alloc:0,autotool:1,nghttp2_err_frame_too_larg:0,opaqu:0,nvlen:0,element:0,issu:0,nghttp2_flag_prior:0,"switch":1,ssize_t:0,anoth:0,order:0,talk:1,includ:[0,2],frontend:1,nghttp2_err_stream_shut_wr:0,hypertext:[2,1],move:0,becaus:0,libcunit1:1,through:1,untouch:0,size_t:0,nghttp2_err_unsupported_vers:0,still:[0,1],mainli:0,paramet:0,typedef:[0,2],fix:1,precondit:0,max_outlen:0,nghttp2_hcat_push_respons:0,window:0,pend:0,nghttp2_err_eof:0,hidden:0,therefor:0,nghttp2_session_send:0,inlen:0,valuelen:0,recept:0,them:0,"return":[0,1],thei:[0,1],nghttp2_push_promis:0,nghttp2_goawai:0,initi:0,"break":0,nghttp2_initial_max_concurrent_stream:0,nghttp2_submit_head:0,promis:0,half:0,nov:1,choic:0,document:[2,1],name:[0,1],nghttp2_err_callback_failur:0,nghttp2_send_callback:0,nghttp2_frame_typ:0,no_error:1,drop:0,achiev:0,nghttp2_flow_control_error:0,mode:1,each:0,debug:0,fulli:0,side:0,trailer:0,mean:0,protocol_error:0,chunk:0,continu:1,nghttp2_err_temporal_callback_failur:0,"static":[0,1],connect:[0,1],http:[0,1,2],beyond:0,todo:0,out:0,space:0,goe:1,req:0,payload:0,end_flow_control:[0,1],etag:1,suitabl:0,on_ctrl_not_send_callback:0,nghttp2_client_connection_header_len:0,got:0,on_frame_not_send_callback:0,recv_callback:0,end_stream:[0,1],proxi:[2,1],state:0,differ:0,free:0,reason:0,base:1,inflat:0,usual:0,releas:0,nghttp2_session_mem_recv:0,nghttp2_flag:0,recv:1,spdy:[0,1],thread:1,befor:0,syn_repli:0,omit:0,openssl:1,keep:0,length:[0,1],place:0,outsid:[0,1],enough:0,assign:0,optval:0,first:[0,1],oper:[0,1],rang:[0,1],directli:0,arrai:0,number:0,yourself:1,nghttp2_protocol_error:0,alreadi:0,messag:0,nghttp2_on_frame_send_callback:0,opaque_data:[0,1],on_frame_recv_callback:0,open:[0,1],primari:0,size:0,prioriti:0,given:0,"long":0,script:1,unknown:0,data_prd:0,nghttp2_session_get_stream_user_data:0,least:[0,1],on_unknown_ctrl_recv_callback:0,necessarili:0,draft:[0,1,2],too:0,similarli:0,nghttp2_frame_too_larg:0,internal_error:0,conveni:0,"final":0,store:0,on_ctrl_send_callback:0,ssl_ctx:0,option:[0,1],tool:[2,1],copi:0,nghttp2_proto_version_id_len:0,specifi:[0,1],nghttp2_client_connection_head:0,github:1,pars:0,termin:[0,1],kind:0,scheme:[0,1],provid:0,remov:0,see:[0,1],structur:0,charact:0,project:1,defat:1,entri:0,nghttp2_session_del:0,read_callback:0,nghttp2_error:0,"function":[0,1,2],window_size_incr:[0,1],respons:[0,1],pri:0,argument:[0,1],packag:1,increment:0,reserv:0,need:[0,1],exclud:0,nghttp2_on_frame_recv_parse_error_callback:0,sat:1,bitwis:0,outbound:0,unexpect:0,callback:0,"0x04":1,"0x00":1,payloadlen:0,note:[0,1],nghttp2_refused_stream:0,exampl:[0,1],take:0,which:[0,1],noth:0,singl:[0,1],opaque_data_len:0,sure:1,unless:0,allow:0,"enum":[0,2],though:1,aaaabaaaagqaaaahaad__w:1,compress:1,settings_max_concurrent_stream:0,nghttp2_hcat_request:0,most:0,nghttp2_flag_pong:0,thi:[0,1,2],nghttp2_before_frame_send_callback:0,nghttp2_error_cod:0,nghttp2_err_stream_id_not_avail:0,don:0,http2_select:0,url:1,doc:1,later:0,request:[0,1],uri:[0,1],doe:0,nghttp2_pack_settings_payload:0,nghttp2_gzip_inflate_new:0,fact:0,on_invalid_frame_recv_callback:0,text:1,hostnam:1,verbos:1,session:0,pkg:1,protocol:[0,1,2],data:[0,1],absolut:0,nghttp2_submit_push_promis:0,nghttp2_submit_rst_stream:0,refused_stream:0,configur:[0,1],apach:1,figur:1,before_ctrl_send_callback:0,nghttp2_err_invalid_stream_id:0,experiment:[2,1],queu:0,local:0,over:1,nghttp2_err_proto:0,syn_stream:0,variou:0,get:[0,1],window_upd:[0,1],outlen:0,end_head:[0,1],ssl:[0,1],settings_initial_window_s:0,cannot:0,nghttp2_data:0,optnam:0,increas:0,utf:1,tatsuhiro:1,requir:[0,1,2],before_frame_send_callback:0,nghttp2_no_error:0,nghttp2_submit_respons:0,bar:0,enabl:1,ietf:[2,1],possibl:0,push_promis:0,method:[0,1],nghttp2_err_header_comp:0,stuff:0,nghttp2_strerror:0,contain:[0,1],nghttp2_window_upd:0,nghttp2_gzip_inflate_del:0,user:[0,1],certif:1,set:[0,1],frame:[0,1],knowledg:1,nghttp2_submit_goawai:0,temporarili:0,result:0,arg:0,fail:0,close:[0,1],analog:0,statu:[0,1,2],correctli:0,vari:[0,1],someth:0,below:0,written:0,bridg:1,nghttp2_flag_end_flow_control:0,assoc_stream_id:0,nghttp2_on_data_chunk_recv_callback:0,nghttp2_initial_connection_window_s:0,accord:0,kei:0,flow:0,extens:1,entir:0,len:0,last_stream_id:[0,1],nghttp2_ping:0,tue:1,addit:0,bodi:0,cf405c:1,last:[0,1],nghttp2_proto_version_id:0,region:0,nghttp2_session_want_writ:0,against:0,tempor:0,etc:[0,1],agent:1,compression_error:0,on_request_recv_callback:0,browser:1,whole:0,nghttp2_data_provid:0,point:0,color:1,int32_t:0,address:1,rfc2616:0,header:[0,1],nghttp2_prioriti:0,non:[0,1],shutdown:0,path:[0,1],cancel:0,nghttp2_on_frame_not_send_callback:0,nghttp2_session:0,assum:0,backend:1,nghttp2_recv_callback:0,union:[0,2],due:0,been:0,nghttp2_on_data_send_callback:0,trigger:0,interpret:0,interest:1,nghttp2_hcat_head:0,date:1,nghttp2_on_unknown_frame_recv_callback:0,nghttp2_err_nomem:0,nghttp2_session_server_new:0,both:0,nghttp2_opt:0,lib_error_cod:0,ani:[0,1],repres:0,those:0,"case":0,multi:1,subsequ:0,nghttp2_settings_initial_window_s:0,zlib:1,sourceforg:1,defin:0,"while":0,behavior:0,error:0,nghttp2_flag_end_stream:0,invoc:0,listen:1,on_data_chunk_recv_callback:0,nghttp2_session_callback:0,helper:0,libxml2:1,squid:1,select_next_proto_cb:0,promised_stream_id:0,itself:0,conf:1,crash:0,flow_control_error:0,ascii:0,pointer:0,frame_too_larg:0,"null":0,develop:[2,1],perform:[0,1],make:[0,1],belong:0,same:0,member:0,pac:1,headlen:0,nghttp2_on_stream_close_callback:0,start:[0,1],complet:0,nghttp2_session_recv:0,context:0,mytyp:0,effect:0,on_ctrl_recv_parse_error_callback:0,nghttp2_err_deferred_data_exist:0,remot:[0,1],moment:1,zlib1g:1,ownership:0,mani:0,build:[2,1],postpon:0,nghttp2_submit_syn_stream:0,niv:[0,1],implement:[0,1,2],"45adabdf282c0":1,lower:0,com:0,thu:0,nghttp:1,without:[0,1],client:[0,1,2],uint32_t:0,resouc:1,error_cod:[0,1],nghttp2_data_sourc:0,left:0,end_push_promis:0,nghttp2_err_def:0,nghttp2_submit_set:0,identifi:0,just:[0,1],nghttp2_on_data_recv_callback:0,send_callback:0,"0x01":1,nghttp2_gzip_infl:0,via:1,multiplex:1,config:1,on_frame_send_callback:0,previous:0,web:1,"0x8":0,struct:[0,2],easi:1,also:0,priorit:0,except:0,identif:0,haz:0,other:0,input:0,on_data_send_callback:0,nghttp2_select_next_protocol:0,gmt:1,applic:[0,1],nvu:1,format:0,read:0,caller:0,period:0,outlen_ptr:0,nghttp2_session_set_opt:0,know:0,nva:0,step:0,bit:0,associ:0,delta_window_s:0,like:[0,1],success:1,arbitrari:0,uint16_t:0,signal:0,manual:1,html:[0,1,2],nghttp2_pri_lowest:0,server:[0,1,2],nghttp2_flag_end_head:0,tlen:0,have:0,output:1,stream_clos:0,www:0,revers:1,settings_payload:0,deal:0,hostport:0,nghttp2_session_client_new:0,some:0,back:0,sampl:1,integ:0,librari:[0,1,2],transmiss:0,nonzero:0,lead:0,nghttp2_data_source_read_callback:0,octet:0,per:0,outgo:0,larg:0,unit:1,condit:0,nghttp2_session_upgrad:0,duplic:0,localhost:1,either:0,machin:1,object:0,run:1,post:0,reach:0,inspect:0,chart:0,settings_payloadlen:0,found:1,peer:0,major:0,nghttp2_session_get_outbound_queue_s:0,src:1,about:0,actual:0,socket:1,commun:1,inlen_ptr:0,nghttp2_gzip:0,chrome:1,idl:0,nghttp2_submit_data:0,nghttp2_settings_max_concurrent_stream:0,ssl_tlsext_err_ok:0,disabl:1,block:[0,1],on_data_recv_callback:0,nghttp2_settings_entri:0,nghttp2_err_invalid_fram:0,deploi:1,encod:[0,1],automat:0,ssl_ctx_set_next_proto_select_cb:0,automak:1,stream_id:[0,1],empti:0,chang:0,inclus:0,git:[0,1,2],nghttp2_hcat_respons:0,wai:[0,1],transfer:[0,1,2],support:[0,1],submit:0,avail:[0,1],intention:0,nghttp2:[0,1,2],nghttp2_err_stream_clos:0,low:0,ipv6:1,forward:1,findproxyforurl:1,strictli:0,ipv4:1,treat:0,lowest:0,head:0,session_ptr:0,gzip:[0,1],form:0,offer:1,jul:1,nghttp2_err_invalid_st:0,content:[2,1],taken:0,link:1,highest:0,buf:0,bug:1,suppli:0,succe:0,nghttp2_internal_error:0,nghttp2_stream_clos:0,"default":[0,1],nghttp2_settings_max:0,access:1,googlecod:0,maximum:0,tell:0,asynchron:0,deafult:1,nghttpx:1,nghttpd:1,inform:1,autoconf:1,libev:1,expect:1,nghttp2_initial_window_s:0,featur:1,shrpx:1,creat:[0,1],"int":0,httpbi:[2,1],descriptor:0,"char":0,incomplet:1,exist:[0,1],file:[0,1],nghttp2_err_invalid_header_block:0,macro:[0,2],nghttp2_mem_chunk:0,googl:1,when:0,detail:0,invalid:0,field:0,valid:[0,1],role:0,nghttp2_err_invalid_argu:0,test:1,you:[0,1],libssl:1,sequenc:0,decod:0,technot:0,libtool:1,alpn:[0,1],debian:1,serial:0,receiv:0,cunit:1,eof:0,algorithm:0,directori:1,reliabl:0,mask:0,nghttp2_settings_flag:0,nghttp2_submit_request:0,namelen:0,portion:0,ignor:0,time:[0,1],push:0,deflat:[0,1],avoid:1},objtypes:{"0":"c:macro","1":"c:member","2":"c:type","3":"c:function"},titles:["API Reference","nghttp2 - HTTP/2.0 C Library","nghttp2 - HTTP/2.0 C Library"],objnames:{"0":["c","macro","C macro"],"1":["c","member","C member"],"2":["c","type","C type"],"3":["c","function","C function"]},filenames:["apiref","package_README","index"]}) \ No newline at end of file +Search.setIndex({objects:{"":{NGHTTP2_ERR_INVALID_STATE:[0,0,1,""],NGHTTP2_ERR_FRAME_TOO_LARGE:[0,0,1,""],NGHTTP2_ERR_HEADER_COMP:[0,0,1,""],nghttp2_settings_entry:[0,2,1,""],NGHTTP2_INTERNAL_ERROR:[0,0,1,""],NGHTTP2_PRI_LOWEST:[0,0,1,""],nghttp2_on_frame_recv_callback:[0,2,1,""],NGHTTP2_FLAG_PONG:[0,0,1,""],NGHTTP2_CLIENT_CONNECTION_HEADER_LEN:[0,0,1,""],nghttp2_goaway:[0,2,1,""],NGHTTP2_OPT_NO_AUTO_WINDOW_UPDATE:[0,0,1,""],nghttp2_submit_rst_stream:[0,3,1,""],NGHTTP2_ERR_INVALID_FRAME:[0,0,1,""],nghttp2_frame_type:[0,2,1,""],nghttp2_on_data_recv_callback:[0,2,1,""],nghttp2_select_next_protocol:[0,3,1,""],NGHTTP2_ERR_INVALID_HEADER_BLOCK:[0,0,1,""],nghttp2_session_callbacks:[0,2,1,""],NGHTTP2_ERR_PROTO:[0,0,1,""],NGHTTP2_FRAME_TOO_LARGE:[0,0,1,""],nghttp2_submit_window_update:[0,3,1,""],NGHTTP2_ERR_UNSUPPORTED_VERSION:[0,0,1,""],nghttp2_window_update:[0,2,1,""],NGHTTP2_DATA:[0,0,1,""],nghttp2_frame_hd:[0,2,1,""],NGHTTP2_ERR_INVALID_STREAM_STATE:[0,0,1,""],NGHTTP2_ERR_STREAM_ID_NOT_AVAILABLE:[0,0,1,""],NGHTTP2_STREAM_CLOSED:[0,0,1,""],NGHTTP2_SETTINGS_MAX:[0,0,1,""],nghttp2_headers_category:[0,2,1,""],nghttp2_error_code:[0,2,1,""],NGHTTP2_REFUSED_STREAM:[0,0,1,""],nghttp2_on_data_chunk_recv_callback:[0,2,1,""],NGHTTP2_ERR_START_STREAM_NOT_ALLOWED:[0,0,1,""],nghttp2_strerror:[0,3,1,""],nghttp2_gzip_inflate_del:[0,3,1,""],NGHTTP2_ERR_FATAL:[0,0,1,""],nghttp2_submit_goaway:[0,3,1,""],nghttp2_error:[0,2,1,""],NGHTTP2_INITIAL_CONNECTION_WINDOW_SIZE:[0,0,1,""],NGHTTP2_ERR_NOMEM:[0,0,1,""],NGHTTP2_NO_ERROR:[0,0,1,""],NGHTTP2_ERR_DEFERRED:[0,0,1,""],nghttp2_push_promise:[0,2,1,""],NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE:[0,0,1,""],nghttp2_session_get_outbound_queue_size:[0,3,1,""],nghttp2_rst_stream:[0,2,1,""],NGHTTP2_PROTO_VERSION_ID_LEN:[0,0,1,""],NGHTTP2_INITIAL_MAX_CONCURRENT_STREAMS:[0,0,1,""],nghttp2_data_source_read_callback:[0,2,1,""],NGHTTP2_ERR_WOULDBLOCK:[0,0,1,""],nghttp2_session_resume_data:[0,3,1,""],NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE:[0,0,1,""],NGHTTP2_PRI_DEFAULT:[0,0,1,""],nghttp2_session_server_new:[0,3,1,""],NGHTTP2_FLAG_END_PUSH_PROMISE:[0,0,1,""],NGHTTP2_ERR_INVALID_ARGUMENT:[0,0,1,""],nghttp2_submit_push_promise:[0,3,1,""],NGHTTP2_ERR_GOAWAY_ALREADY_SENT:[0,0,1,""],nghttp2_session_mem_recv:[0,3,1,""],nghttp2_flag:[0,2,1,""],NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS:[0,0,1,""],NGHTTP2_HCAT_REQUEST:[0,0,1,""],nghttp2_ping:[0,2,1,""],nghttp2_gzip:[0,2,1,""],NGHTTP2_FLAG_END_STREAM:[0,0,1,""],NGHTTP2_ERR_EOF:[0,0,1,""],NGHTTP2_HCAT_HEADERS:[0,0,1,""],NGHTTP2_SETTINGS:[0,0,1,""],nghttp2_frame:[0,2,1,""],NGHTTP2_ERR_DEFERRED_DATA_EXIST:[0,0,1,""],NGHTTP2_CANCEL:[0,0,1,""],nghttp2_send_callback:[0,2,1,""],NGHTTP2_ERR_INVALID_STREAM_ID:[0,0,1,""],nghttp2_on_frame_send_callback:[0,2,1,""],nghttp2_session_client_new:[0,3,1,""],NGHTTP2_VERSION:[0,0,1,""],nghttp2_session:[0,2,1,""],NGHTTP2_COMPRESSION_ERROR:[0,0,1,""],NGHTTP2_HCAT_PUSH_RESPONSE:[0,0,1,""],nghttp2_submit_headers:[0,3,1,""],nghttp2_recv_callback:[0,2,1,""],nghttp2_session_get_stream_user_data:[0,3,1,""],NGHTTP2_FLAG_PRIORITY:[0,0,1,""],nghttp2_on_data_send_callback:[0,2,1,""],nghttp2_nv:[0,2,1,""],NGHTTP2_FLAG_END_FLOW_CONTROL:[0,0,1,""],nghttp2_on_unknown_frame_recv_callback:[0,2,1,""],NGHTTP2_ERR_STREAM_CLOSED:[0,0,1,""],nghttp2_opt:[0,2,1,""],NGHTTP2_ERR_CALLBACK_FAILURE:[0,0,1,""],nghttp2_on_invalid_frame_recv_callback:[0,2,1,""],NGHTTP2_FLOW_CONTROL_ERROR:[0,0,1,""],nghttp2_session_set_option:[0,3,1,""],NGHTTP2_ERR_STREAM_CLOSING:[0,0,1,""],nghttp2_session_fail_session:[0,3,1,""],NGHTTP2_PROTO_VERSION_ID:[0,0,1,""],nghttp2_settings_id:[0,2,1,""],NGHTTP2_HEADERS:[0,0,1,""],nghttp2_session_send:[0,3,1,""],NGHTTP2_PROTOCOL_ERROR:[0,0,1,""],nghttp2_gzip_inflate:[0,3,1,""],nghttp2_session_upgrade:[0,3,1,""],nghttp2_session_del:[0,3,1,""],nghttp2_settings:[0,2,1,""],nghttp2_on_frame_not_send_callback:[0,2,1,""],nghttp2_submit_data:[0,3,1,""],nghttp2_submit_response:[0,3,1,""],NGHTTP2_CLIENT_CONNECTION_HEADER:[0,0,1,""],NGHTTP2_FLAG_NONE:[0,0,1,""],NGHTTP2_FLAG_END_HEADERS:[0,0,1,""],nghttp2_on_frame_recv_parse_error_callback:[0,2,1,""],nghttp2_submit_settings:[0,3,1,""],NGHTTP2_HCAT_RESPONSE:[0,0,1,""],NGHTTP2_PING:[0,0,1,""],nghttp2_priority:[0,2,1,""],nghttp2_session_want_read:[0,3,1,""],NGHTTP2_RST_STREAM:[0,0,1,""],nghttp2_on_stream_close_callback:[0,2,1,""],NGHTTP2_PUSH_PROMISE:[0,0,1,""],nghttp2_data_provider:[0,2,1,""],nghttp2_on_request_recv_callback:[0,2,1,""],nghttp2_session_recv:[0,3,1,""],NGHTTP2_INITIAL_WINDOW_SIZE:[0,0,1,""],NGHTTP2_WINDOW_UPDATE:[0,0,1,""],NGHTTP2_SETTINGS_FLOW_CONTROL_OPTIONS:[0,0,1,""],nghttp2_session_want_write:[0,3,1,""],nghttp2_submit_priority:[0,3,1,""],nghttp2_headers:[0,2,1,""],nghttp2_before_frame_send_callback:[0,2,1,""],NGHTTP2_GOAWAY:[0,0,1,""],NGHTTP2_ERR_GZIP:[0,0,1,""],nghttp2_submit_ping:[0,3,1,""],nghttp2_data_source:[0,2,1,""],NGHTTP2_ERR_STREAM_SHUT_WR:[0,0,1,""],NGHTTP2_PRIORITY:[0,0,1,""],nghttp2_submit_request:[0,3,1,""],nghttp2_pack_settings_payload:[0,3,1,""],nghttp2_gzip_inflate_new:[0,3,1,""]},nghttp2_session_callbacks:{before_frame_send_callback:[0,1,1,""],on_invalid_frame_recv_callback:[0,1,1,""],on_stream_close_callback:[0,1,1,""],on_data_chunk_recv_callback:[0,1,1,""],on_unknown_frame_recv_callback:[0,1,1,""],send_callback:[0,1,1,""],nghttp2_on_frame_recv_parse_error_callback:[0,1,1,""],on_frame_send_callback:[0,1,1,""],on_frame_recv_callback:[0,1,1,""],on_data_send_callback:[0,1,1,""],on_frame_not_send_callback:[0,1,1,""],on_request_recv_callback:[0,1,1,""],on_data_recv_callback:[0,1,1,""],recv_callback:[0,1,1,""]},nghttp2_frame:{push_promise:[0,1,1,""],settings:[0,1,1,""],ping:[0,1,1,""],rst_stream:[0,1,1,""],priority:[0,1,1,""],headers:[0,1,1,""],goaway:[0,1,1,""],window_update:[0,1,1,""],hd:[0,1,1,""]},nghttp2_ping:{hd:[0,1,1,""]},nghttp2_data_provider:{source:[0,1,1,""],read_callback:[0,1,1,""]},nghttp2_priority:{pri:[0,1,1,""],hd:[0,1,1,""]},nghttp2_settings_entry:{settings_id:[0,1,1,""],value:[0,1,1,""]},nghttp2_window_update:{hd:[0,1,1,""],window_size_increment:[0,1,1,""]},nghttp2_frame_hd:{stream_id:[0,1,1,""],length:[0,1,1,""],type:[0,1,1,""],flags:[0,1,1,""]},nghttp2_rst_stream:{error_code:[0,1,1,""],hd:[0,1,1,""]},nghttp2_nv:{valuelen:[0,1,1,""],namelen:[0,1,1,""],name:[0,1,1,""],value:[0,1,1,""]},nghttp2_headers:{nvlen:[0,1,1,""],pri:[0,1,1,""],hd:[0,1,1,""],nva:[0,1,1,""]},nghttp2_goaway:{opaque_data:[0,1,1,""],error_code:[0,1,1,""],opaque_data_len:[0,1,1,""],hd:[0,1,1,""],last_stream_id:[0,1,1,""]},nghttp2_data_source:{fd:[0,1,1,""],ptr:[0,1,1,""]},nghttp2_push_promise:{promised_stream_id:[0,1,1,""],nvlen:[0,1,1,""],nva:[0,1,1,""],hd:[0,1,1,""]},nghttp2_settings:{niv:[0,1,1,""],hd:[0,1,1,""],iv:[0,1,1,""]}},terms:{all:0,code:[0,1],on_unknown_frame_recv_callback:0,illustr:1,nghttp2_err_start_stream_not_allow:0,my_obj:0,lack:[0,1],nghttp2_frame_hd:0,nghttp2_cancel:0,prefix:0,overlap:0,follow:[0,1],ptr:0,categori:0,"const":0,uint8_t:0,unpack:0,specif:0,send:[0,1],program:[2,1],under:[0,1],sens:0,fatal:0,spec:0,sent:0,sourc:0,string:0,nul:0,"void":0,nghttp2_flag_end_push_promis:0,nghttp2_submit_p:0,failur:0,veri:0,retriev:0,tri:0,nghttp2_on_frame_recv_callback:0,foo:0,level:0,did:0,list:0,nghttp2_headers_categori:0,settings_id:0,concurr:0,optlen:0,refer:[0,2],prepar:0,pleas:1,prevent:0,on_stream_close_callback:0,"0x1":0,direct:1,"0x4":0,zero:0,pass:0,download:1,further:0,port:1,settings_flow_control_opt:0,neg:0,invok:0,current:[0,1],version:[0,1,2],base64url:0,"new":[0,1],net:1,on_invalid_ctrl_recv_callback:0,"public":0,nghttp2_session_resume_data:0,on_ctrl_recv_callback:0,abov:[0,1],gener:[0,1],onli:[0,1],here:[0,1],closur:0,met:0,nghttp2_rst_stream:0,ubuntu:1,nghttp2_opt_no_auto_window_upd:0,depend:0,becom:0,modifi:1,sinc:0,valu:0,nextprotoneg:0,incom:[0,1],remark:[0,2],aug:1,host:[0,1],autoreconf:1,queue:0,prior:1,behav:0,nghttp2_submit_prior:0,aka:[0,1],nghttp2_err_gzip:0,nghttp2_frame:0,nghttp2_err_goaway_already_s:0,regardless:0,appli:0,transit:0,prefer:0,put:0,api:[0,2],org:[0,1,2],instal:1,should:0,"byte":[0,1],select:[0,1],from:[0,1,2],describ:0,would:0,memori:0,upgrad:[0,1],next:[0,1],call:[0,1],asset:1,nghttp2_nv:0,nghttp2_on_invalid_frame_recv_callback:0,nghttp2_version:0,type:[0,1,2],until:0,reorder:0,more:0,goawai:[0,1],nghttp2_set:0,nghttp2_pri_default:0,rst_stream:0,inflater_ptr:0,user_data:0,flag:[0,1],accept:1,nghttp2_submit_window_upd:0,known:0,hold:0,nghttp2_err_wouldblock:0,must:0,endpoint:0,word:0,tunnel:1,nghttp2_settings_id:0,work:1,stream_user_data:0,dev:1,nghttp2_session_fail_sess:0,remain:0,can:[0,1],http2:[0,1,2],syn_repli:0,control:0,defer:0,stream:[0,1],give:0,process:0,pad:1,indic:0,abort:0,want:0,onlin:1,nghttp2_header:0,pong:0,nghttp2_err_invalid_stream_st:0,unsign:0,occur:0,nghttp2_settings_flow_control_opt:0,alwai:0,multipl:0,secur:1,nghttp2_session_want_read:0,charset:1,ping:0,nghttp2_flag_non:0,write:1,nghttp2_err_fat:0,pair:0,sever:[0,1],serveraddr:1,reject:0,sec9:0,instead:[0,1],simpl:0,updat:0,nghttp2_on_request_recv_callback:0,npn:[0,1],resourc:[0,2],after:0,spdylai:1,badli:0,mai:0,nghttp2_compression_error:0,alloc:0,autotool:1,nghttp2_err_frame_too_larg:0,opaqu:0,nvlen:0,element:0,issu:0,nghttp2_flag_prior:0,"switch":1,ssize_t:0,anoth:0,order:0,talk:1,includ:[0,2],frontend:1,nghttp2_err_stream_shut_wr:0,hypertext:[2,1],move:0,becaus:0,libcunit1:1,through:1,untouch:0,size_t:0,nghttp2_err_unsupported_vers:0,still:[0,1],mainli:0,paramet:0,typedef:[0,2],fix:1,precondit:0,max_outlen:0,nghttp2_hcat_push_respons:0,window:0,pend:0,nghttp2_err_eof:0,hidden:0,therefor:0,nghttp2_session_send:0,inlen:0,valuelen:0,recept:0,them:0,"return":[0,1],thei:[0,1],nghttp2_push_promis:0,nghttp2_goawai:0,initi:0,"break":0,nghttp2_initial_max_concurrent_stream:0,nghttp2_submit_head:0,promis:0,half:0,nov:1,choic:0,document:[2,1],name:[0,1],nghttp2_err_callback_failur:0,nghttp2_send_callback:0,nghttp2_frame_typ:0,no_error:1,drop:0,achiev:0,nghttp2_flow_control_error:0,mode:1,each:0,debug:0,fulli:0,side:0,trailer:0,mean:0,protocol_error:0,chunk:0,continu:[0,1],nghttp2_err_temporal_callback_failur:0,"static":[0,1],connect:[0,1],http:[0,1,2],beyond:0,out:0,space:0,goe:1,req:0,payload:0,end_flow_control:[0,1],etag:1,suitabl:0,on_ctrl_not_send_callback:0,nghttp2_client_connection_header_len:0,got:0,on_frame_not_send_callback:0,recv_callback:0,end_stream:[0,1],proxi:[2,1],state:0,differ:0,free:0,reason:0,base:1,inflat:0,usual:0,releas:0,nghttp2_session_mem_recv:0,nghttp2_flag:0,recv:1,spdy:[0,1],thread:1,befor:0,could:0,omit:0,openssl:1,keep:0,length:[0,1],place:0,outsid:[0,1],enough:0,assign:0,optval:0,first:[0,1],oper:[0,1],rang:[0,1],directli:0,arrai:0,number:0,yourself:1,nghttp2_protocol_error:0,alreadi:0,least:[0,1],nghttp2_on_frame_send_callback:0,opaque_data:[0,1],on_frame_recv_callback:0,open:[0,1],primari:0,size:0,prioriti:0,given:0,"long":0,script:1,unknown:0,data_prd:0,nghttp2_session_get_stream_user_data:0,messag:0,on_unknown_ctrl_recv_callback:0,necessarili:0,draft:[0,1,2],too:0,similarli:0,nghttp2_frame_too_larg:0,internal_error:0,conveni:0,"final":0,store:0,on_ctrl_send_callback:0,ssl_ctx:0,option:[0,1],tool:[2,1],copi:0,nghttp2_proto_version_id_len:0,specifi:[0,1],nghttp2_client_connection_head:0,github:1,pars:0,termin:[0,1],kind:0,scheme:[0,1],provid:0,remov:0,see:[0,1],structur:0,charact:0,project:1,defat:1,entri:0,nghttp2_session_del:0,read_callback:0,nghttp2_error:0,"function":[0,1,2],window_size_incr:[0,1],respons:[0,1],pri:0,argument:[0,1],packag:1,increment:0,reserv:0,need:[0,1],exclud:0,nghttp2_on_frame_recv_parse_error_callback:0,sat:1,bitwis:0,outbound:0,unexpect:0,callback:0,"0x04":1,"0x00":1,payloadlen:0,note:[0,1],nghttp2_refused_stream:0,exampl:[0,1],take:0,which:[0,1],noth:0,singl:[0,1],opaque_data_len:0,sure:1,unless:0,allow:0,"enum":[0,2],though:1,aaaabaaaagqaaaahaad__w:1,compress:[2,1],settings_max_concurrent_stream:0,nghttp2_hcat_request:0,most:0,nghttp2_flag_pong:0,thi:[0,1,2],nghttp2_before_frame_send_callback:0,nghttp2_error_cod:0,nghttp2_err_stream_id_not_avail:0,don:0,http2_select:0,url:1,doc:1,clear:0,later:0,request:[0,1],uri:[0,1],doe:0,nghttp2_pack_settings_payload:0,nghttp2_gzip_inflate_new:0,fact:0,on_invalid_frame_recv_callback:0,text:1,hostnam:1,verbos:1,session:0,pkg:1,protocol:[0,1,2],data:[0,1],absolut:0,nghttp2_submit_push_promis:0,nghttp2_submit_rst_stream:0,refused_stream:0,configur:[0,1],apach:1,figur:1,before_ctrl_send_callback:0,nghttp2_err_invalid_stream_id:0,experiment:[2,1],queu:0,local:0,over:1,nghttp2_err_proto:0,syn_stream:0,variou:0,get:[0,1],window_upd:[0,1],outlen:0,end_head:[0,1],ssl:[0,1],settings_initial_window_s:0,cannot:0,nghttp2_data:0,optnam:0,increas:0,utf:1,tatsuhiro:1,requir:[0,1,2],before_frame_send_callback:0,nghttp2_no_error:0,nghttp2_submit_respons:0,bar:0,enabl:1,ietf:[2,1],possibl:0,push_promis:0,method:[0,1],nghttp2_err_header_comp:0,stuff:0,nghttp2_strerror:0,contain:[0,1],nghttp2_window_upd:0,nghttp2_gzip_inflate_del:0,user:[0,1],certif:1,set:[0,1],frame:[0,1],knowledg:1,nghttp2_submit_goawai:0,temporarili:0,result:0,arg:0,fail:0,close:[0,1],analog:0,statu:[0,1,2],correctli:0,vari:[0,1],someth:0,below:0,written:0,bridg:1,nghttp2_flag_end_flow_control:0,nghttp2_on_data_chunk_recv_callback:0,nghttp2_initial_connection_window_s:0,accord:0,kei:0,flow:0,extens:1,entir:0,len:0,last_stream_id:[0,1],nghttp2_ping:0,tue:1,addit:0,bodi:0,cf405c:1,last:[0,1],nghttp2_proto_version_id:0,region:0,nghttp2_session_want_writ:0,against:0,tempor:0,etc:[0,1],agent:1,compression_error:0,on_request_recv_callback:0,browser:1,whole:0,nghttp2_data_provid:0,point:0,color:1,int32_t:0,address:1,rfc2616:0,header:[0,1,2],nghttp2_prioriti:0,non:[0,1],shutdown:0,path:[0,1],cancel:0,nghttp2_on_frame_not_send_callback:0,nghttp2_session:0,assum:0,backend:1,nghttp2_recv_callback:0,union:[0,2],due:0,been:0,nghttp2_on_data_send_callback:0,trigger:0,interpret:0,interest:1,nghttp2_hcat_head:0,date:1,nghttp2_on_unknown_frame_recv_callback:0,nghttp2_err_nomem:0,nghttp2_session_server_new:0,both:0,nghttp2_opt:0,lib_error_cod:0,ani:[0,1],repres:0,those:0,"case":0,multi:1,subsequ:0,nghttp2_settings_initial_window_s:0,zlib:1,sourceforg:1,defin:0,"while":0,behavior:0,error:0,nghttp2_flag_end_stream:0,invoc:0,listen:1,on_data_chunk_recv_callback:0,nghttp2_session_callback:0,helper:0,libxml2:1,squid:1,select_next_proto_cb:0,promised_stream_id:0,itself:0,conf:1,crash:0,flow_control_error:0,ascii:0,pointer:0,frame_too_larg:0,"null":0,develop:[2,1],perform:[0,1],make:[0,1],belong:0,same:0,member:0,pac:1,headlen:0,nghttp2_on_stream_close_callback:0,start:[0,1],complet:0,nghttp2_session_recv:0,context:0,mytyp:0,effect:0,on_ctrl_recv_parse_error_callback:0,nghttp2_err_deferred_data_exist:0,remot:[0,1],moment:1,zlib1g:1,ownership:0,mani:0,build:[2,1],postpon:0,nghttp2_submit_syn_stream:0,niv:[0,1],implement:[0,1,2],"45adabdf282c0":1,lower:0,com:0,thu:0,nghttp:1,without:[0,1],client:[0,1,2],uint32_t:0,resouc:1,error_cod:[0,1],nghttp2_data_sourc:0,left:0,end_push_promis:0,nghttp2_err_def:0,nghttp2_submit_set:0,identifi:0,just:[0,1],nghttp2_on_data_recv_callback:0,send_callback:0,"0x01":1,nghttp2_gzip_infl:0,via:1,multiplex:1,config:1,on_frame_send_callback:0,previous:0,web:1,"0x8":0,struct:[0,2],easi:1,also:0,priorit:0,except:0,identif:0,haz:0,other:0,input:0,on_data_send_callback:0,nghttp2_select_next_protocol:0,gmt:1,applic:[0,1],nvu:1,format:0,read:0,caller:0,period:0,outlen_ptr:0,nghttp2_session_set_opt:0,know:0,nva:0,step:0,bit:0,associ:0,delta_window_s:0,like:[0,1],success:1,arbitrari:0,uint16_t:0,signal:0,manual:1,html:[0,1,2],nghttp2_pri_lowest:0,server:[0,1,2],nghttp2_flag_end_head:0,tlen:0,have:0,output:1,stream_clos:0,www:0,revers:1,settings_payload:0,deal:0,hostport:0,nghttp2_session_client_new:0,some:0,back:0,sampl:1,integ:0,librari:[0,1,2],transmiss:0,nonzero:0,lead:0,nghttp2_data_source_read_callback:0,octet:0,per:0,outgo:0,larg:0,unit:1,condit:0,nghttp2_session_upgrad:0,duplic:0,localhost:1,either:0,machin:1,object:0,run:1,post:0,reach:0,inspect:0,chart:0,settings_payloadlen:0,found:1,peer:0,major:0,nghttp2_session_get_outbound_queue_s:0,src:1,about:0,actual:0,socket:1,commun:1,inlen_ptr:0,nghttp2_gzip:0,chrome:1,idl:0,nghttp2_submit_data:0,nghttp2_settings_max_concurrent_stream:0,ssl_tlsext_err_ok:0,disabl:1,block:[0,1],on_data_recv_callback:0,nghttp2_settings_entri:0,nghttp2_err_invalid_fram:0,deploi:1,encod:[0,1],automat:0,ssl_ctx_set_next_proto_select_cb:0,automak:1,stream_id:[0,1],empti:0,chang:0,inclus:0,git:[0,1,2],nghttp2_hcat_respons:0,wai:[0,1],transfer:[0,1,2],support:[0,1],submit:0,avail:[0,1],intention:0,nghttp2:[0,1,2],nghttp2_err_stream_clos:0,low:0,ipv6:1,forward:1,findproxyforurl:1,strictli:0,ipv4:1,treat:0,lowest:0,head:0,session_ptr:0,gzip:[0,1],form:0,offer:1,jul:1,nghttp2_err_invalid_st:0,content:[2,1],taken:0,link:1,highest:0,buf:0,bug:1,suppli:0,succe:0,nghttp2_internal_error:0,nghttp2_stream_clos:0,"default":[0,1],nghttp2_settings_max:0,access:1,googlecod:0,maximum:0,tell:0,asynchron:0,deafult:1,nghttpx:1,nghttpd:1,inform:1,autoconf:1,libev:1,expect:1,nghttp2_initial_window_s:0,featur:1,shrpx:1,creat:[0,1],"int":0,httpbi:[2,1],descriptor:0,"char":0,incomplet:1,exist:[0,1],file:[0,1],nghttp2_err_invalid_header_block:0,macro:[0,2],googl:1,when:0,detail:0,invalid:0,field:0,valid:[0,1],role:0,nghttp2_err_invalid_argu:0,test:1,you:[0,1],libssl:1,sequenc:0,decod:0,technot:0,libtool:1,alpn:[0,1],debian:1,serial:0,receiv:0,cunit:1,eof:0,algorithm:0,directori:1,reliabl:0,mask:0,indirectli:0,nghttp2_submit_request:0,namelen:0,portion:0,ignor:0,time:[0,1],push:0,deflat:[0,1],avoid:1},objtypes:{"0":"c:macro","1":"c:member","2":"c:type","3":"c:function"},titles:["API Reference","nghttp2 - HTTP/2.0 C Library","nghttp2 - HTTP/2.0 C Library"],objnames:{"0":["c","macro","C macro"],"1":["c","member","C member"],"2":["c","type","C type"],"3":["c","function","C function"]},filenames:["apiref","package_README","index"]}) \ No newline at end of file