
ngtcp2_crypto_md_init
=====================

Synopsis
--------

*#include <ngtcp2/ngtcp2_crypto.h>*

.. function:: ngtcp2_crypto_md *ngtcp2_crypto_md_init(ngtcp2_crypto_md *md, void *md_native_handle)

    
    `ngtcp2_crypto_md_init` initializes *md* with the provided
    *md_native_handle* which is an underlying message digest object.
    
    If libngtcp2_crypto_quictls is linked, *md_native_handle* must be a
    pointer to EVP_MD.
    
    If libngtcp2_crypto_gnutls is linked, *md_native_handle* must be
    gnutls_mac_algorithm_t casted to ``void *``.
    
    If libngtcp2_crypto_boringssl is linked, *md_native_handle* must be
    a pointer to EVP_MD.
