Data Structures | Typedefs | Enumerations | Functions | Variables
asn.h File Reference

Go to the source code of this file.

Data Structures

struct  WOLFSSL_ObjectInfo
 
struct  DNS_entry
 
struct  Base_entry
 
struct  DecodedName
 
struct  SignatureCtx
 
struct  CertSignCtx
 
struct  DecodedCert
 
struct  Signer
 
struct  TrustedPeerCert
 
struct  CertStatus
 
struct  OcspResponse
 
struct  OcspRequest
 
struct  OcspEntry
 
struct  RevokedCert
 
struct  DecodedCRL
 

Typedefs

typedef struct WOLFSSL_ObjectInfo WOLFSSL_ObjectInfo
 
typedef struct DNS_entry DNS_entry
 
typedef struct Base_entry Base_entry
 
typedef int(* wc_CallbackEccVerify) (const unsigned char *sig, unsigned int sigSz, const unsigned char *hash, unsigned int hashSz, const unsigned char *keyDer, unsigned int keySz, int *result, void *ctx)
 
typedef int(* wc_CallbackRsaVerify) (unsigned char *sig, unsigned int sigSz, unsigned char **out, const unsigned char *keyDer, unsigned int keySz, void *ctx)
 
typedef struct DecodedCert DecodedCert
 
typedef struct DecodedName DecodedName
 
typedef struct Signer Signer
 
typedef struct TrustedPeerCert TrustedPeerCert
 
typedef struct SignatureCtx SignatureCtx
 
typedef struct CertSignCtx CertSignCtx
 
typedef struct tm wolfssl_tm
 
typedef struct CertStatus CertStatus
 
typedef struct OcspRequest OcspRequest
 
typedef struct OcspResponse OcspResponse
 
typedef struct OcspEntry OcspEntry
 
typedef struct RevokedCert RevokedCert
 
typedef struct DecodedCRL DecodedCRL
 

Enumerations

enum  ASN_Tags {
  ASN_EOC = 0x00, ASN_BOOLEAN = 0x01, ASN_INTEGER = 0x02, ASN_BIT_STRING = 0x03,
  ASN_OCTET_STRING = 0x04, ASN_TAG_NULL = 0x05, ASN_OBJECT_ID = 0x06, ASN_ENUMERATED = 0x0a,
  ASN_UTF8STRING = 0x0c, ASN_SEQUENCE = 0x10, ASN_SET = 0x11, ASN_PRINTABLE_STRING = 0x13,
  ASN_UTC_TIME = 0x17, ASN_OTHER_TYPE = 0x00, ASN_RFC822_TYPE = 0x01, ASN_DNS_TYPE = 0x02,
  ASN_DIR_TYPE = 0x04, ASN_URI_TYPE = 0x06, ASN_IP_TYPE = 0x07, ASN_GENERALIZED_TIME = 0x18,
  CRL_EXTENSIONS = 0xa0, ASN_EXTENSIONS = 0xa3, ASN_LONG_LENGTH = 0x80, ASN_INDEF_LENGTH = 0x80,
  ASN_CONSTRUCTED = 0x20, ASN_APPLICATION = 0x40, ASN_CONTEXT_SPECIFIC = 0x80
}
 
enum  DN_Tags {
  ASN_DN_NULL = 0x00, ASN_COMMON_NAME = 0x03, ASN_SUR_NAME = 0x04, ASN_SERIAL_NUMBER = 0x05,
  ASN_COUNTRY_NAME = 0x06, ASN_LOCALITY_NAME = 0x07, ASN_STATE_NAME = 0x08, ASN_ORG_NAME = 0x0a,
  ASN_ORGUNIT_NAME = 0x0b, ASN_BUS_CAT = 0x0f, ASN_EMAIL_NAME = 0x98, ASN_USER_ID = 0x01,
  ASN_DOMAIN_COMPONENT = 0x19
}
 
enum  {
  NID_undef = 0, NID_netscape_cert_type = NID_undef, NID_des = 66, NID_des3 = 67,
  NID_sha256 = 672, NID_sha384 = 673, NID_sha512 = 674, NID_hw_name_oid = 73,
  NID_id_pkix_OCSP_basic = 74, NID_any_policy = 75, NID_anyExtendedKeyUsage = 76, NID_givenName = 99,
  NID_initials = 101, NID_title = 106, NID_description = 107, NID_basic_constraints = 133,
  NID_key_usage = 129, NID_ext_key_usage = 151, NID_subject_key_identifier = 128, NID_authority_key_identifier = 149,
  NID_private_key_usage_period = 130, NID_subject_alt_name = 131, NID_issuer_alt_name = 132, NID_info_access = 69,
  NID_sinfo_access = 79, NID_name_constraints = 144, NID_crl_distribution_points = 145, NID_certificate_policies = 146,
  NID_policy_mappings = 147, NID_policy_constraints = 150, NID_inhibit_any_policy = 168, NID_tlsfeature = 1020,
  NID_commonName = 0x03, NID_surname = 0x04, NID_serialNumber = 0x05, NID_countryName = 0x06,
  NID_localityName = 0x07, NID_stateOrProvinceName = 0x08, NID_organizationName = 0x0a, NID_organizationalUnitName = 0x0b,
  NID_jurisdictionCountryName = 0xc, NID_jurisdictionStateOrProvinceName = 0xd, NID_businessCategory = ASN_BUS_CAT, NID_domainComponent = ASN_DOMAIN_COMPONENT,
  NID_emailAddress = 0x30, NID_id_on_dnsSRV = 82, NID_ms_upn = 265, NID_X9_62_prime_field = 406
}
 
enum  ECC_TYPES { ECC_PREFIX_0 = 160, ECC_PREFIX_1 = 161 }
 
enum  PIV_Tags {
  ASN_PIV_CERT = 0x0A, ASN_PIV_NONCE = 0x0B, ASN_PIV_SIGNED_NONCE = 0x0C, ASN_PIV_TAG_CERT = 0x70,
  ASN_PIV_TAG_CERT_INFO = 0x71, ASN_PIV_TAG_MSCUID = 0x72, ASN_PIV_TAG_ERR_DET = 0xFE, ASN_PIV_CERT_INFO_COMPRESSED = 0x03,
  ASN_PIV_CERT_INFO_ISX509 = 0x04
}
 
enum  Misc_ASN {
  MAX_SALT_SIZE = 64, MAX_IV_SIZE = 64, ASN_BOOL_SIZE = 2, ASN_ECC_HEADER_SZ = 2,
  ASN_ECC_CONTEXT_SZ = 2, KEYID_SIZE = WC_SHA256_DIGEST_SIZE, KEYID_SIZE = WC_SHA256_DIGEST_SIZE, RSA_INTS = 8,
  DSA_INTS = 5, MIN_DATE_SIZE = 13, MAX_DATE_SIZE = 32, ASN_GEN_TIME_SZ = 15,
  MAX_ENCODED_SIG_SZ = 512, MAX_ENCODED_SIG_SZ = 512, MAX_ENCODED_SIG_SZ = 512, MAX_ENCODED_SIG_SZ = 512,
  MAX_SIG_SZ = 256, MAX_ALGO_SZ = 20, MAX_SHORT_SZ = 6, MAX_SEQ_SZ = 5,
  MAX_SET_SZ = 5, MAX_OCTET_STR_SZ = 5, MAX_EXP_SZ = 5, MAX_PRSTR_SZ = 5,
  MAX_VERSION_SZ = 5, MAX_ENCODED_DIG_ASN_SZ = 9, MAX_ENCODED_DIG_SZ = 64 + MAX_ENCODED_DIG_ASN_SZ, MAX_RSA_INT_SZ = 517,
  MAX_DSA_INT_SZ = 261, MAX_NTRU_KEY_SZ = 610, MAX_NTRU_ENC_SZ = 628, MAX_LENGTH_SZ = 4,
  MAX_RSA_E_SZ = 16, MAX_CA_SZ = 32, MAX_SN_SZ = 35, MAX_DER_DIGEST_SZ = MAX_ENCODED_DIG_SZ + MAX_ALGO_SZ + MAX_SEQ_SZ,
  MAX_DER_DIGEST_ASN_SZ = MAX_ENCODED_DIG_ASN_SZ + MAX_ALGO_SZ + MAX_SEQ_SZ, MAX_ATTRIB_SZ, MAX_EXTENSIONS_SZ = 1 + MAX_LENGTH_SZ + CTC_MAX_ALT_SIZE, MAX_EXTENSIONS_SZ = 1 + MAX_LENGTH_SZ + CTC_MAX_ALT_SIZE,
  MAX_OID_SZ = 32, MAX_OID_STRING_SZ = 64, MAX_KID_SZ = 45, MAX_KEYUSAGE_SZ = 18,
  MAX_EXTKEYUSAGE_SZ, MAX_CERTPOL_NB = CTC_MAX_CERTPOL_NB, MAX_CERTPOL_SZ = CTC_MAX_CERTPOL_SZ, MAX_AIA_SZ = 2,
  MAX_NAME_ENTRIES = 5, OCSP_NONCE_EXT_SZ = 35, MAX_OCSP_EXT_SZ = 58, MAX_OCSP_NONCE_SZ = 16,
  EIGHTK_BUF = 8192, MAX_PUBLIC_KEY_SZ = MAX_NTRU_ENC_SZ + MAX_ALGO_SZ + MAX_SEQ_SZ * 2, HEADER_ENCRYPTED_KEY_SIZE = 88, HEADER_ENCRYPTED_KEY_SIZE = 88,
  TRAILING_ZERO = 1, ASN_TAG_SZ = 1, MIN_VERSION_SZ = 3, MAX_TIME_STRING_SZ = 25,
  PKCS5_SALT_SZ = 8, PEM_LINE_LEN = 80
}
 
enum  Oid_Types {
  oidHashType = 0, oidSigType = 1, oidKeyType = 2, oidCurveType = 3,
  oidBlkType = 4, oidOcspType = 5, oidCertExtType = 6, oidCertAuthInfoType = 7,
  oidCertPolicyType = 8, oidCertAltNameType = 9, oidCertKeyUseType = 10, oidKdfType = 11,
  oidKeyWrapType = 12, oidCmsKeyAgreeType = 13, oidPBEType = 14, oidHmacType = 15,
  oidCompressType = 16, oidCertNameType = 17, oidTlsExtType = 18, oidCrlExtType = 19,
  oidIgnoreType
}
 
enum  Hash_Sum {
  MD2h = 646, MD5h = 649, SHAh = 88, SHA224h = 417,
  SHA256h = 414, SHA384h = 415, SHA512h = 416, SHA3_224h = 420,
  SHA3_256h = 421, SHA3_384h = 422, SHA3_512h = 423, MD2h = 646,
  MD5h = 649, SHAh = 88, SHA224h = 417, SHA256h = 414,
  SHA384h = 415, SHA512h = 416, SHA3_224h = 420, SHA3_256h = 421,
  SHA3_384h = 422, SHA3_512h = 423
}
 
enum  Block_Sum {
  AES128CBCb = 414, AES128GCMb = 418, AES128CCMb = 419, AES192CBCb = 434,
  AES192GCMb = 438, AES192CCMb = 439, AES256CBCb = 454, AES256GCMb = 458,
  AES256CCMb = 459, DESb = 69, DES3b
}
 
enum  Key_Sum {
  DSAk = 515, RSAk = 645, NTRUk = 274, ECDSAk = 518,
  ED25519k = 256, ED448k = 257, DHk = 647
}
 
enum  KeyWrap_Sum { AES128_WRAP = 417, AES192_WRAP = 437, AES256_WRAP = 457, PWRI_KEK_WRAP }
 
enum  Key_Agree {
  dhSinglePass_stdDH_sha1kdf_scheme = 464, dhSinglePass_stdDH_sha224kdf_scheme = 188, dhSinglePass_stdDH_sha256kdf_scheme = 189, dhSinglePass_stdDH_sha384kdf_scheme = 190,
  dhSinglePass_stdDH_sha512kdf_scheme = 191
}
 
enum  KDF_Sum { PBKDF2_OID = 660 }
 
enum  HMAC_Sum {
  HMAC_SHA224_OID = 652, HMAC_SHA256_OID = 653, HMAC_SHA384_OID = 654, HMAC_SHA512_OID = 655,
  HMAC_SHA3_224_OID = 426, HMAC_SHA3_256_OID = 427, HMAC_SHA3_384_OID = 428, HMAC_SHA3_512_OID = 429
}
 
enum  Extensions_Sum {
  BASIC_CA_OID = 133, ALT_NAMES_OID = 131, CRL_DIST_OID = 145, AUTH_INFO_OID = 69,
  AUTH_KEY_OID = 149, SUBJ_KEY_OID = 128, CERT_POLICY_OID = 146, KEY_USAGE_OID = 129,
  INHIBIT_ANY_OID = 168, EXT_KEY_USAGE_OID = 151, NAME_CONS_OID = 144, PRIV_KEY_USAGE_PERIOD_OID = 130,
  SUBJECT_INFO_ACCESS = 79, POLICY_MAP_OID = 147, POLICY_CONST_OID = 150, ISSUE_ALT_NAMES_OID = 132,
  TLS_FEATURE_OID = 92, NETSCAPE_CT_OID = 753
}
 
enum  CertificatePolicy_Sum { CP_ANY_OID = 146 }
 
enum  SepHardwareName_Sum { HW_NAME_OID = 79 }
 
enum  AuthInfo_Sum { AIA_OCSP_OID = 116, AIA_CA_ISSUER_OID = 117 }
 
enum  ExtKeyUsage_Sum {
  EKU_ANY_OID = 151, EKU_SERVER_AUTH_OID = 71, EKU_CLIENT_AUTH_OID = 72, EKU_CODESIGNING_OID = 73,
  EKU_EMAILPROTECT_OID = 74, EKU_TIMESTAMP_OID = 78, EKU_OCSP_SIGN_OID = 79
}
 
enum  CompressAlg_Sum { ZLIBc = 679 }
 
enum  VerifyType {
  NO_VERIFY = 0, VERIFY = 1, VERIFY_CRL = 2, VERIFY_OCSP = 3,
  VERIFY_NAME = 4, VERIFY_SKIP_DATE = 5
}
 
enum  KeyIdType { SKID_TYPE = 0, AKID_TYPE = 1 }
 
enum  SignatureState {
  SIG_STATE_BEGIN, SIG_STATE_HASH, SIG_STATE_KEY, SIG_STATE_DO,
  SIG_STATE_CHECK
}
 
enum  CertSignState { CERTSIGN_STATE_BEGIN, CERTSIGN_STATE_DIGEST, CERTSIGN_STATE_ENCODE, CERTSIGN_STATE_DO }
 
enum  cert_enums {
  NAME_ENTRIES = 10, NAME_ENTRIES = 10, JOINT_LEN = 2, EMAIL_JOINT_LEN = 9,
  PILOT_JOINT_LEN = 10, RSA_KEY = 10, NTRU_KEY = 11, ECC_KEY = 12,
  ED25519_KEY = 13, ED448_KEY = 14
}
 
enum  Ocsp_Response_Status {
  OCSP_SUCCESSFUL = 0, OCSP_MALFORMED_REQUEST = 1, OCSP_INTERNAL_ERROR = 2, OCSP_TRY_LATER = 3,
  OCSP_SIG_REQUIRED = 5, OCSP_UNAUTHROIZED = 6
}
 
enum  Ocsp_Cert_Status { CERT_GOOD = 0, CERT_REVOKED = 1, CERT_UNKNOWN = 2 }
 
enum  Ocsp_Sums { OCSP_BASIC_OID = 117, OCSP_NONCE_OID = 118 }
 
enum  Ocsp_Verify_Error { OCSP_VERIFY_ERROR_NONE = 0, OCSP_BAD_ISSUER = 1 }
 
enum  PBESTypes {
  PBE_MD5_DES = 0, PBE_SHA1_RC4_128 = 1, PBE_SHA1_DES = 2, PBE_SHA1_DES3 = 3,
  PBE_AES256_CBC = 4, PBE_AES128_CBC = 5, PBE_SHA1_RC4_128_SUM = 657, PBE_SHA1_DES3_SUM = 659,
  PBES2 = 13
}
 
enum  PKCSTypes { PKCS5v2 = 6, PKCS12v1 = 12, PKCS5 = 5, PKCS8v0 = 0 }
 

Functions

WOLFSSL_LOCAL int CalcHashId (const byte *data, word32 len, byte *hash)
 
WOLFSSL_ASN_API int wc_BerToDer (const byte *ber, word32 berSz, byte *der, word32 *derSz)
 
WOLFSSL_ASN_API void FreeAltNames (DNS_entry *, void *)
 
WOLFSSL_ASN_API void FreeNameSubtrees (Base_entry *, void *)
 
WOLFSSL_ASN_API void InitDecodedCert (DecodedCert *, const byte *, word32, void *)
 
WOLFSSL_ASN_API void FreeDecodedCert (DecodedCert *)
 
WOLFSSL_ASN_API int ParseCert (DecodedCert *, int type, int verify, void *cm)
 
WOLFSSL_LOCAL int DecodePolicyOID (char *o, word32 oSz, const byte *in, word32 inSz)
 
WOLFSSL_LOCAL int EncodePolicyOID (byte *out, word32 *outSz, const char *in, void *heap)
 
WOLFSSL_API int CheckCertSignature (const byte *, word32, void *, void *cm)
 
WOLFSSL_LOCAL int CheckCertSignaturePubKey (const byte *cert, word32 certSz, void *heap, const byte *pubKey, word32 pubKeySz, int pubKeyOID)
 
WOLFSSL_LOCAL int ParseCertRelative (DecodedCert *, int type, int verify, void *cm)
 
WOLFSSL_LOCAL int DecodeToKey (DecodedCert *, int verify)
 
WOLFSSL_LOCAL int wc_GetPubX509 (DecodedCert *cert, int verify, int *badDate)
 
WOLFSSL_LOCAL const byte * OidFromId (word32 id, word32 type, word32 *oidSz)
 
WOLFSSL_LOCAL SignerMakeSigner (void *)
 
WOLFSSL_LOCAL void FreeSigner (Signer *, void *)
 
WOLFSSL_LOCAL void FreeSignerTable (Signer **, int, void *)
 
WOLFSSL_LOCAL void FreeTrustedPeer (TrustedPeerCert *, void *)
 
WOLFSSL_LOCAL void FreeTrustedPeerTable (TrustedPeerCert **, int, void *)
 
WOLFSSL_ASN_API int ToTraditional (byte *buffer, word32 length)
 
WOLFSSL_ASN_API int ToTraditional_ex (byte *buffer, word32 length, word32 *algId)
 
WOLFSSL_LOCAL int ToTraditionalInline (const byte *input, word32 *inOutIdx, word32 length)
 
WOLFSSL_LOCAL int ToTraditionalInline_ex (const byte *input, word32 *inOutIdx, word32 length, word32 *algId)
 
WOLFSSL_LOCAL int ToTraditionalEnc (byte *buffer, word32 length, const char *, int, word32 *algId)
 
WOLFSSL_ASN_API int UnTraditionalEnc (byte *key, word32 keySz, byte *out, word32 *outSz, const char *password, int passwordSz, int vPKCS, int vAlgo, byte *salt, word32 saltSz, int itt, WC_RNG *rng, void *heap)
 
WOLFSSL_ASN_API int TraditionalEnc (byte *key, word32 keySz, byte *out, word32 *outSz, const char *password, int passwordSz, int vPKCS, int vAlgo, int encAlgId, byte *salt, word32 saltSz, int itt, WC_RNG *rng, void *heap)
 
WOLFSSL_LOCAL int DecryptContent (byte *input, word32 sz, const char *psw, int pswSz)
 
WOLFSSL_LOCAL int EncryptContent (byte *input, word32 sz, byte *out, word32 *outSz, const char *password, int passwordSz, int vPKCS, int vAlgo, byte *salt, word32 saltSz, int itt, WC_RNG *rng, void *heap)
 
WOLFSSL_LOCAL int wc_GetKeyOID (byte *key, word32 keySz, const byte **curveOID, word32 *oidSz, int *algoID, void *heap)
 
WOLFSSL_LOCAL int GetTimeString (byte *date, int format, char *buf, int len)
 
WOLFSSL_LOCAL int GetAsnTimeString (void *currTime, byte *buf, word32 len)
 
WOLFSSL_LOCAL int ExtractDate (const unsigned char *date, unsigned char format, wolfssl_tm *certTime, int *idx)
 
WOLFSSL_LOCAL int DateGreaterThan (const struct tm *a, const struct tm *b)
 
WOLFSSL_LOCAL int ValidateDate (const byte *date, byte format, int dateType)
 
WOLFSSL_LOCAL int wc_OBJ_sn2nid (const char *sn)
 
WOLFSSL_ASN_API int SetName (byte *output, word32 outputSz, CertName *name)
 
WOLFSSL_LOCAL int GetShortInt (const byte *input, word32 *inOutIdx, int *number, word32 maxIdx)
 
WOLFSSL_LOCAL int SetShortInt (byte *input, word32 *inOutIdx, word32 number, word32 maxIdx)
 
WOLFSSL_LOCAL const char * GetSigName (int oid)
 
WOLFSSL_LOCAL int GetLength (const byte *input, word32 *inOutIdx, int *len, word32 maxIdx)
 
WOLFSSL_LOCAL int GetLength_ex (const byte *input, word32 *inOutIdx, int *len, word32 maxIdx, int check)
 
WOLFSSL_LOCAL int GetSequence (const byte *input, word32 *inOutIdx, int *len, word32 maxIdx)
 
WOLFSSL_LOCAL int GetSequence_ex (const byte *input, word32 *inOutIdx, int *len, word32 maxIdx, int check)
 
WOLFSSL_LOCAL int GetOctetString (const byte *input, word32 *inOutIdx, int *len, word32 maxIdx)
 
WOLFSSL_LOCAL int GetSet (const byte *input, word32 *inOutIdx, int *len, word32 maxIdx)
 
WOLFSSL_LOCAL int GetSet_ex (const byte *input, word32 *inOutIdx, int *len, word32 maxIdx, int check)
 
WOLFSSL_LOCAL int GetMyVersion (const byte *input, word32 *inOutIdx, int *version, word32 maxIdx)
 
WOLFSSL_LOCAL int GetInt (mp_int *mpi, const byte *input, word32 *inOutIdx, word32 maxIdx)
 
WOLFSSL_LOCAL int EncodeObjectId (const word16 *in, word32 inSz, byte *out, word32 *outSz)
 
WOLFSSL_LOCAL int DecodeObjectId (const byte *in, word32 inSz, word16 *out, word32 *outSz)
 
WOLFSSL_LOCAL int GetASNObjectId (const byte *input, word32 *inOutIdx, int *len, word32 maxIdx)
 
WOLFSSL_LOCAL int SetObjectId (int len, byte *output)
 
WOLFSSL_LOCAL int GetObjectId (const byte *input, word32 *inOutIdx, word32 *oid, word32 oidType, word32 maxIdx)
 
WOLFSSL_LOCAL int GetAlgoId (const byte *input, word32 *inOutIdx, word32 *oid, word32 oidType, word32 maxIdx)
 
WOLFSSL_LOCAL int GetASNTag (const byte *input, word32 *idx, byte *tag, word32 inputSz)
 
WOLFSSL_LOCAL word32 SetLength (word32 length, byte *output)
 
WOLFSSL_LOCAL word32 SetSequence (word32 len, byte *output)
 
WOLFSSL_LOCAL word32 SetOctetString (word32 len, byte *output)
 
WOLFSSL_LOCAL int wc_DhParamsToDer (DhKey *key, byte *out, word32 *outSz)
 
WOLFSSL_LOCAL int wc_DhPubKeyToDer (DhKey *key, byte *out, word32 *outSz)
 
WOLFSSL_LOCAL int wc_DhPrivKeyToDer (DhKey *key, byte *out, word32 *outSz)
 
WOLFSSL_LOCAL word32 SetBitString (word32 len, byte unusedBits, byte *output)
 
WOLFSSL_LOCAL word32 SetImplicit (byte tag, byte number, word32 len, byte *output)
 
WOLFSSL_LOCAL word32 SetExplicit (byte number, word32 len, byte *output)
 
WOLFSSL_LOCAL word32 SetSet (word32 len, byte *output)
 
WOLFSSL_LOCAL word32 SetAlgoID (int algoOID, byte *output, int type, int curveSz)
 
WOLFSSL_LOCAL int SetMyVersion (word32 version, byte *output, int header)
 
WOLFSSL_LOCAL int SetSerialNumber (const byte *sn, word32 snSz, byte *output, word32 outputSz, int maxSnSz)
 
WOLFSSL_LOCAL int GetSerialNumber (const byte *input, word32 *inOutIdx, byte *serial, int *serialSz, word32 maxIdx)
 
WOLFSSL_LOCAL int GetNameHash (const byte *source, word32 *idx, byte *hash, int maxIdx)
 
WOLFSSL_LOCAL int wc_CheckPrivateKey (byte *key, word32 keySz, DecodedCert *der)
 
WOLFSSL_LOCAL int StoreDHparams (byte *out, word32 *outLen, mp_int *p, mp_int *g)
 
WOLFSSL_LOCAL int FlattenAltNames (byte *, word32, const DNS_entry *)
 
WOLFSSL_LOCAL int StoreECC_DSA_Sig (byte *out, word32 *outLen, mp_int *r, mp_int *s)
 
WOLFSSL_LOCAL int DecodeECC_DSA_Sig (const byte *sig, word32 sigLen, mp_int *r, mp_int *s)
 
WOLFSSL_API int EccEnumToNID (int n)
 
WOLFSSL_LOCAL void InitSignatureCtx (SignatureCtx *sigCtx, void *heap, int devId)
 
WOLFSSL_LOCAL void FreeSignatureCtx (SignatureCtx *sigCtx)
 
WOLFSSL_LOCAL int wc_EncryptedInfoParse (EncryptedInfo *info, char **pBuffer, size_t bufSz)
 
WOLFSSL_LOCAL int PemToDer (const unsigned char *buff, long sz, int type, DerBuffer **pDer, void *heap, EncryptedInfo *info, int *eccKey)
 
WOLFSSL_LOCAL int AllocDer (DerBuffer **der, word32 length, int type, void *heap)
 
WOLFSSL_LOCAL void FreeDer (DerBuffer **der)
 
WOLFSSL_LOCAL void InitOcspResponse (OcspResponse *, CertStatus *, byte *, word32)
 
WOLFSSL_LOCAL int OcspResponseDecode (OcspResponse *, void *, void *heap, int)
 
WOLFSSL_LOCAL int InitOcspRequest (OcspRequest *, DecodedCert *, byte, void *)
 
WOLFSSL_LOCAL void FreeOcspRequest (OcspRequest *)
 
WOLFSSL_LOCAL int EncodeOcspRequest (OcspRequest *, byte *, word32)
 
WOLFSSL_LOCAL word32 EncodeOcspRequestExtensions (OcspRequest *, byte *, word32)
 
WOLFSSL_LOCAL int CompareOcspReqResp (OcspRequest *, OcspResponse *)
 
WOLFSSL_LOCAL void InitDecodedCRL (DecodedCRL *, void *heap)
 
WOLFSSL_LOCAL int VerifyCRL_Signature (SignatureCtx *sigCtx, const byte *toBeSigned, word32 tbsSz, const byte *signature, word32 sigSz, word32 signatureOID, Signer *ca, void *heap)
 
WOLFSSL_LOCAL int ParseCRL (DecodedCRL *, const byte *buff, word32 sz, void *cm)
 
WOLFSSL_LOCAL void FreeDecodedCRL (DecodedCRL *)
 

Variables

 C
 
const size_t wolfssl_object_info_sz
 
const WOLFSSL_ObjectInfo wolfssl_object_info []
 

Variable Documentation

◆ C

C
Initial value:
{
#endif
#ifndef EXTERNAL_SERIAL_SIZE
#define EXTERNAL_SERIAL_SIZE 32
#endif
enum {
ISSUER = 0,
SUBJECT = 1,
BEFORE = 0,
AFTER = 1
}