OSSL_CMP_HDR...TRANSACTIONID(3ossl)

πŸ“¦
version 15.1 Β· 2 versions
, in freebsd 15.1

πŸ’… OSSL_CMP_HDR...TRANSACTIONID(3ossl) β€” the OpenSSL girlies' guide to CMP message headers

okay so bestie, this is a page from the OpenSSL manual β€” yes, that OpenSSL β€” and it's all about poking at the headers of CMP messages. Three little getter functions, that's the whole vibe. No cap, it's short and it slays. πŸŽ€


✨ NAME ✨

OSSL_CMP_HDR_get0_transactionID, OSSL_CMP_HDR_get0_recipNonce, OSSL_CMP_HDR_get0_geninfo_ITAVs β€” functions that manipulate CMP message headers. That's it, that's the job. πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

  #include <openssl/cmp.h>

  ASN1_OCTET_STRING *OSSL_CMP_HDR_get0_transactionID(const
                                                     OSSL_CMP_PKIHEADER *hdr);
  ASN1_OCTET_STRING *OSSL_CMP_HDR_get0_recipNonce(const
                                                  OSSL_CMP_PKIHEADER *hdr);
 STACK_OF(OSSL_CMP_ITAV)
     *OSSL_CMP_HDR_get0_geninfo_ITAVs(const OSSL_CMP_PKIHEADER *hdr);

like, literally just #include <openssl/cmp.h> and you're in. 🫢


🌸 DESCRIPTION 🌸

  • OSSL_CMP_HDR_get0_transactionID returns the transaction ID of the given PKIHeader. that's the whole assignment, bestie β€” in, out, iconic. ✨
  • OSSL_CMP_HDR_get0_recipNonce returns the recipient nonce of the given PKIHeader. yes, a nonce. yes, it's giving cryptography. πŸ‘‘
  • OSSL_CMP_HDR_get0_geninfo_ITAVs() returns the list of ITAVs in the generalInfo field of the given PKIHeader. the whole stack, no gatekeeping. πŸ¦‹

⭐ NOTES ⭐

CMP is defined in RFC 9810. that's the source of truth, periodt. πŸ“œ


πŸ’– RETURN VALUES πŸ’–

The functions return the intended pointer value as described above, or NULL if the respective entry does not exist and on error.

so like… NULL can mean "not there" or "something went wrong" and it's not gonna tell you which. read the room, check your error stack. 😭

🌈 HISTORY 🌈

  • The OpenSSL CMP support was added in OpenSSL 3.0. og era. πŸ’«
  • OSSL_CMP_HDR_get0_geninfo_ITAVs() was added in OpenSSL 3.3. the newer sibling, still iconic. 🧚

Copyright 2007-2019 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>.

fr fr read the license before you go copying stuff, it's not that deep but it is that serious. πŸ™ˆ

okay that's the whole page, you ate that πŸ“ β€” this little number is from OpenSSL version 3.5.6, dated 2026-04-0, and that's the tea. bye bestie, go get those transaction IDs πŸ”₯πŸ’…

πŸ“¦ where this page comes from