Table of Contents

QUIC_API_TABLE structure

The function table for all MsQuic APIs.

Syntax

typedef struct QUIC_API_TABLE {

    QUIC_SET_CONTEXT_FN                 SetContext;
    QUIC_GET_CONTEXT_FN                 GetContext;
    QUIC_SET_CALLBACK_HANDLER_FN        SetCallbackHandler;

    QUIC_SET_PARAM_FN                   SetParam;
    QUIC_GET_PARAM_FN                   GetParam;

    QUIC_REGISTRATION_OPEN_FN           RegistrationOpen;
    QUIC_REGISTRATION_CLOSE_FN          RegistrationClose;
    QUIC_REGISTRATION_SHUTDOWN_FN       RegistrationShutdown;

    QUIC_CONFIGURATION_OPEN_FN          ConfigurationOpen;
    QUIC_CONFIGURATION_CLOSE_FN         ConfigurationClose;
    QUIC_CONFIGURATION_LOAD_CREDENTIAL_FN
                                        ConfigurationLoadCredential;

    QUIC_LISTENER_OPEN_FN               ListenerOpen;
    QUIC_LISTENER_CLOSE_FN              ListenerClose;
    QUIC_LISTENER_START_FN              ListenerStart;
    QUIC_LISTENER_STOP_FN               ListenerStop;

    QUIC_CONNECTION_OPEN_FN             ConnectionOpen;
    QUIC_CONNECTION_CLOSE_FN            ConnectionClose;
    QUIC_CONNECTION_SHUTDOWN_FN         ConnectionShutdown;
    QUIC_CONNECTION_START_FN            ConnectionStart;
    QUIC_CONNECTION_SET_CONFIGURATION_FN
                                        ConnectionSetConfiguration;
    QUIC_CONNECTION_SEND_RESUMPTION_FN  ConnectionSendResumptionTicket;

    QUIC_STREAM_OPEN_FN                 StreamOpen;
    QUIC_STREAM_CLOSE_FN                StreamClose;
    QUIC_STREAM_START_FN                StreamStart;
    QUIC_STREAM_SHUTDOWN_FN             StreamShutdown;
    QUIC_STREAM_SEND_FN                 StreamSend;
    QUIC_STREAM_RECEIVE_COMPLETE_FN     StreamReceiveComplete;
    QUIC_STREAM_RECEIVE_SET_ENABLED_FN  StreamReceiveSetEnabled;

    QUIC_DATAGRAM_SEND_FN               DatagramSend;

    QUIC_CONNECTION_COMP_RESUMPTION_FN  ConnectionResumptionTicketValidationComplete; // Available from v2.2
    QUIC_CONNECTION_COMP_CERT_FN        ConnectionCertificateValidationComplete;      // Available from v2.2

    QUIC_CONNECTION_OPEN_IN_PARTITION_FN
                                        ConnectionOpenInPartition;   // Available from v2.5

#ifdef QUIC_API_ENABLE_PREVIEW_FEATURES
    QUIC_STREAM_PROVIDE_RECEIVE_BUFFERS_FN
                                        StreamProvideReceiveBuffers; // Available from v2.5

    QUIC_CONN_POOL_CREATE_FN            ConnectionPoolCreate;        // Available from v2.5

#ifndef _KERNEL_MODE
#define QUIC_API_EXECUTION_CONTEXT
    QUIC_EXECUTION_CREATE_FN            ExecutionCreate;    // Available from v2.5
    QUIC_EXECUTION_DELETE_FN            ExecutionDelete;    // Available from v2.5
    QUIC_EXECUTION_POLL_FN              ExecutionPoll;      // Available from v2.5
#endif // _KERNEL_MODE
    QUIC_REGISTRATION_CLOSE2_FN         RegistrationClose2; // Available from v2.6

    QUIC_CONNECTION_EXPORT_KEYING_MATERIAL_FN
                                        ConnectionExportKeyingMaterial; // Available from v2.6
#endif // QUIC_API_ENABLE_PREVIEW_FEATURES

} QUIC_API_TABLE;

Members

SetContext

See SetContext

GetContext

See GetContext

SetCallbackHandler

See SetCallbackHandler

SetParam

See SetParam

GetParam

See GetParam

RegistrationOpen

See RegistrationOpen

RegistrationClose

See RegistrationClose

RegistrationClose2

See (Preview) RegistrationClose2

RegistrationShutdown

See RegistrationShutdown

ConfigurationOpen

See ConfigurationOpen

ConfigurationClose

See ConfigurationClose

ConfigurationLoadCredential

See ConfigurationLoadCredential

ListenerOpen

See ListenerOpen

ListenerClose

See ListenerClose

ListenerStart

See ListenerStart

ListenerStop

See ListenerStop

ConnectionOpen

See ConnectionOpen

ConnectionClose

See ConnectionClose

ConnectionShutdown

See ConnectionShutdown

ConnectionStart

See ConnectionStart

ConnectionSetConfiguration

See ConnectionSetConfiguration

ConnectionSendResumptionTicket

See ConnectionSendResumptionTicket

StreamOpen

See StreamOpen

StreamClose

See StreamClose

StreamStart

See StreamStart

StreamShutdown

See StreamShutdown

StreamSend

See StreamSend

StreamReceiveComplete

See StreamReceiveComplete

StreamReceiveSetEnabled

See StreamReceiveSetEnabled

DatagramSend

See DatagramSend

ConnectionResumptionTicketValidationComplete

See ConnectionResumptionTicketValidationComplete

ConnectionCertificateValidationComplete

See ConnectionCertificateValidationComplete

ConnectionOpenInPartition

See ConnectionOpenInPartition

StreamProvideReceiveBuffers

See (Preview) StreamProvideReceiveBuffers

ConnectionPoolCreate

See (Preview) ConnectionPoolCreate

ExecutionCreate

See (Preview) ExecutionCreate

ExecutionDelete

See (Preview) ExecutionDelete

ExecutionPoll

See (Preview) ExecutionPoll

ConnectionExportKeyingMaterial

See (Preview) ConnectionExportKeyingMaterial

See Also

MsQuicOpen2