X.509 extension formatting. More...
#include "core/crypto.h"#include "pkix/x509_cert_format.h"#include "pkix/x509_cert_ext_format.h"#include "encoding/asn1.h"#include "debug.h"Go to the source code of this file.
Macros | |
| #define | TRACE_LEVEL CRYPTO_TRACE_LEVEL |
Functions | |
| error_t | x509FormatExtensions (const X509Extensions *extensions, const X509SubjectKeyId *subjectKeyId, const X509AuthKeyId *authKeyId, uint8_t *output, size_t *written) |
| Format Extensions structure. More... | |
| error_t | x509FormatExtension (const X509Extension *extension, uint8_t *output, size_t *written) |
| Format X.509 certificate extension. More... | |
| error_t | x509FormatBasicConstraints (const X509BasicConstraints *basicConstraints, uint8_t *output, size_t *written) |
| Format BasicConstraints extension. More... | |
| error_t | x509FormatKeyUsage (const X509KeyUsage *keyUsage, uint8_t *output, size_t *written) |
| Format KeyUsage extension. More... | |
| error_t | x509FormatExtendedKeyUsage (const X509ExtendedKeyUsage *extKeyUsage, uint8_t *output, size_t *written) |
| Format ExtendedKeyUsage extension. More... | |
| error_t | x509FormatKeyPurposes (uint16_t bitmap, uint8_t *output, size_t *written) |
| Format the list of key purposes. More... | |
| error_t | x509FormatSubjectAltName (const X509SubjectAltName *subjectAltName, uint8_t *output, size_t *written) |
| Format SubjectAltName extension. More... | |
| error_t | x509FormatSubjectKeyId (const X509SubjectKeyId *subjectKeyId, uint8_t *output, size_t *written) |
| Format SubjectKeyIdentifier extension. More... | |
| error_t | x509FormatAuthorityKeyId (const X509AuthKeyId *authKeyId, uint8_t *output, size_t *written) |
| Format AuthorityKeyIdentifier extension. More... | |
| error_t | x509FormatNsCertType (const X509NsCertType *nsCertType, uint8_t *output, size_t *written) |
| Format NetscapeCertType extension. More... | |
Detailed Description
X.509 extension formatting.
License
SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2010-2025 Oryx Embedded SARL. All rights reserved.
This file is part of CycloneCRYPTO Open.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- Version
- 2.5.4
Definition in file x509_cert_ext_format.c.
Macro Definition Documentation
◆ TRACE_LEVEL
| #define TRACE_LEVEL CRYPTO_TRACE_LEVEL |
Definition at line 32 of file x509_cert_ext_format.c.
Function Documentation
◆ x509FormatAuthorityKeyId()
| error_t x509FormatAuthorityKeyId | ( | const X509AuthKeyId * | authKeyId, |
| uint8_t * | output, | ||
| size_t * | written | ||
| ) |
Format AuthorityKeyIdentifier extension.
- Parameters
-
[in] authKeyId Value of the extension [out] output Buffer where to format the ASN.1 structure [out] written Length of the resulting ASN.1 structure
- Returns
- Error code
Definition at line 1163 of file x509_cert_ext_format.c.
◆ x509FormatBasicConstraints()
| error_t x509FormatBasicConstraints | ( | const X509BasicConstraints * | basicConstraints, |
| uint8_t * | output, | ||
| size_t * | written | ||
| ) |
Format BasicConstraints extension.
- Parameters
-
[in] basicConstraints Value of the extension [out] output Buffer where to format the ASN.1 structure [out] written Length of the resulting ASN.1 structure
- Returns
- Error code
Definition at line 305 of file x509_cert_ext_format.c.
◆ x509FormatExtendedKeyUsage()
| error_t x509FormatExtendedKeyUsage | ( | const X509ExtendedKeyUsage * | extKeyUsage, |
| uint8_t * | output, | ||
| size_t * | written | ||
| ) |
Format ExtendedKeyUsage extension.
- Parameters
-
[in] extKeyUsage Value of the extension [out] output Buffer where to format the ASN.1 structure [out] written Length of the resulting ASN.1 structure
- Returns
- Error code
Definition at line 636 of file x509_cert_ext_format.c.
◆ x509FormatExtension()
| error_t x509FormatExtension | ( | const X509Extension * | extension, |
| uint8_t * | output, | ||
| size_t * | written | ||
| ) |
Format X.509 certificate extension.
- Parameters
-
[in] extension Pointer to the extension [out] output Buffer where to format the ASN.1 structure [out] written Length of the resulting ASN.1 structure
- Returns
- Error code
Definition at line 205 of file x509_cert_ext_format.c.
◆ x509FormatExtensions()
| error_t x509FormatExtensions | ( | const X509Extensions * | extensions, |
| const X509SubjectKeyId * | subjectKeyId, | ||
| const X509AuthKeyId * | authKeyId, | ||
| uint8_t * | output, | ||
| size_t * | written | ||
| ) |
Format Extensions structure.
- Parameters
-
[in] extensions Pointer to the X.509 extensions [in] subjectKeyId SubjectKeyIdentifier extension [in] authKeyId AuthorityKeyIdentifier extension [out] output Buffer where to format the ASN.1 structure [out] written Length of the resulting ASN.1 structure
- Returns
- Error code
Definition at line 55 of file x509_cert_ext_format.c.
◆ x509FormatKeyPurposes()
| error_t x509FormatKeyPurposes | ( | uint16_t | bitmap, |
| uint8_t * | output, | ||
| size_t * | written | ||
| ) |
Format the list of key purposes.
- Parameters
-
[in] bitmap Key purposes [out] output Buffer where to format the ASN.1 structure [out] written Length of the resulting ASN.1 structure
- Returns
- Error code
Definition at line 752 of file x509_cert_ext_format.c.
◆ x509FormatKeyUsage()
| error_t x509FormatKeyUsage | ( | const X509KeyUsage * | keyUsage, |
| uint8_t * | output, | ||
| size_t * | written | ||
| ) |
Format KeyUsage extension.
- Parameters
-
[in] keyUsage Value of the extension [out] output Buffer where to format the ASN.1 structure [out] written Length of the resulting ASN.1 structure
- Returns
- Error code
Definition at line 489 of file x509_cert_ext_format.c.
◆ x509FormatNsCertType()
| error_t x509FormatNsCertType | ( | const X509NsCertType * | nsCertType, |
| uint8_t * | output, | ||
| size_t * | written | ||
| ) |
Format NetscapeCertType extension.
- Parameters
-
[in] nsCertType Value of the extension [out] output Buffer where to format the ASN.1 structure [out] written Length of the resulting ASN.1 structure
- Returns
- Error code
Definition at line 1276 of file x509_cert_ext_format.c.
◆ x509FormatSubjectAltName()
| error_t x509FormatSubjectAltName | ( | const X509SubjectAltName * | subjectAltName, |
| uint8_t * | output, | ||
| size_t * | written | ||
| ) |
Format SubjectAltName extension.
- Parameters
-
[in] subjectAltName Value of the extension [out] output Buffer where to format the ASN.1 structure [out] written Length of the resulting ASN.1 structure
- Returns
- Error code
Definition at line 931 of file x509_cert_ext_format.c.
◆ x509FormatSubjectKeyId()
| error_t x509FormatSubjectKeyId | ( | const X509SubjectKeyId * | subjectKeyId, |
| uint8_t * | output, | ||
| size_t * | written | ||
| ) |
Format SubjectKeyIdentifier extension.
- Parameters
-
[in] subjectKeyId Value of the extension [out] output Buffer where to format the ASN.1 structure [out] written Length of the resulting ASN.1 structure
- Returns
- Error code
Definition at line 1065 of file x509_cert_ext_format.c.
