libressl-CMS_verify_receipt(3)

libressl-CMS_verify_receipt3

Verify a cms signed receipt

Usage

Crypto Library (libcrypto, -lcrypto)

#include <openssl/cms.h>

int

CMS_verify_receipt(CMS_ContentInfo *rcms, CMS_ContentInfo *ocms, STACK_OF(X509) *certs, X509_STORE *store, unsigned int flags);

Overview

CMS_verify_receipt() verifies a CMS signed receipt. rcms is the signed receipt to verify. ocms is the original SignedData structure containing the receipt request. certs is a set of certificates in which to search for the signing certificate. store is a trusted certificate store (used for chain verification).

This function behaves in a similar way to CMS_verify(3) except that the flags values CMS_DETACHED, CMS_BINARY, CMS_TEXT, and CMS_STREAM are not supported since they do not make sense in the context of signed receipts.

Return values

CMS_verify_receipt() returns 1 for a successful verification or 0 if an error occurred.

The error can be obtained from ERR_get_error(3).

Standards

RFC 2634: Enhanced Security Services for S/MIME, section 2.8: Receipt Syntax

History

CMS_verify_receipt() first appeared in OpenSSL 0.9.8h and has been available since OpenBSD 6.7.

From libressl 4.4.0-1 in Arch Linux 2026-11-01. Parsed by carta from the page's mdoc source.