Function esp_idf_svc::hal::sys::mbedtls_ecdh_make_public

source ·
pub unsafe extern "C" fn mbedtls_ecdh_make_public(
    ctx: *mut mbedtls_ecdh_context,
    olen: *mut usize,
    buf: *mut u8,
    blen: usize,
    f_rng: Option<unsafe extern "C" fn(_: *mut c_void, _: *mut u8, _: usize) -> i32>,
    p_rng: *mut c_void,
) -> i32
Expand description

\brief This function generates a public key and exports it as a TLS ClientKeyExchange payload.

             This is the second function used by a TLS client for ECDH(E)
             ciphersuites.

\see ecp.h

\param ctx The ECDH context to use. This must be initialized and bound to a group, the latter usually by mbedtls_ecdh_read_params(). \param olen The address at which to store the number of Bytes written. This must not be \c NULL. \param buf The destination buffer. This must be a writable buffer of length \p blen Bytes. \param blen The size of the destination buffer \p buf in Bytes. \param f_rng The RNG function to use. This must not be \c NULL. \param p_rng The RNG context to be passed to \p f_rng. This may be \c NULL in case \p f_rng doesn’t need a context argument.

\return \c 0 on success. \return #MBEDTLS_ERR_ECP_IN_PROGRESS if maximum number of operations was reached: see \c mbedtls_ecp_set_max_ops(). \return Another \c MBEDTLS_ERR_ECP_XXX error code on failure.