Enums

type ngtcp2_pkt_type

ngtcp2_pkt_type defines QUIC version-independent QUIC packet types.

enum NGTCP2_PKT_VERSION_NEGOTIATION

(0x80) NGTCP2_PKT_VERSION_NEGOTIATION is defined by libngtcp2 for convenience.

enum NGTCP2_PKT_STATELESS_RESET

(0x81) NGTCP2_PKT_STATELESS_RESET is defined by libngtcp2 for convenience.

enum NGTCP2_PKT_INITIAL

(0x10) NGTCP2_PKT_INITIAL indicates Initial packet.

enum NGTCP2_PKT_0RTT

(0x11) NGTCP2_PKT_0RTT indicates 0-RTT packet.

enum NGTCP2_PKT_HANDSHAKE

(0x12) NGTCP2_PKT_HANDSHAKE indicates Handshake packet.

enum NGTCP2_PKT_RETRY

(0x13) NGTCP2_PKT_RETRY indicates Retry packet.

enum NGTCP2_PKT_1RTT

(0x40) NGTCP2_PKT_1RTT is defined by libngtcp2 for convenience.

type ngtcp2_path_validation_result

ngtcp2_path_validation_result defines path validation result code.

enum NGTCP2_PATH_VALIDATION_RESULT_SUCCESS

NGTCP2_PATH_VALIDATION_RESULT_SUCCESS indicates successful validation.

enum NGTCP2_PATH_VALIDATION_RESULT_FAILURE

NGTCP2_PATH_VALIDATION_RESULT_FAILURE indicates validation failure.

enum NGTCP2_PATH_VALIDATION_RESULT_ABORTED

NGTCP2_PATH_VALIDATION_RESULT_ABORTED indicates that path validation was aborted.

type ngtcp2_cc_algo

ngtcp2_cc_algo defines congestion control algorithms.

enum NGTCP2_CC_ALGO_RENO

(0x00) NGTCP2_CC_ALGO_RENO represents Reno.

enum NGTCP2_CC_ALGO_CUBIC

(0x01) NGTCP2_CC_ALGO_CUBIC represents Cubic.

enum NGTCP2_CC_ALGO_BBR

(0x02) NGTCP2_CC_ALGO_BBR represents BBR v2.

type ngtcp2_token_type

ngtcp2_token_type defines the type of token.

enum NGTCP2_TOKEN_TYPE_UNKNOWN

NGTCP2_TOKEN_TYPE_UNKNOWN indicates that the type of token is unknown.

enum NGTCP2_TOKEN_TYPE_RETRY

NGTCP2_TOKEN_TYPE_RETRY indicates that a token comes from Retry packet.

enum NGTCP2_TOKEN_TYPE_NEW_TOKEN

NGTCP2_TOKEN_TYPE_NEW_TOKEN indicates that a token comes from NEW_TOKEN frame.

type ngtcp2_encryption_level

ngtcp2_encryption_level is QUIC encryption level.

enum NGTCP2_ENCRYPTION_LEVEL_INITIAL

NGTCP2_ENCRYPTION_LEVEL_INITIAL is Initial encryption level.

enum NGTCP2_ENCRYPTION_LEVEL_HANDSHAKE

NGTCP2_ENCRYPTION_LEVEL_HANDSHAKE is Handshake encryption level.

enum NGTCP2_ENCRYPTION_LEVEL_1RTT

NGTCP2_ENCRYPTION_LEVEL_1RTT is 1-RTT encryption level.

enum NGTCP2_ENCRYPTION_LEVEL_0RTT

NGTCP2_ENCRYPTION_LEVEL_0RTT is 0-RTT encryption level.

type ngtcp2_connection_id_status_type

ngtcp2_connection_id_status_type defines a set of status for Destination Connection ID.

enum NGTCP2_CONNECTION_ID_STATUS_TYPE_ACTIVATE

NGTCP2_CONNECTION_ID_STATUS_TYPE_ACTIVATE indicates that a local endpoint starts using new Destination Connection ID.

enum NGTCP2_CONNECTION_ID_STATUS_TYPE_DEACTIVATE

NGTCP2_CONNECTION_ID_STATUS_TYPE_DEACTIVATE indicates that a local endpoint stops using a given Destination Connection ID.

type ngtcp2_ccerr_type

ngtcp2_ccerr_type defines connection error type.

enum NGTCP2_CCERR_TYPE_TRANSPORT

NGTCP2_CCERR_TYPE_TRANSPORT indicates the QUIC transport error, and the error code is QUIC transport error code.

enum NGTCP2_CCERR_TYPE_APPLICATION

NGTCP2_CCERR_TYPE_APPLICATION indicates an application error, and the error code is application error code.

enum NGTCP2_CCERR_TYPE_VERSION_NEGOTIATION

NGTCP2_CCERR_TYPE_VERSION_NEGOTIATION is a special case of QUIC transport error, and it indicates that client receives Version Negotiation packet.

enum NGTCP2_CCERR_TYPE_IDLE_CLOSE

NGTCP2_CCERR_TYPE_IDLE_CLOSE is a special case of QUIC transport error, and it indicates that connection is closed because of idle timeout.

enum NGTCP2_CCERR_TYPE_DROP_CONN

NGTCP2_CCERR_TYPE_DROP_CONN is a special case of QUIC transport error, and it indicates that connection should be dropped without sending a CONNECTION_CLOSE frame.

enum NGTCP2_CCERR_TYPE_RETRY

NGTCP2_CCERR_TYPE_RETRY is a special case of QUIC transport error, and it indicates that RETRY packet should be sent to a client.