Enums¶
-
nghttp2_error¶ Error codes used in this library. The code range is [-999, -500], inclusive. The following values are defined:
-
NGHTTP2_ERR_INVALID_ARGUMENT¶ (
-501) Invalid argument passed.
-
NGHTTP2_ERR_BUFFER_ERROR¶ (
-502) Out of buffer space.
-
NGHTTP2_ERR_UNSUPPORTED_VERSION¶ (
-503) The specified protocol version is not supported.
-
NGHTTP2_ERR_WOULDBLOCK¶ (
-504) Used as a return value fromnghttp2_send_callback,nghttp2_recv_callbackandnghttp2_send_data_callbackto indicate that the operation would block.
-
NGHTTP2_ERR_PROTO¶ (
-505) General protocol error
-
NGHTTP2_ERR_INVALID_FRAME¶ (
-506) The frame is invalid.
-
NGHTTP2_ERR_EOF¶ (
-507) The peer performed a shutdown on the connection.
-
NGHTTP2_ERR_DEFERRED¶ (
-508) Used as a return value fromnghttp2_data_source_read_callback()to indicate that data transfer is postponed. Seenghttp2_data_source_read_callback()for details.
-
NGHTTP2_ERR_STREAM_ID_NOT_AVAILABLE¶ (
-509) Stream ID has reached the maximum value. Therefore no stream ID is available.
-
NGHTTP2_ERR_STREAM_CLOSED¶ (
-510) The stream is already closed; or the stream ID is invalid.
-
NGHTTP2_ERR_STREAM_CLOSING¶ (
-511) RST_STREAM has been added to the outbound queue. The stream is in closing state.
-
NGHTTP2_ERR_STREAM_SHUT_WR¶ (
-512) The transmission is not allowed for this stream (e.g., a frame with END_STREAM flag set has already sent).
-
NGHTTP2_ERR_INVALID_STREAM_ID¶ (
-513) The stream ID is invalid.
-
NGHTTP2_ERR_INVALID_STREAM_STATE¶ (
-514) The state of the stream is not valid (e.g., DATA cannot be sent to the stream if response HEADERS has not been sent).
-
NGHTTP2_ERR_DEFERRED_DATA_EXIST¶ (
-515) Another DATA frame has already been deferred.
-
NGHTTP2_ERR_START_STREAM_NOT_ALLOWED¶ (
-516) Starting new stream is not allowed (e.g., GOAWAY has been sent and/or received).
-
NGHTTP2_ERR_GOAWAY_ALREADY_SENT¶ (
-517) GOAWAY has already been sent.
-
NGHTTP2_ERR_INVALID_HEADER_BLOCK¶ (
-518) The received frame contains the invalid header block (e.g., There are duplicate header names; or the header names are not encoded in US-ASCII character set and not lower cased; or the header name is zero-length string; or the header value contains multiple in-sequence NUL bytes).
-
NGHTTP2_ERR_INVALID_STATE¶ (
-519) Indicates that the context is not suitable to perform the requested operation.
-
NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE¶ (
-521) The user callback function failed due to the temporal error.
-
NGHTTP2_ERR_FRAME_SIZE_ERROR¶ (
-522) The length of the frame is invalid, either too large or too small.
-
NGHTTP2_ERR_HEADER_COMP¶ (
-523) Header block inflate/deflate error.
-
NGHTTP2_ERR_FLOW_CONTROL¶ (
-524) Flow control error
-
NGHTTP2_ERR_INSUFF_BUFSIZE¶ (
-525) Insufficient buffer size given to function.
-
NGHTTP2_ERR_PAUSE¶ (
-526) Callback was paused by the application
-
NGHTTP2_ERR_TOO_MANY_INFLIGHT_SETTINGS¶ (
-527) There are too many in-flight SETTING frame and no more transmission of SETTINGS is allowed.
-
NGHTTP2_ERR_PUSH_DISABLED¶ (
-528) The server push is disabled.
-
NGHTTP2_ERR_DATA_EXIST¶ (
-529) DATA or HEADERS frame for a given stream has been already submitted and has not been fully processed yet. Application should wait for the transmission of the previously submitted frame before submitting another.
-
NGHTTP2_ERR_SESSION_CLOSING¶ (
-530) The current session is closing due to a connection error ornghttp2_session_terminate_session()is called.
-
NGHTTP2_ERR_HTTP_HEADER¶ (
-531) Invalid HTTP header field was received and stream is going to be closed.
-
NGHTTP2_ERR_HTTP_MESSAGING¶ (
-532) Violation in HTTP messaging rule.
-
NGHTTP2_ERR_REFUSED_STREAM¶ (
-533) Stream was refused.
-
NGHTTP2_ERR_INTERNAL¶ (
-534) Unexpected internal error, but recovered.
-
NGHTTP2_ERR_FATAL¶ (
-900) The errors <NGHTTP2_ERR_FATALmean that the library is under unexpected condition and processing was terminated (e.g., out of memory). If application receives this error code, it must stop using thatnghttp2_sessionobject and only allowed operation for that object is deallocate it usingnghttp2_session_del().
-
NGHTTP2_ERR_NOMEM¶ (
-901) Out of memory. This is a fatal error.
-
NGHTTP2_ERR_CALLBACK_FAILURE¶ (
-902) The user callback function failed. This is a fatal error.
-
NGHTTP2_ERR_BAD_CLIENT_MAGIC¶ (
-903) Invalid client magic (seeNGHTTP2_CLIENT_MAGIC) was received and further processing is not possible.
-
-
nghttp2_nv_flag¶ The flags for header field name/value pair.
-
NGHTTP2_NV_FLAG_NONE¶ (
0) No flag set.
-
NGHTTP2_NV_FLAG_NO_INDEX¶ (
0x01) Indicates that this name/value pair must not be indexed ("Literal Header Field never Indexed" representation must be used in HPACK encoding). Other implementation calls this bit as "sensitive".
-
-
nghttp2_frame_type¶ The frame types in HTTP/2 specification.
-
NGHTTP2_DATA¶ (
0) The DATA frame.
-
NGHTTP2_HEADERS¶ (
0x01) The HEADERS frame.
-
NGHTTP2_PRIORITY¶ (
0x02) The PRIORITY frame.
-
NGHTTP2_RST_STREAM¶ (
0x03) The RST_STREAM frame.
-
NGHTTP2_SETTINGS¶ (
0x04) The SETTINGS frame.
-
NGHTTP2_PUSH_PROMISE¶ (
0x05) The PUSH_PROMISE frame.
-
NGHTTP2_PING¶ (
0x06) The PING frame.
-
NGHTTP2_GOAWAY¶ (
0x07) The GOAWAY frame.
-
NGHTTP2_WINDOW_UPDATE¶ (
0x08) The WINDOW_UPDATE frame.
-
NGHTTP2_CONTINUATION¶ (
0x09) The CONTINUATION frame. This frame type won't be passed to any callbacks because the library processes this frame type and its preceding HEADERS/PUSH_PROMISE as a single frame.
-
-
nghttp2_flag¶ The flags for HTTP/2 frames. This enum defines all flags for all frames.
-
NGHTTP2_FLAG_NONE¶ (
0) No flag set.
-
NGHTTP2_FLAG_END_STREAM¶ (
0x01) The END_STREAM flag.
-
NGHTTP2_FLAG_END_HEADERS¶ (
0x04) The END_HEADERS flag.
-
NGHTTP2_FLAG_ACK¶ (
0x01) The ACK flag.
-
NGHTTP2_FLAG_PADDED¶ (
0x08) The PADDED flag.
-
NGHTTP2_FLAG_PRIORITY¶ (
0x20) The PRIORITY flag.
-
-
nghttp2_settings_id¶ The SETTINGS ID.
-
NGHTTP2_SETTINGS_HEADER_TABLE_SIZE¶ (
0x01) SETTINGS_HEADER_TABLE_SIZE
-
NGHTTP2_SETTINGS_ENABLE_PUSH¶ (
0x02) SETTINGS_ENABLE_PUSH
-
NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS¶ (
0x03) SETTINGS_MAX_CONCURRENT_STREAMS
-
NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE¶ (
0x04) SETTINGS_INITIAL_WINDOW_SIZE
-
NGHTTP2_SETTINGS_MAX_FRAME_SIZE¶ (
0x05) SETTINGS_MAX_FRAME_SIZE
-
NGHTTP2_SETTINGS_MAX_HEADER_LIST_SIZE¶ (
0x06) SETTINGS_MAX_HEADER_LIST_SIZE
-
-
nghttp2_error_code¶ The status codes for the RST_STREAM and GOAWAY frames.
-
NGHTTP2_NO_ERROR¶ (
0x00) No errors.
-
NGHTTP2_PROTOCOL_ERROR¶ (
0x01) PROTOCOL_ERROR
-
NGHTTP2_INTERNAL_ERROR¶ (
0x02) INTERNAL_ERROR
-
NGHTTP2_FLOW_CONTROL_ERROR¶ (
0x03) FLOW_CONTROL_ERROR
-
NGHTTP2_SETTINGS_TIMEOUT¶ (
0x04) SETTINGS_TIMEOUT
-
NGHTTP2_STREAM_CLOSED¶ (
0x05) STREAM_CLOSED
-
NGHTTP2_FRAME_SIZE_ERROR¶ (
0x06) FRAME_SIZE_ERROR
-
NGHTTP2_REFUSED_STREAM¶ (
0x07) REFUSED_STREAM
-
NGHTTP2_CANCEL¶ (
0x08) CANCEL
-
NGHTTP2_COMPRESSION_ERROR¶ (
0x09) COMPRESSION_ERROR
-
NGHTTP2_CONNECT_ERROR¶ (
0x0a) CONNECT_ERROR
-
NGHTTP2_ENHANCE_YOUR_CALM¶ (
0x0b) ENHANCE_YOUR_CALM
-
NGHTTP2_INADEQUATE_SECURITY¶ (
0x0c) INADEQUATE_SECURITY
-
NGHTTP2_HTTP_1_1_REQUIRED¶ (
0x0d) HTTP_1_1_REQUIRED
-
-
nghttp2_data_flag¶ The flags used to set in data_flags output parameter in
nghttp2_data_source_read_callback.-
NGHTTP2_DATA_FLAG_NONE¶ (
0) No flag set.
-
NGHTTP2_DATA_FLAG_EOF¶ (
0x01) Indicates EOF was sensed.
-
NGHTTP2_DATA_FLAG_NO_END_STREAM¶ (
0x02) Indicates that END_STREAM flag must not be set even if NGHTTP2_DATA_FLAG_EOF is set. Usually this flag is used to send trailer header fields withnghttp2_submit_request()ornghttp2_submit_response().
-
NGHTTP2_DATA_FLAG_NO_COPY¶ (
0x04) Indicates that application will send complete DATA frame innghttp2_send_data_callback.
-
-
nghttp2_headers_category¶ The category of HEADERS, which indicates the role of the frame. In HTTP/2 spec, request, response, push response and other arbitrary headers (e.g., trailers) are all called just HEADERS. To give the application the role of incoming HEADERS frame, we define several categories.
-
NGHTTP2_HCAT_REQUEST¶ (
0) The HEADERS frame is opening new stream, which is analogous to SYN_STREAM in SPDY.
-
NGHTTP2_HCAT_RESPONSE¶ (
1) The HEADERS frame is the first response headers, which is analogous to SYN_REPLY in SPDY.
-
NGHTTP2_HCAT_PUSH_RESPONSE¶ (
2) The HEADERS frame is the first headers sent against reserved stream.
-
NGHTTP2_HCAT_HEADERS¶ (
3) The HEADERS frame which does not apply for the above categories, which is analogous to HEADERS in SPDY. If non-final response (e.g., status 1xx) is used, final response HEADERS frame will be categorized here.
-
-
nghttp2_hd_inflate_flag¶ The flags for header inflation.
-
NGHTTP2_HD_INFLATE_NONE¶ (
0) No flag set.
-
NGHTTP2_HD_INFLATE_FINAL¶ (
0x01) Indicates all headers were inflated.
-
NGHTTP2_HD_INFLATE_EMIT¶ (
0x02) Indicates a header was emitted.
-
-
nghttp2_stream_proto_state¶ State of stream as described in RFC 7540.
-
NGHTTP2_STREAM_STATE_IDLE¶ (
1) idle state.
-
NGHTTP2_STREAM_STATE_OPEN, open state.
-
NGHTTP2_STREAM_STATE_RESERVED_LOCAL, reserved (local) state.
-
NGHTTP2_STREAM_STATE_RESERVED_REMOTE, reserved (remote) state.
-
NGHTTP2_STREAM_STATE_HALF_CLOSED_LOCAL, half closed (local) state.
-
NGHTTP2_STREAM_STATE_HALF_CLOSED_REMOTE, half closed (remote) state.
-
NGHTTP2_STREAM_STATE_CLOSED¶ closed state.
-