bool COSE_Encrypt_decrypt(HCOSE_ENCRYPT h, const byte * pbKey, size_t cbKey, cose_errback * perr) { COSE_Encrypt * pcose = (COSE_Encrypt *)h; bool f; if (!IsValidEncryptHandle(h)) { if (perr != NULL) perr->err = COSE_ERR_INVALID_PARAMETER; return false; } f = _COSE_Enveloped_decrypt(pcose, NULL, pbKey, cbKey, "Encrypt0", perr); return f; }
bool COSE_Enveloped_decrypt(HCOSE_ENVELOPED h, HCOSE_RECIPIENT hRecip, cose_errback * perr) { COSE_Enveloped * pcose = (COSE_Enveloped *)h; COSE_RecipientInfo * pRecip = (COSE_RecipientInfo *)hRecip; bool f = false; CHECK_CONDITION(IsValidEnvelopedHandle(h), COSE_ERR_INVALID_HANDLE); CHECK_CONDITION(IsValidRecipientHandle(hRecip), COSE_ERR_INVALID_HANDLE); CHECK_CONDITION(pcose->m_recipientFirst != NULL, COSE_ERR_INVALID_PARAMETER); f = _COSE_Enveloped_decrypt(pcose, pRecip, NULL, 0, "Encrypt", perr); errorReturn: return f; }