2018-10-17 21:51:19 +08:00
|
|
|
=pod
|
|
|
|
|
|
|
|
=head1 NAME
|
|
|
|
|
|
|
|
OSSL_CRMF_MSG_get0_tmpl,
|
2022-08-01 22:47:04 +08:00
|
|
|
OSSL_CRMF_CERTTEMPLATE_get0_publicKey,
|
2021-06-16 16:26:26 +08:00
|
|
|
OSSL_CRMF_CERTTEMPLATE_get0_subject,
|
2018-10-17 21:51:19 +08:00
|
|
|
OSSL_CRMF_CERTTEMPLATE_get0_issuer,
|
2022-08-01 22:47:04 +08:00
|
|
|
OSSL_CRMF_CERTTEMPLATE_get0_serialNumber,
|
2021-06-16 16:26:26 +08:00
|
|
|
OSSL_CRMF_CERTTEMPLATE_get0_extensions,
|
2019-08-10 20:07:22 +08:00
|
|
|
OSSL_CRMF_CERTID_get0_serialNumber,
|
|
|
|
OSSL_CRMF_CERTID_get0_issuer,
|
2018-10-17 21:51:19 +08:00
|
|
|
OSSL_CRMF_ENCRYPTEDVALUE_get1_encCert,
|
|
|
|
OSSL_CRMF_MSG_get_certReqId
|
|
|
|
- functions reading from CRMF CertReqMsg structures
|
|
|
|
|
|
|
|
=head1 SYNOPSIS
|
|
|
|
|
|
|
|
#include <openssl/crmf.h>
|
|
|
|
|
|
|
|
OSSL_CRMF_CERTTEMPLATE *OSSL_CRMF_MSG_get0_tmpl(const OSSL_CRMF_MSG *crm);
|
2022-08-01 22:47:04 +08:00
|
|
|
const X509_PUBKEY
|
|
|
|
*OSSL_CRMF_CERTTEMPLATE_get0_publicKey(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
2021-06-29 17:11:05 +08:00
|
|
|
const X509_NAME
|
2021-06-16 16:26:26 +08:00
|
|
|
*OSSL_CRMF_CERTTEMPLATE_get0_subject(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
2021-06-29 17:11:05 +08:00
|
|
|
const X509_NAME
|
2020-04-04 01:54:45 +08:00
|
|
|
*OSSL_CRMF_CERTTEMPLATE_get0_issuer(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
2022-08-01 22:47:04 +08:00
|
|
|
const ASN1_INTEGER
|
|
|
|
*OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
2021-06-16 16:26:26 +08:00
|
|
|
X509_EXTENSIONS
|
|
|
|
*OSSL_CRMF_CERTTEMPLATE_get0_extensions(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
2018-10-17 21:51:19 +08:00
|
|
|
|
2021-06-29 17:11:05 +08:00
|
|
|
const ASN1_INTEGER
|
|
|
|
*OSSL_CRMF_CERTID_get0_serialNumber(const OSSL_CRMF_CERTID *cid);
|
2020-03-23 15:30:37 +08:00
|
|
|
const X509_NAME *OSSL_CRMF_CERTID_get0_issuer(const OSSL_CRMF_CERTID *cid);
|
2019-08-10 20:07:22 +08:00
|
|
|
|
2020-04-04 01:54:45 +08:00
|
|
|
X509
|
|
|
|
*OSSL_CRMF_ENCRYPTEDVALUE_get1_encCert(const OSSL_CRMF_ENCRYPTEDVALUE *ecert,
|
2020-10-15 17:55:50 +08:00
|
|
|
OSSL_LIB_CTX *libctx, const char *propq,
|
2020-04-04 01:54:45 +08:00
|
|
|
EVP_PKEY *pkey);
|
2018-10-17 21:51:19 +08:00
|
|
|
|
2020-04-04 01:54:45 +08:00
|
|
|
int OSSL_CRMF_MSG_get_certReqId(const OSSL_CRMF_MSG *crm);
|
2018-10-17 21:51:19 +08:00
|
|
|
|
|
|
|
|
|
|
|
=head1 DESCRIPTION
|
|
|
|
|
2020-08-13 23:44:54 +08:00
|
|
|
OSSL_CRMF_MSG_get0_tmpl() retrieves the certificate template of I<crm>.
|
2018-10-17 21:51:19 +08:00
|
|
|
|
2022-08-01 22:47:04 +08:00
|
|
|
OSSL_CRMF_CERTTEMPLATE_get0_publicKey() retrieves the public key of the
|
2020-08-13 23:44:54 +08:00
|
|
|
given certificate template I<tmpl>.
|
2018-10-17 21:51:19 +08:00
|
|
|
|
2021-06-16 16:26:26 +08:00
|
|
|
OSSL_CRMF_CERTTEMPLATE_get0_subject() retrieves the subject name of the
|
|
|
|
given certificate template I<tmpl>.
|
|
|
|
|
2018-10-17 21:51:19 +08:00
|
|
|
OSSL_CRMF_CERTTEMPLATE_get0_issuer() retrieves the issuer name of the
|
2020-08-13 23:44:54 +08:00
|
|
|
given certificate template I<tmpl>.
|
2018-10-17 21:51:19 +08:00
|
|
|
|
2022-08-01 22:47:04 +08:00
|
|
|
OSSL_CRMF_CERTTEMPLATE_get0_serialNumber() retrieves the serialNumber of the
|
|
|
|
given certificate template I<tmpl>.
|
|
|
|
|
2021-06-16 16:26:26 +08:00
|
|
|
OSSL_CRMF_CERTTEMPLATE_get0_extensions() retrieves the X.509 extensions
|
|
|
|
of the given certificate template I<tmpl>, or NULL if not present.
|
|
|
|
|
2019-08-10 20:07:22 +08:00
|
|
|
OSSL_CRMF_CERTID_get0_serialNumber retrieves the serialNumber
|
2020-08-13 23:44:54 +08:00
|
|
|
of the given CertId I<cid>.
|
2019-08-10 20:07:22 +08:00
|
|
|
|
|
|
|
OSSL_CRMF_CERTID_get0_issuer retrieves the issuer name
|
2020-08-13 23:44:54 +08:00
|
|
|
of the given CertId I<cid>, which must be of ASN.1 type GEN_DIRNAME.
|
2019-08-10 20:07:22 +08:00
|
|
|
|
2018-10-17 21:51:19 +08:00
|
|
|
OSSL_CRMF_ENCRYPTEDVALUE_get1_encCert() decrypts the certificate in the given
|
2020-08-13 23:44:54 +08:00
|
|
|
encryptedValue I<ecert>, using the private key I<pkey>, library context
|
2020-10-15 17:55:50 +08:00
|
|
|
I<libctx> and property query string I<propq> (see L<OSSL_LIB_CTX(3)>).
|
2020-08-13 23:44:54 +08:00
|
|
|
This is needed for the indirect POPO method as in RFC 4210 section 5.2.8.2.
|
2018-10-17 21:51:19 +08:00
|
|
|
The function returns the decrypted certificate as a copy, leaving its ownership
|
|
|
|
with the caller, who is responsible for freeing it.
|
|
|
|
|
2020-08-13 23:44:54 +08:00
|
|
|
OSSL_CRMF_MSG_get_certReqId() retrieves the certReqId of I<crm>.
|
2018-10-17 21:51:19 +08:00
|
|
|
|
|
|
|
=head1 RETURN VALUES
|
|
|
|
|
|
|
|
OSSL_CRMF_MSG_get_certReqId() returns the certificate request ID as a
|
2020-07-17 18:31:26 +08:00
|
|
|
nonnegative integer or -1 on error.
|
2018-10-17 21:51:19 +08:00
|
|
|
|
|
|
|
All other functions return a pointer with the intended result or NULL on error.
|
|
|
|
|
|
|
|
=head1 SEE ALSO
|
|
|
|
|
2020-08-13 23:44:54 +08:00
|
|
|
RFC 4211
|
2018-10-17 21:51:19 +08:00
|
|
|
|
2019-08-10 20:07:22 +08:00
|
|
|
=head1 HISTORY
|
|
|
|
|
|
|
|
The OpenSSL CRMF support was added in OpenSSL 3.0.
|
|
|
|
|
2018-10-17 21:51:19 +08:00
|
|
|
=head1 COPYRIGHT
|
|
|
|
|
2021-07-29 22:41:35 +08:00
|
|
|
Copyright 2007-2021 The OpenSSL Project Authors. All Rights Reserved.
|
2018-10-17 21:51:19 +08:00
|
|
|
|
2018-12-23 16:58:36 +08:00
|
|
|
Licensed under the Apache License 2.0 (the "License"). You may not use
|
2018-10-17 21:51:19 +08:00
|
|
|
this file except in compliance with the License. You can obtain a copy
|
|
|
|
in the file LICENSE in the source distribution or at
|
|
|
|
L<https://www.openssl.org/source/license.html>.
|
|
|
|
|
|
|
|
=cut
|