21#ifndef PROTOCORE_X509_TYPES_H
22#define PROTOCORE_X509_TYPES_H
52#define PROTOCORE_X509_KU_DIGITAL_SIGNATURE 0x0001u
53#define PROTOCORE_X509_KU_NON_REPUDIATION 0x0002u
54#define PROTOCORE_X509_KU_KEY_ENCIPHERMENT 0x0004u
55#define PROTOCORE_X509_KU_DATA_ENCIPHERMENT 0x0008u
56#define PROTOCORE_X509_KU_KEY_AGREEMENT 0x0010u
57#define PROTOCORE_X509_KU_KEY_CERT_SIGN 0x0020u
58#define PROTOCORE_X509_KU_CRL_SIGN 0x0040u
PROTO_ENUM_PACKED
Application protocol spoken on a listener port or connection slot.
A run of the caller's bytes: where a field is, and how much of it there is.
size_t len
how many octets
const uint8_t * p
into the caller's encoding
protocore_x509_sig_alg sig_alg
protocore_x509_key_alg key_alg
#define PROTOCORE_BEGIN_DECLS
Give a header's declarations C linkage, so their symbol names carry no parameter types.
_Bool proto_bool
The truth value.
#define PROTOCORE_END_DECLS
enum PROTO_ENUM_PACKED protocore_x509_key_alg
The public key algorithms this profile reads (RFC 5280 sec 4.1.2.7).
@ PROTOCORE_X509_SIG_ED25519
id-Ed25519, 1.3.101.112 (RFC 8410 sec 3)
@ PROTOCORE_X509_SIG_RSA_SHA256
sha256WithRSAEncryption, {pkcs-1 11} (RFC 8017 A.2.4)
@ PROTOCORE_X509_SIG_UNKNOWN
an algorithm this build does not verify
@ PROTOCORE_X509_SIG_ECDSA_SHA256
ecdsa-with-SHA256, 1.2.840.10045.4.3.2 (RFC 5480 sec 2.1.1)
@ PROTOCORE_X509_KEY_ED25519
id-Ed25519 (RFC 8410 sec 4)
@ PROTOCORE_X509_SIG_RSA_SHA384
sha384WithRSAEncryption, {pkcs-1 12}
@ PROTOCORE_X509_KEY_RSA
rsaEncryption, {pkcs-1 1}
@ PROTOCORE_X509_SIG_RSA_SHA512
sha512WithRSAEncryption, {pkcs-1 13}
@ PROTOCORE_X509_SIG_ECDSA_SHA384
ecdsa-with-SHA384, 1.2.840.10045.4.3.3
@ PROTOCORE_X509_KEY_EC_P256
id-ecPublicKey over secp256r1 (RFC 5480 sec 2.1.1)
@ PROTOCORE_X509_KEY_UNKNOWN
an algorithm this build cannot use
@ PROTOCORE_X509_SIG_RSA_PSS
id-RSASSA-PSS, {pkcs-1 10}
PROTOCORE_BEGIN_DECLS enum PROTO_ENUM_PACKED protocore_x509_sig_alg
The signature algorithms this profile reads (RFC 5280 sec 4.1.1.2).