]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
add missing CRMF API function OSSL_CRMF_CERTTEMPLATE_get0_publicKey()
authorDr. David von Oheimb <David.von.Oheimb@siemens.com>
Mon, 1 Aug 2022 14:47:04 +0000 (16:47 +0200)
committerDr. David von Oheimb <dev@ddvo.net>
Wed, 24 Aug 2022 09:27:12 +0000 (11:27 +0200)
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: David von Oheimb <david.von.oheimb@siemens.com>
(Merged from https://github.com/openssl/openssl/pull/18930)

crypto/crmf/crmf_lib.c
doc/man3/OSSL_CRMF_MSG_get0_tmpl.pod
include/openssl/crmf.h.in
util/libcrypto.num

index 11351e33d1651ae414a37bee7b6963c41696532b..e28c7fe9bebe11ed8e94e526f8f26a4034c305bf 100644 (file)
@@ -530,6 +530,12 @@ int OSSL_CRMF_MSGS_verify_popo(const OSSL_CRMF_MSGS *reqs,
     return 1;
 }
 
+const X509_PUBKEY
+    *OSSL_CRMF_CERTTEMPLATE_get0_publicKey(const OSSL_CRMF_CERTTEMPLATE *tmpl)
+{
+    return tmpl != NULL ? tmpl->publicKey : NULL;
+}
+
 /* retrieves the serialNumber of the given cert template or NULL on error */
 const ASN1_INTEGER
 *OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl)
index 51296599e5c7b898ce62a625725530561eedd04b..6260b33fc280bd90da2bc1b4405683e112be3a0d 100644 (file)
@@ -3,9 +3,10 @@
 =head1 NAME
 
 OSSL_CRMF_MSG_get0_tmpl,
-OSSL_CRMF_CERTTEMPLATE_get0_serialNumber,
+OSSL_CRMF_CERTTEMPLATE_get0_publicKey,
 OSSL_CRMF_CERTTEMPLATE_get0_subject,
 OSSL_CRMF_CERTTEMPLATE_get0_issuer,
+OSSL_CRMF_CERTTEMPLATE_get0_serialNumber,
 OSSL_CRMF_CERTTEMPLATE_get0_extensions,
 OSSL_CRMF_CERTID_get0_serialNumber,
 OSSL_CRMF_CERTID_get0_issuer,
@@ -18,12 +19,14 @@ OSSL_CRMF_MSG_get_certReqId
  #include <openssl/crmf.h>
 
  OSSL_CRMF_CERTTEMPLATE *OSSL_CRMF_MSG_get0_tmpl(const OSSL_CRMF_MSG *crm);
- const ASN1_INTEGER
- *OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
+ const X509_PUBKEY
+ *OSSL_CRMF_CERTTEMPLATE_get0_publicKey(const OSSL_CRMF_CERTTEMPLATE *tmpl);
  const X509_NAME
  *OSSL_CRMF_CERTTEMPLATE_get0_subject(const OSSL_CRMF_CERTTEMPLATE *tmpl);
  const X509_NAME
  *OSSL_CRMF_CERTTEMPLATE_get0_issuer(const OSSL_CRMF_CERTTEMPLATE *tmpl);
+ const ASN1_INTEGER
+ *OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
  X509_EXTENSIONS
  *OSSL_CRMF_CERTTEMPLATE_get0_extensions(const OSSL_CRMF_CERTTEMPLATE *tmpl);
 
@@ -43,7 +46,7 @@ OSSL_CRMF_MSG_get_certReqId
 
 OSSL_CRMF_MSG_get0_tmpl() retrieves the certificate template of I<crm>.
 
-OSSL_CRMF_CERTTEMPLATE_get0_serialNumber() retrieves the serialNumber of the
+OSSL_CRMF_CERTTEMPLATE_get0_publicKey() retrieves the public key of the
 given certificate template I<tmpl>.
 
 OSSL_CRMF_CERTTEMPLATE_get0_subject() retrieves the subject name of the
@@ -52,6 +55,9 @@ given certificate template I<tmpl>.
 OSSL_CRMF_CERTTEMPLATE_get0_issuer() retrieves the issuer name of the
 given certificate template I<tmpl>.
 
+OSSL_CRMF_CERTTEMPLATE_get0_serialNumber() retrieves the serialNumber of the
+given certificate template I<tmpl>.
+
 OSSL_CRMF_CERTTEMPLATE_get0_extensions() retrieves the X.509 extensions
 of the given certificate template I<tmpl>, or NULL if not present.
 
@@ -70,7 +76,6 @@ with the caller, who is responsible for freeing it.
 
 OSSL_CRMF_MSG_get_certReqId() retrieves the certReqId of I<crm>.
 
-
 =head1 RETURN VALUES
 
 OSSL_CRMF_MSG_get_certReqId() returns the certificate request ID as a
index 4d37ea6d943718f6e61dcbb62860a531abb849f4..2b77607dd1bf8d38709fb448e64b8bf8c7b124d5 100644 (file)
@@ -151,12 +151,14 @@ int OSSL_CRMF_MSGS_verify_popo(const OSSL_CRMF_MSGS *reqs,
                                int rid, int acceptRAVerified,
                                OSSL_LIB_CTX *libctx, const char *propq);
 OSSL_CRMF_CERTTEMPLATE *OSSL_CRMF_MSG_get0_tmpl(const OSSL_CRMF_MSG *crm);
-const ASN1_INTEGER
-*OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
+const X509_PUBKEY
+*OSSL_CRMF_CERTTEMPLATE_get0_publicKey(const OSSL_CRMF_CERTTEMPLATE *tmpl);
 const X509_NAME
 *OSSL_CRMF_CERTTEMPLATE_get0_subject(const OSSL_CRMF_CERTTEMPLATE *tmpl);
 const X509_NAME
 *OSSL_CRMF_CERTTEMPLATE_get0_issuer(const OSSL_CRMF_CERTTEMPLATE *tmpl);
+const ASN1_INTEGER
+*OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
 X509_EXTENSIONS
 *OSSL_CRMF_CERTTEMPLATE_get0_extensions(const OSSL_CRMF_CERTTEMPLATE *tmpl);
 const X509_NAME
index a078f5c5493409e41823b42f00b22bf3b22b769e..c5d2e9a07ef975c1abc05d91d060f216735af476 100644 (file)
@@ -5439,6 +5439,7 @@ ASYNC_set_mem_functions                 ? 3_1_0   EXIST::FUNCTION:
 ASYNC_get_mem_functions                 ?      3_1_0   EXIST::FUNCTION:
 BIO_ADDR_dup                            ?      3_1_0   EXIST::FUNCTION:SOCK
 OSSL_CMP_CTX_get0_validatedSrvCert      ?      3_1_0   EXIST::FUNCTION:CMP
+OSSL_CRMF_CERTTEMPLATE_get0_publicKey   ?      3_1_0   EXIST::FUNCTION:CRMF
 CMS_final_digest                        ?      3_1_0   EXIST::FUNCTION:CMS
 CMS_EnvelopedData_it                    ?      3_1_0   EXIST::FUNCTION:CMS
 CMS_EnvelopedData_decrypt               ?      3_1_0   EXIST::FUNCTION:CMS