CMS_SIGN_RECEIPT(3SSL)
π CMS_SIGN_RECEIPT β the OpenSSL girlies' guide π
okay so this is a page from the OpenSSL manual, section 3SSL, and it's about CMS_sign_receipt. no cap, it's lowkey the receipt-printing queen of the CMS world. let's get into it bestie π«Ά
β¨ NAME β¨
CMS_sign_receipt β create a CMS signed receipt ππ
πΈ SYNOPSIS πΈ
#include <openssl/cms.h>
CMS_ContentInfo *CMS_sign_receipt(CMS_SignerInfo *si, X509 *signcert,
EVP_PKEY *pkey, const STACK_OF(X509) *certs,
unsigned int flags);
π¦ DESCRIPTION π¦
so CMS_sign_receipt() creates and returns a CMS signed receipt structure. that's the whole gig. iconic. π
here's the vibe check on the args:
siβ this is theCMS_SignerInfostructure holding the signed receipt request. it's giving "here's what you asked me to sign" energy.signcertβ the certificate you're signing with πpkeyβ the corresponding private key, obvs. they're a package deal, iykyk.certsβ an optional extra set of certificates to include in the CMS structure. think intermediate CAs in the chain, like the supporting cast. πflagsβ an optional set of flags. yeah, we'll talk about which ones.
π NOTES π
okay so this function behaves in a similar way to CMS_sign()... except (and this is the important part, bestie, don't skip it π) these flag values are NOT supported:
CMS_DETACHEDCMS_BINARYCMS_NOATTRCMS_TEXTCMS_STREAM
why? because they literally do not make sense in the context of signed receipts. it's giving "wrong room, wrong party". they just don't belong. periodt. β
π RETURN VALUES π
CMS_sign_receipt() returns either:
- a valid
CMS_ContentInfostructure β¨ (slay), or NULLif an error occurred π
and if you got the NULL, you can snag the error info from ERR_get_error(3). go get your diagnostics, girlie.
π₯ 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>.
and that's the whole page, no crumbs left π
OpenSSL 4.0.3 β dated 2026-09-29 β CMS_SIGN_RECEIPT(3SSL), mwah π signing off bestie, go make some receipts πβ¨
π¦ 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