VirtualBox

忽略:
時間撮記:
2022-3-3 下午07:17:34 (3 年 以前)
作者:
vboxsync
svn:sync-xref-src-repo-rev:
150325
訊息:

libs/openssl-3.0.1: started applying and adjusting our OpenSSL changes to 3.0.1. bugref:10128

位置:
trunk/src/libs/openssl-3.0.1
檔案:
修改 2 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/libs/openssl-3.0.1

    • 屬性 svn:mergeinfo
      •  

        old new  
        1212/vendor/openssl/1.1.1c:131722-131725
        1313/vendor/openssl/1.1.1k:145841-145843
         14/vendor/openssl/3.0.1:150323-150324
         15/vendor/openssl/current:147554-150322
  • trunk/src/libs/openssl-3.0.1/include/crypto/x509.h

    r91772 r94082  
    22 * Copyright 2015-2021 The OpenSSL Project Authors. All Rights Reserved.
    33 *
    4  * Licensed under the OpenSSL license (the "License").  You may not use
     4 * Licensed under the Apache License 2.0 (the "License").  You may not use
    55 * this file except in compliance with the License.  You can obtain a copy
    66 * in the file LICENSE in the source distribution or at
     
    88 */
    99
    10 #include "internal/refcount.h"
    11 #include <openssl/x509.h>
    12 #include <openssl/conf.h>
     10#ifndef OSSL_CRYPTO_X509_H
     11# define OSSL_CRYPTO_X509_H
     12# pragma once
     13
     14# include "internal/refcount.h"
     15# include <openssl/asn1.h>
     16# include <openssl/x509.h>
     17# include <openssl/conf.h>
     18# include "crypto/types.h"
    1319
    1420/* Internal X509 structures and functions: not for application use */
     
    7480    CRYPTO_REF_COUNT references;
    7581    CRYPTO_RWLOCK *lock;
     82
     83    /* Set on live certificates for authentication purposes */
     84    ASN1_OCTET_STRING *distinguishing_id;
     85    OSSL_LIB_CTX *libctx;
     86    char *propq;
    7687};
    7788
     
    112123    void *meth_data;
    113124    CRYPTO_RWLOCK *lock;
     125
     126    OSSL_LIB_CTX *libctx;
     127    char *propq;
    114128};
    115129
     
    178192    STACK_OF(GENERAL_NAME) *altname;
    179193    NAME_CONSTRAINTS *nc;
    180 #ifndef OPENSSL_NO_RFC3779
     194# ifndef OPENSSL_NO_RFC3779
    181195    STACK_OF(IPAddressFamily) *rfc3779_addr;
    182196    struct ASIdentifiers_st *rfc3779_asid;
     
    186200    CRYPTO_RWLOCK *lock;
    187201    volatile int ex_cached;
     202
     203    /* Set on live certificates for authentication purposes */
     204    ASN1_OCTET_STRING *distinguishing_id;
     205
     206    OSSL_LIB_CTX *libctx;
     207    char *propq;
    188208} /* X509 */ ;
    189209
     
    194214 */
    195215struct x509_store_ctx_st {      /* X509_STORE_CTX */
    196     X509_STORE *ctx;
     216    X509_STORE *store;
    197217    /* The following are set by the caller */
    198218    /* The cert to check */
     
    224244    /* Check policy status of the chain */
    225245    int (*check_policy) (X509_STORE_CTX *ctx);
    226     STACK_OF(X509) *(*lookup_certs) (X509_STORE_CTX *ctx, X509_NAME *nm);
    227     STACK_OF(X509_CRL) *(*lookup_crls) (X509_STORE_CTX *ctx, X509_NAME *nm);
     246    STACK_OF(X509) *(*lookup_certs) (X509_STORE_CTX *ctx,
     247                                     const X509_NAME *nm);
     248    /* cannot constify 'ctx' param due to lookup_certs_sk() in x509_vfy.c */
     249    STACK_OF(X509_CRL) *(*lookup_crls) (const X509_STORE_CTX *ctx,
     250                                        const X509_NAME *nm);
    228251    int (*cleanup) (X509_STORE_CTX *ctx);
    229252    /* The following is built up */
     
    256279    /* signed via bare TA public key, rather than CA certificate */
    257280    int bare_ta_signed;
     281
     282    OSSL_LIB_CTX *libctx;
     283    char *propq;
    258284};
    259285
     
    283309};
    284310
    285 int a2i_ipadd(unsigned char *ipout, const char *ipasc);
    286 int x509_set1_time(ASN1_TIME **ptm, const ASN1_TIME *tm);
    287 
    288 void x509_init_sig_info(X509 *x);
     311int ossl_a2i_ipadd(unsigned char *ipout, const char *ipasc);
     312int ossl_x509_set1_time(ASN1_TIME **ptm, const ASN1_TIME *tm);
     313int ossl_x509_print_ex_brief(BIO *bio, X509 *cert, unsigned long neg_cflags);
     314int ossl_x509v3_cache_extensions(X509 *x);
     315int ossl_x509_init_sig_info(X509 *x);
     316
     317int ossl_x509_set0_libctx(X509 *x, OSSL_LIB_CTX *libctx, const char *propq);
     318int ossl_x509_crl_set0_libctx(X509_CRL *x, OSSL_LIB_CTX *libctx,
     319                              const char *propq);
     320int ossl_x509_req_set0_libctx(X509_REQ *x, OSSL_LIB_CTX *libctx,
     321                              const char *propq);
     322int ossl_asn1_item_digest_ex(const ASN1_ITEM *it, const EVP_MD *type,
     323                             void *data, unsigned char *md, unsigned int *len,
     324                             OSSL_LIB_CTX *libctx, const char *propq);
     325int ossl_x509_add_cert_new(STACK_OF(X509) **sk, X509 *cert, int flags);
     326int ossl_x509_add_certs_new(STACK_OF(X509) **p_sk, STACK_OF(X509) *certs,
     327                            int flags);
     328
     329STACK_OF(X509_ATTRIBUTE) *ossl_x509at_dup(const STACK_OF(X509_ATTRIBUTE) *x);
     330
     331int ossl_x509_PUBKEY_get0_libctx(OSSL_LIB_CTX **plibctx, const char **ppropq,
     332                                 const X509_PUBKEY *key);
     333/* Calculate default key identifier according to RFC 5280 section 4.2.1.2 (1) */
     334ASN1_OCTET_STRING *ossl_x509_pubkey_hash(X509_PUBKEY *pubkey);
     335
     336X509_PUBKEY *ossl_d2i_X509_PUBKEY_INTERNAL(const unsigned char **pp,
     337                                           long len, OSSL_LIB_CTX *libctx);
     338void ossl_X509_PUBKEY_INTERNAL_free(X509_PUBKEY *xpub);
     339
     340RSA *ossl_d2i_RSA_PSS_PUBKEY(RSA **a, const unsigned char **pp, long length);
     341int ossl_i2d_RSA_PSS_PUBKEY(const RSA *a, unsigned char **pp);
     342# ifndef OPENSSL_NO_DH
     343DH *ossl_d2i_DH_PUBKEY(DH **a, const unsigned char **pp, long length);
     344int ossl_i2d_DH_PUBKEY(const DH *a, unsigned char **pp);
     345DH *ossl_d2i_DHx_PUBKEY(DH **a, const unsigned char **pp, long length);
     346int ossl_i2d_DHx_PUBKEY(const DH *a, unsigned char **pp);
     347# endif /* OPENSSL_NO_DH */
     348# ifndef OPENSSL_NO_EC
     349ECX_KEY *ossl_d2i_ED25519_PUBKEY(ECX_KEY **a,
     350                                 const unsigned char **pp, long length);
     351int ossl_i2d_ED25519_PUBKEY(const ECX_KEY *a, unsigned char **pp);
     352ECX_KEY *ossl_d2i_ED448_PUBKEY(ECX_KEY **a,
     353                               const unsigned char **pp, long length);
     354int ossl_i2d_ED448_PUBKEY(const ECX_KEY *a, unsigned char **pp);
     355ECX_KEY *ossl_d2i_X25519_PUBKEY(ECX_KEY **a,
     356                                const unsigned char **pp, long length);
     357int ossl_i2d_X25519_PUBKEY(const ECX_KEY *a, unsigned char **pp);
     358ECX_KEY *ossl_d2i_X448_PUBKEY(ECX_KEY **a,
     359                              const unsigned char **pp, long length);
     360int ossl_i2d_X448_PUBKEY(const ECX_KEY *a, unsigned char **pp);
     361# endif /* OPENSSL_NO_EC */
     362EVP_PKEY *ossl_d2i_PUBKEY_legacy(EVP_PKEY **a, const unsigned char **pp,
     363                                 long length);
    289364
    290365int x509v3_add_len_value_uchar(const char *name, const unsigned char *value,
    291366                               size_t vallen, STACK_OF(CONF_VALUE) **extlist);
     367#endif  /* OSSL_CRYPTO_X509_H */
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette