[#OSSL_CRMF_MSG_create_popo] = OSSL_CRMF_MSG_create_popo :mrdocs: Create and set the Proof‐of‐Possession field in a CRMF CertReqMsg. == Synopsis Declared in `<openssl/crmf.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- int OSSL_CRMF_MSG_create_popo( int meth, xref:OSSL_CRMF_MSG.adoc[OSSL_CRMF_MSG]* crm, xref:EVP_PKEY.adoc[EVP_PKEY]* pkey, xref:EVP_MD.adoc[EVP_MD] const* digest, xref:OSSL_LIB_CTX.adoc[OSSL_LIB_CTX]* libctx, char const* propq); ---- == Return Value 1 on success, or 0 on error. == Parameters [cols="1,4"] |=== | Name| Description | *meth* | POPO method (OSSL_CRMF_POPO_*); see RFC 4211 section 4. | *crm* | CertReqMsg to update. | *pkey* | Private key used when `meth` is OSSL_CRMF_POPO_SIGNATURE. | *digest* | Digest for signature POPO; ignored for Ed25519/Ed448 keys. | *libctx* | Library context for algorithm fetches, or NULL for the default. | *propq* | Property query for algorithm fetches, or NULL. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#