Function esp_idf_svc::sys::mbedtls_pk_sign_restartable

source ยท
pub unsafe extern "C" fn mbedtls_pk_sign_restartable(
    ctx: *mut mbedtls_pk_context,
    md_alg: u32,
    hash: *const u8,
    hash_len: usize,
    sig: *mut u8,
    sig_size: usize,
    sig_len: *mut usize,
    f_rng: Option<unsafe extern "C" fn(_: *mut c_void, _: *mut u8, _: usize) -> i32>,
    p_rng: *mut c_void,
    rs_ctx: *mut c_void,
) -> i32
Expand description

\brief Restartable version of \c mbedtls_pk_sign()

\note Performs the same job as \c mbedtls_pk_sign(), but can return early and restart according to the limit set with \c mbedtls_ecp_set_max_ops() to reduce blocking for ECC operations. For RSA, same as \c mbedtls_pk_sign().

\param ctx The PK context to use. It must have been set up with a private key. \param md_alg Hash algorithm used (see notes for mbedtls_pk_sign()) \param hash Hash of the message to sign \param hash_len Hash length \param sig Place to write the signature. It must have enough room for the signature. #MBEDTLS_PK_SIGNATURE_MAX_SIZE is always enough. You may use a smaller buffer if it is large enough given the key type. \param sig_size The size of the \p sig buffer in bytes. \param sig_len On successful return, the number of bytes written to \p sig. \param f_rng RNG function, must not be \c NULL. \param p_rng RNG parameter \param rs_ctx Restart context (NULL to disable restart)

\return See \c mbedtls_pk_sign(). \return #MBEDTLS_ERR_ECP_IN_PROGRESS if maximum number of operations was reached: see \c mbedtls_ecp_set_max_ops().