Quellcode durchsuchen

Add a pile of compatibility functions.

Change-Id: I75c8783139c717be34a9159a2291d2ae55ee71d5
Reviewed-on: https://boringssl-review.googlesource.com/30984
Reviewed-by: Adam Langley <agl@google.com>
kris/onging/CECPQ3_patch15
David Benjamin vor 6 Jahren
committed by Adam Langley
Ursprung
Commit
bc3286bb8c
6 geänderte Dateien mit 47 neuen und 0 gelöschten Zeilen
  1. +2
    -0
      crypto/crypto.c
  2. +10
    -0
      crypto/x509/x509cset.c
  3. +25
    -0
      crypto/x509v3/v3_purp.c
  4. +3
    -0
      include/openssl/crypto.h
  5. +2
    -0
      include/openssl/x509.h
  6. +5
    -0
      include/openssl/x509v3.h

+ 2
- 0
crypto/crypto.c Datei anzeigen

@@ -214,3 +214,5 @@ int OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings) {
CRYPTO_library_init();
return 1;
}

void OPENSSL_cleanup(void) {}

+ 10
- 0
crypto/x509/x509cset.c Datei anzeigen

@@ -135,6 +135,16 @@ int X509_CRL_up_ref(X509_CRL *crl)
return 1;
}

const ASN1_TIME *X509_CRL_get0_lastUpdate(const X509_CRL *crl)
{
return crl->crl->lastUpdate;
}

const ASN1_TIME *X509_CRL_get0_nextUpdate(const X509_CRL *crl)
{
return crl->crl->nextUpdate;
}

void X509_CRL_get0_signature(const X509_CRL *crl, const ASN1_BIT_STRING **psig,
const X509_ALGOR **palg)
{


+ 25
- 0
crypto/x509v3/v3_purp.c Datei anzeigen

@@ -817,3 +817,28 @@ int X509_check_akid(X509 *issuer, AUTHORITY_KEYID *akid)
}
return X509_V_OK;
}

uint32_t X509_get_extension_flags(X509 *x)
{
/* Call for side-effect of computing hash and caching extensions */
X509_check_purpose(x, -1, -1);
return x->ex_flags;
}

uint32_t X509_get_key_usage(X509 *x)
{
/* Call for side-effect of computing hash and caching extensions */
X509_check_purpose(x, -1, -1);
if (x->ex_flags & EXFLAG_KUSAGE)
return x->ex_kusage;
return UINT32_MAX;
}

uint32_t X509_get_extended_key_usage(X509 *x)
{
/* Call for side-effect of computing hash and caching extensions */
X509_check_purpose(x, -1, -1);
if (x->ex_flags & EXFLAG_XKUSAGE)
return x->ex_xkusage;
return UINT32_MAX;
}

+ 3
- 0
include/openssl/crypto.h Datei anzeigen

@@ -125,6 +125,9 @@ OPENSSL_EXPORT void OPENSSL_load_builtin_modules(void);
OPENSSL_EXPORT int OPENSSL_init_crypto(uint64_t opts,
const OPENSSL_INIT_SETTINGS *settings);

// OPENSSL_cleanup does nothing.
OPENSSL_EXPORT void OPENSSL_cleanup(void);

// FIPS_mode_set returns one if |on| matches whether BoringSSL was built with
// |BORINGSSL_FIPS| and zero otherwise.
OPENSSL_EXPORT int FIPS_mode_set(int on);


+ 2
- 0
include/openssl/x509.h Datei anzeigen

@@ -531,6 +531,8 @@ extern "C" {
#define X509_get_signature_type(x) EVP_PKEY_type(OBJ_obj2nid((x)->sig_alg->algorithm))

#define X509_CRL_get_version(x) ASN1_INTEGER_get((x)->crl->version)
const ASN1_TIME *X509_CRL_get0_lastUpdate(const X509_CRL *crl);
const ASN1_TIME *X509_CRL_get0_nextUpdate(const X509_CRL *crl);
#define X509_CRL_get_lastUpdate(x) ((x)->crl->lastUpdate)
#define X509_CRL_get_nextUpdate(x) ((x)->crl->nextUpdate)
#define X509_CRL_get_issuer(x) ((x)->crl->issuer)


+ 5
- 0
include/openssl/x509v3.h Datei anzeigen

@@ -682,6 +682,11 @@ OPENSSL_EXPORT int X509_supported_extension(X509_EXTENSION *ex);
OPENSSL_EXPORT int X509_PURPOSE_set(int *p, int purpose);
OPENSSL_EXPORT int X509_check_issued(X509 *issuer, X509 *subject);
OPENSSL_EXPORT int X509_check_akid(X509 *issuer, AUTHORITY_KEYID *akid);

OPENSSL_EXPORT uint32_t X509_get_extension_flags(X509 *x);
OPENSSL_EXPORT uint32_t X509_get_key_usage(X509 *x);
OPENSSL_EXPORT uint32_t X509_get_extended_key_usage(X509 *x);

OPENSSL_EXPORT int X509_PURPOSE_get_count(void);
OPENSSL_EXPORT X509_PURPOSE * X509_PURPOSE_get0(int idx);
OPENSSL_EXPORT int X509_PURPOSE_get_by_sname(char *sname);


Laden…
Abbrechen
Speichern