CMS_VERIFY_RECEIPT(3SSL)
β¨ NAME β¨
CMS_verify_receipt β bestie, this is the one that verifies a CMS signed receipt π (yes, in the OpenSSL family, section 3SSL, she's that girl)
πΈ SYNOPSIS πΈ
#include <openssl/cms.h>
int CMS_verify_receipt(CMS_ContentInfo *rcms, CMS_ContentInfo *ocms,
const STACK_OF(X509) *certs, X509_STORE *store,
unsigned int flags);
okay so it's literally one function, four-ish args, no drama π«Ά
π DESCRIPTION π
CMS_verify_receipt() verifies a CMS signed receipt. iconic behaviour, no cap.
Here's the breakdown of who's who in this little group chat:
rcmsβ this is the signed receipt you're verifying π the main character, the receipt itself.ocmsβ the originalSignedDatastructure that's holding the receipt request. like, the context, the backstory.certsβ a set of certificates you want it to search through to find the signing certificate π hunting for the right one in the pile.storeβ a trusted certificate store, used for chain verification. the trusted bestie, the vibes check π₯flagsβ an optional set of flags that you can use to modify the verify operation β¨ it's giving "options, but make it optional."
π¦ NOTES π¦
This function behaves in a similar way to CMS_verify() β except (and this is the important bit, don't skip it) the flag values CMS_DETACHED, CMS_BINARY, CMS_TEXT and CMS_STREAM are NOT supported, because they literally do not make sense in the context of signed receipts. it's giving "wrong room, bestie" π
so yeah. don't pass those. they don't apply. periodt.
π RETURN VALUES π
CMS_verify_receipt() returns 1 for a successful verification, and zero if an error occurred. slay or flop, binary, we love to see it π
If an error happened, you can grab it from ERR_get_error(3). that's your receipt for the receipt, iykyk π
π SEE ALSO π
π COPYRIGHT π
Copyright 2008-2026 The OpenSSL Project Authors. All Rights Reserved.
Licensed under the Apache License 2.0 (the "License"). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at <https://www.openssl.org/source/license.html>.
okay that's the whole thing, bestie π written for OpenSSL version 4.0.3, dated 2026-09-29, and yes the manual page is literally named CMS_VERIFY_RECEIPT(3SSL). go verify some receipts, you ate ππ§π
π¦ where this page comes from
- ubuntu stonking: libssl-doc 4.0.3-1ubuntu1 Β· Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms