Ignore:
Timestamp:
Feb 7, 2019, 8:36:33 AM (5 years ago)
Author:
coas-nagasima
Message:

wolfsslを3.15.7にバージョンアップ

File:
1 edited

Legend:

Unmodified
Added
Removed
  • asp3_tinet_ecnl_arm/trunk/wolfssl-3.12.2/wolfssl/openssl/ssl.h

    r352 r372  
    3131
    3232/* wolfssl_openssl compatibility layer */
     33#ifndef OPENSSL_EXTRA_SSL_GUARD
     34#define OPENSSL_EXTRA_SSL_GUARD
    3335#include <wolfssl/ssl.h>
     36#endif /* OPENSSL_EXTRA_SSL_GUARD */
    3437
    3538#include <wolfssl/openssl/evp.h>
     39#ifdef OPENSSL_EXTRA
     40#include <wolfssl/openssl/crypto.h>
     41#endif
     42
     43#if defined(WOLFSSL_ASIO) || defined(WOLFSSL_HAPROXY)
     44#include <wolfssl/wolfcrypt/asn.h>
     45#endif
    3646
    3747#ifdef __cplusplus
     
    5666
    5767typedef WOLFSSL_X509       X509;
     68typedef WOLFSSL_X509       X509_REQ;
    5869typedef WOLFSSL_X509_NAME  X509_NAME;
    5970typedef WOLFSSL_X509_CHAIN X509_CHAIN;
    6071
     72typedef WOLFSSL_STACK      EXTENDED_KEY_USAGE;
     73
    6174
    6275/* redeclare guard */
    6376#define WOLFSSL_TYPES_DEFINED
    6477
    65 
    66 typedef WOLFSSL_EVP_PKEY               EVP_PKEY;
    6778typedef WOLFSSL_BIO                    BIO;
    6879typedef WOLFSSL_BIO_METHOD             BIO_METHOD;
     
    8798#define ASN1_GENERALIZEDTIME WOLFSSL_ASN1_TIME
    8899
    89 typedef WOLFSSL_MD4_CTX        MD4_CTX;
    90100typedef WOLFSSL_COMP_METHOD    COMP_METHOD;
    91101typedef WOLFSSL_X509_REVOKED   X509_REVOKED;
     
    94104typedef WOLFSSL_X509_STORE_CTX X509_STORE_CTX;
    95105
     106#define EVP_CIPHER_INFO        EncryptedInfo
     107
     108#define STACK_OF(x) WOLFSSL_STACK
     109
    96110#define CRYPTO_free   XFREE
    97111#define CRYPTO_malloc XMALLOC
     112#define CRYPTO_EX_new                   WOLFSSL_CRYPTO_EX_new
     113#define CRYPTO_EX_dup                   WOLFSSL_CRYPTO_EX_dup
     114#define CRYPTO_EX_free                  WOLFSSL_CRYPTO_EX_free
     115
     116/* depreciated */
     117#define CRYPTO_thread_id                wolfSSL_thread_id
     118#define CRYPTO_set_id_callback          wolfSSL_set_id_callback
     119 
     120#define CRYPTO_LOCK             0x01
     121#define CRYPTO_UNLOCK           0x02
     122#define CRYPTO_READ             0x04
     123#define CRYPTO_WRITE            0x08
     124
     125#define CRYPTO_set_locking_callback     wolfSSL_set_locking_callback
     126#define CRYPTO_set_dynlock_create_callback  wolfSSL_set_dynlock_create_callback
     127#define CRYPTO_set_dynlock_lock_callback wolfSSL_set_dynlock_lock_callback
     128#define CRYPTO_set_dynlock_destroy_callback wolfSSL_set_dynlock_destroy_callback
     129#define CRYPTO_num_locks                wolfSSL_num_locks
     130#define CRYPTO_dynlock_value            WOLFSSL_dynlock_value
     131
     132#define CRYPTO_cleanup_all_ex_data      wolfSSL_cleanup_all_ex_data
     133
     134/* this function was used to set the default malloc, free, and realloc */
     135#define CRYPTO_malloc_init() /* CRYPTO_malloc_init is not needed */
    98136
    99137#define SSL_get_client_random(ssl,out,outSz) \
     
    103141#define SSL_get_shared_ciphers(ctx,buf,len) \
    104142                                   wolfSSL_get_shared_ciphers((ctx),(buf),(len))
    105 
    106 #define ERR_print_errors_fp(file) wolfSSL_ERR_dump_errors_fp((file))
    107143
    108144/* at the moment only returns ok */
     
    115151#define SSL_use_certificate           wolfSSL_use_certificate
    116152#define SSL_use_certificate_ASN1      wolfSSL_use_certificate_ASN1
    117 
     153#define d2i_PKCS8_PRIV_KEY_INFO_bio     wolfSSL_d2i_PKCS8_PKEY_bio
     154#define d2i_PKCS8PrivateKey_bio         wolfSSL_d2i_PKCS8PrivateKey_bio
     155#define PKCS8_PRIV_KEY_INFO_free        wolfSSL_EVP_PKEY_free
     156#define d2i_PKCS12_fp                   wolfSSL_d2i_PKCS12_fp
     157
     158#define d2i_PUBKEY                      wolfSSL_d2i_PUBKEY
     159#define d2i_PUBKEY_bio                  wolfSSL_d2i_PUBKEY_bio
     160#define d2i_PrivateKey                  wolfSSL_d2i_PrivateKey
     161#define d2i_AutoPrivateKey              wolfSSL_d2i_AutoPrivateKey
    118162#define SSL_use_PrivateKey         wolfSSL_use_PrivateKey
    119163#define SSL_use_PrivateKey_ASN1    wolfSSL_use_PrivateKey_ASN1
     
    122166
    123167#define SSLv23_method       wolfSSLv23_method
     168#define SSLv23_client_method            wolfSSLv23_client_method
     169#define SSLv2_client_method             wolfSSLv2_client_method
     170#define SSLv2_server_method             wolfSSLv2_server_method
    124171#define SSLv3_server_method wolfSSLv3_server_method
    125172#define SSLv3_client_method wolfSSLv3_client_method
     173#define TLSv1_method                    wolfTLSv1_method
    126174#define TLSv1_server_method wolfTLSv1_server_method
    127175#define TLSv1_client_method wolfTLSv1_client_method
     176#define TLSv1_1_method                  wolfTLSv1_1_method
    128177#define TLSv1_1_server_method wolfTLSv1_1_server_method
    129178#define TLSv1_1_client_method wolfTLSv1_1_client_method
     179#define TLSv1_2_method                  wolfTLSv1_2_method
    130180#define TLSv1_2_server_method wolfTLSv1_2_server_method
    131181#define TLSv1_2_client_method wolfTLSv1_2_client_method
     182#define TLSv1_3_method                  wolfTLSv1_3_method
     183#define TLSv1_3_server_method           wolfTLSv1_3_server_method
     184#define TLSv1_3_client_method           wolfTLSv1_3_client_method
     185
     186#define X509_FILETYPE_ASN1 SSL_FILETYPE_ASN1
    132187
    133188#ifdef WOLFSSL_DTLS
     
    185240#define SSL_CTX_set_cipher_list wolfSSL_CTX_set_cipher_list
    186241#define SSL_set_cipher_list     wolfSSL_set_cipher_list
    187 
    188 #define ERR_error_string wolfSSL_ERR_error_string
    189 #define ERR_error_string_n wolfSSL_ERR_error_string_n
    190 #define ERR_reason_error_string wolfSSL_ERR_reason_error_string
    191242
    192243#define SSL_set_ex_data wolfSSL_set_ex_data
     
    216267#define SSL_SESSION_get_master_key_length wolfSSL_SESSION_get_master_key_length
    217268
    218 #define X509_NAME_get_text_by_NID wolfSSL_X509_NAME_get_text_by_NID
    219 #define X509_get_ext_d2i wolfSSL_X509_get_ext_d2i
    220 #define X509_digest wolfSSL_X509_digest
     269#define DSA_dup_DH                      wolfSSL_DSA_dup_DH
     270 
     271#define i2d_X509_bio                    wolfSSL_i2d_X509_bio
     272#define d2i_X509_bio                    wolfSSL_d2i_X509_bio
     273#define d2i_X509_fp                     wolfSSL_d2i_X509_fp
     274#define i2d_X509                        wolfSSL_i2d_X509
     275#define d2i_X509                        wolfSSL_d2i_X509
     276#define PEM_read_bio_X509               wolfSSL_PEM_read_bio_X509
     277#define PEM_read_bio_X509_AUX           wolfSSL_PEM_read_bio_X509_AUX
     278#define PEM_read_X509                   wolfSSL_PEM_read_X509
     279#define PEM_write_bio_X509              wolfSSL_PEM_write_bio_X509
     280#define PEM_write_bio_X509_AUX          wolfSSL_PEM_write_bio_X509_AUX
     281
     282#define i2d_X509_REQ                    wolfSSL_i2d_X509_REQ
     283#define X509_REQ_new                    wolfSSL_X509_REQ_new
     284#define X509_REQ_free                   wolfSSL_X509_REQ_free
     285#define X509_REQ_sign                   wolfSSL_X509_REQ_sign
     286#define X509_REQ_set_subject_name       wolfSSL_X509_REQ_set_subject_name
     287#define X509_REQ_set_pubkey             wolfSSL_X509_REQ_set_pubkey
     288#define PEM_write_bio_X509_REQ          wolfSSL_PEM_write_bio_X509_REQ
     289
     290#define X509_new                        wolfSSL_X509_new
    221291#define X509_free wolfSSL_X509_free
    222 #define OPENSSL_free wolfSSL_OPENSSL_free
     292#define X509_load_certificate_file      wolfSSL_X509_load_certificate_file
     293#define X509_digest                     wolfSSL_X509_digest
     294#define X509_get_ext_d2i                wolfSSL_X509_get_ext_d2i
     295#define X509_get_issuer_name            wolfSSL_X509_get_issuer_name
     296#define X509_get_subject_name           wolfSSL_X509_get_subject_name
     297#define X509_get_pubkey                 wolfSSL_X509_get_pubkey
     298#define X509_get_notBefore(cert)      (ASN1_TIME*)wolfSSL_X509_notBefore((cert))
     299#define X509_get_notAfter(cert)       (ASN1_TIME*)wolfSSL_X509_notAfter((cert))
     300#define X509_get_serialNumber           wolfSSL_X509_get_serialNumber
     301#define X509_get0_pubkey_bitstr         wolfSSL_X509_get0_pubkey_bitstr
     302#define X509_get_ex_new_index           wolfSSL_X509_get_ex_new_index
     303#define X509_get_ex_data                wolfSSL_X509_get_ex_data
     304#define X509_set_ex_data                wolfSSL_X509_set_ex_data
     305#define X509_get1_ocsp                  wolfSSL_X509_get1_ocsp
     306#ifndef WOLFSSL_HAPROXY
     307#define X509_get_version                wolfSSL_X509_get_version
     308#endif
     309#define X509_get_signature_nid          wolfSSL_X509_get_signature_nid
     310#define X509_set_subject_name           wolfSSL_X509_set_subject_name
     311#define X509_set_pubkey                 wolfSSL_X509_set_pubkey
     312#define X509_print                      wolfSSL_X509_print
     313#define X509_verify_cert_error_string   wolfSSL_X509_verify_cert_error_string
     314#define X509_verify_cert                wolfSSL_X509_verify_cert
     315#define X509_check_private_key          wolfSSL_X509_check_private_key
     316#define X509_check_ca                   wolfSSL_X509_check_ca
     317#define X509_check_host                 wolfSSL_X509_check_host
     318#define X509_email_free                 wolfSSL_X509_email_free
     319#define X509_check_issued               wolfSSL_X509_check_issued
     320#define X509_dup                        wolfSSL_X509_dup
     321 
     322#define sk_X509_new                     wolfSSL_sk_X509_new
     323#define sk_X509_num                     wolfSSL_sk_X509_num
     324#define sk_X509_value                   wolfSSL_sk_X509_value
     325#define sk_X509_push                    wolfSSL_sk_X509_push
     326#define sk_X509_pop                     wolfSSL_sk_X509_pop
     327#define sk_X509_pop_free                wolfSSL_sk_X509_pop_free
     328#define sk_X509_free                    wolfSSL_sk_X509_free
     329
     330#define i2d_X509_NAME                   wolfSSL_i2d_X509_NAME
     331#define X509_NAME_new                   wolfSSL_X509_NAME_new
     332#define X509_NAME_free                  wolfSSL_X509_NAME_free
     333#define X509_NAME_get_text_by_NID       wolfSSL_X509_NAME_get_text_by_NID
     334#define X509_NAME_cmp                   wolfSSL_X509_NAME_cmp
     335#define X509_NAME_ENTRY_free            wolfSSL_X509_NAME_ENTRY_free
     336#define X509_NAME_ENTRY_create_by_NID   wolfSSL_X509_NAME_ENTRY_create_by_NID
     337#define X509_NAME_add_entry             wolfSSL_X509_NAME_add_entry
     338#define X509_NAME_add_entry_by_txt      wolfSSL_X509_NAME_add_entry_by_txt
     339#define X509_NAME_oneline               wolfSSL_X509_NAME_oneline
     340#define X509_NAME_get_index_by_NID      wolfSSL_X509_NAME_get_index_by_NID
     341#define X509_NAME_print_ex              wolfSSL_X509_NAME_print_ex
     342#define X509_NAME_digest                wolfSSL_X509_NAME_digest
     343#define X509_cmp_current_time           wolfSSL_X509_cmp_current_time
     344
     345#define sk_X509_NAME_pop_free           wolfSSL_sk_X509_NAME_pop_free
     346#define sk_X509_NAME_num                wolfSSL_sk_X509_NAME_num
     347#define sk_X509_NAME_value              wolfSSL_sk_X509_NAME_value
     348
     349    typedef WOLFSSL_X509_NAME_ENTRY X509_NAME_ENTRY;
     350
     351#define X509_NAME_entry_count           wolfSSL_X509_NAME_entry_count
     352#define X509_NAME_ENTRY_get_object      wolfSSL_X509_NAME_ENTRY_get_object
     353#define X509_NAME_get_entry             wolfSSL_X509_NAME_get_entry
     354#define X509_NAME_ENTRY_get_data        wolfSSL_X509_NAME_ENTRY_get_data
     355#define X509_NAME_ENTRY_get_object      wolfSSL_X509_NAME_ENTRY_get_object
     356
     357#define X509_V_FLAG_CRL_CHECK     WOLFSSL_CRL_CHECK
     358#define X509_V_FLAG_CRL_CHECK_ALL WOLFSSL_CRL_CHECKALL
     359
     360#define X509_V_FLAG_USE_CHECK_TIME WOLFSSL_USE_CHECK_TIME
     361#define X509_V_FLAG_NO_CHECK_TIME  WOLFSSL_NO_CHECK_TIME
     362#define X509_CHECK_FLAG_NO_WILDCARDS WOLFSSL_NO_WILDCARDS
     363
     364#define X509_STORE_CTX_get_current_cert wolfSSL_X509_STORE_CTX_get_current_cert
     365#define X509_STORE_CTX_set_verify_cb    wolfSSL_X509_STORE_CTX_set_verify_cb
     366#define X509_STORE_CTX_new              wolfSSL_X509_STORE_CTX_new
     367#define X509_STORE_CTX_free             wolfSSL_X509_STORE_CTX_free
     368#define X509_STORE_CTX_get_chain        wolfSSL_X509_STORE_CTX_get_chain
     369#define X509_STORE_CTX_get_error        wolfSSL_X509_STORE_CTX_get_error
     370#define X509_STORE_CTX_get_error_depth  wolfSSL_X509_STORE_CTX_get_error_depth
     371#define X509_STORE_CTX_init             wolfSSL_X509_STORE_CTX_init
     372#define X509_STORE_CTX_cleanup          wolfSSL_X509_STORE_CTX_cleanup
     373#define X509_STORE_CTX_set_error        wolfSSL_X509_STORE_CTX_set_error
     374#define X509_STORE_CTX_get_ex_data      wolfSSL_X509_STORE_CTX_get_ex_data
     375 
     376#define X509_STORE_new                  wolfSSL_X509_STORE_new
     377#define X509_STORE_free                 wolfSSL_X509_STORE_free
     378#define X509_STORE_add_lookup           wolfSSL_X509_STORE_add_lookup
     379#define X509_STORE_add_cert             wolfSSL_X509_STORE_add_cert
     380#define X509_STORE_add_crl              wolfSSL_X509_STORE_add_crl
     381#define X509_STORE_set_flags            wolfSSL_X509_STORE_set_flags
     382#define X509_STORE_get1_certs           wolfSSL_X509_STORE_get1_certs
     383#define X509_STORE_get_by_subject       wolfSSL_X509_STORE_get_by_subject
     384#define X509_STORE_CTX_get1_issuer      wolfSSL_X509_STORE_CTX_get1_issuer
     385#define X509_STORE_CTX_set_time         wolfSSL_X509_STORE_CTX_set_time
     386
     387#define X509_LOOKUP_add_dir             wolfSSL_X509_LOOKUP_add_dir
     388#define X509_LOOKUP_load_file           wolfSSL_X509_LOOKUP_load_file
     389#define X509_LOOKUP_hash_dir            wolfSSL_X509_LOOKUP_hash_dir
     390#define X509_LOOKUP_file                wolfSSL_X509_LOOKUP_file
     391 
     392#define d2i_X509_CRL                    wolfSSL_d2i_X509_CRL
     393#define d2i_X509_CRL_fp                 wolfSSL_d2i_X509_CRL_fp
     394#define PEM_read_X509_CRL               wolfSSL_PEM_read_X509_CRL
     395 
     396#define X509_CRL_free                   wolfSSL_X509_CRL_free
     397#define X509_CRL_get_lastUpdate         wolfSSL_X509_CRL_get_lastUpdate
     398#define X509_CRL_get_nextUpdate         wolfSSL_X509_CRL_get_nextUpdate
     399#define X509_CRL_verify                 wolfSSL_X509_CRL_verify
     400#define X509_CRL_get_REVOKED            wolfSSL_X509_CRL_get_REVOKED
     401
     402#define sk_X509_REVOKED_num             wolfSSL_sk_X509_REVOKED_num
     403#define sk_X509_REVOKED_value           wolfSSL_sk_X509_REVOKED_value
     404
     405#define X509_OBJECT_free_contents       wolfSSL_X509_OBJECT_free_contents
    223406
    224407#define OCSP_parse_url wolfSSL_OCSP_parse_url
    225 #define SSLv23_client_method wolfSSLv23_client_method
    226 #define SSLv2_client_method wolfSSLv2_client_method
    227 #define SSLv2_server_method wolfSSLv2_server_method
    228408
    229409#define MD4_Init wolfSSL_MD4_Init
     
    260440#define BIO_set_flags wolfSSL_BIO_set_flags
    261441
    262 #define OpenSSL_add_all_digests()
    263 #define OpenSSL_add_all_algorithms wolfSSL_add_all_algorithms
    264442#define SSLeay_add_ssl_algorithms  wolfSSL_add_all_algorithms
    265443#define SSLeay_add_all_algorithms  wolfSSL_add_all_algorithms
     
    271449#define RAND_egd        wolfSSL_RAND_egd
    272450#define RAND_seed       wolfSSL_RAND_seed
     451#define RAND_cleanup                    wolfSSL_RAND_Cleanup
    273452#define RAND_add        wolfSSL_RAND_add
     453#define RAND_poll                       wolfSSL_RAND_poll
     454#define RAND_status                     wolfSSL_RAND_status
     455#define RAND_bytes                      wolfSSL_RAND_bytes
     456#define RAND_pseudo_bytes               wolfSSL_RAND_pseudo_bytes
    274457
    275458#define COMP_zlib                       wolfSSL_COMP_zlib
     
    279462#define SSL_get_ex_new_index wolfSSL_get_ex_new_index
    280463
    281 #define CRYPTO_set_id_callback wolfSSL_set_id_callback
    282 #define CRYPTO_set_locking_callback wolfSSL_set_locking_callback
    283 #define CRYPTO_set_dynlock_create_callback wolfSSL_set_dynlock_create_callback
    284 #define CRYPTO_set_dynlock_lock_callback wolfSSL_set_dynlock_lock_callback
    285 #define CRYPTO_set_dynlock_destroy_callback wolfSSL_set_dynlock_destroy_callback
    286 #define CRYPTO_num_locks wolfSSL_num_locks
    287 
    288 
    289 #define CRYPTO_LOCK             1
    290 #define CRYPTO_UNLOCK           2
    291 #define CRYPTO_READ             4
    292 #define CRYPTO_WRITE            8
    293 
    294 #define X509_STORE_CTX_get_current_cert wolfSSL_X509_STORE_CTX_get_current_cert
    295 #define X509_STORE_add_cert             wolfSSL_X509_STORE_add_cert
    296 #define X509_STORE_set_flags            wolfSSL_X509_STORE_set_flags
    297 #define X509_STORE_CTX_get_chain        wolfSSL_X509_STORE_CTX_get_chain
    298 #define X509_STORE_CTX_get_error wolfSSL_X509_STORE_CTX_get_error
    299 #define X509_STORE_CTX_get_error_depth wolfSSL_X509_STORE_CTX_get_error_depth
    300 
    301 #define X509_NAME_oneline             wolfSSL_X509_NAME_oneline
    302 #define X509_get_issuer_name          wolfSSL_X509_get_issuer_name
    303 #define X509_get_subject_name         wolfSSL_X509_get_subject_name
    304 #define X509_verify_cert_error_string wolfSSL_X509_verify_cert_error_string
    305 
    306 #define X509_LOOKUP_add_dir wolfSSL_X509_LOOKUP_add_dir
    307 #define X509_LOOKUP_load_file wolfSSL_X509_LOOKUP_load_file
    308 #define X509_LOOKUP_hash_dir wolfSSL_X509_LOOKUP_hash_dir
    309 #define X509_LOOKUP_file wolfSSL_X509_LOOKUP_file
    310 
    311 #define X509_STORE_add_lookup wolfSSL_X509_STORE_add_lookup
    312 #define X509_STORE_new wolfSSL_X509_STORE_new
    313 #define X509_STORE_get_by_subject wolfSSL_X509_STORE_get_by_subject
    314 #define X509_STORE_CTX_init wolfSSL_X509_STORE_CTX_init
    315 #define X509_STORE_CTX_cleanup wolfSSL_X509_STORE_CTX_cleanup
    316 
    317 #define X509_CRL_get_lastUpdate wolfSSL_X509_CRL_get_lastUpdate
    318 #define X509_CRL_get_nextUpdate wolfSSL_X509_CRL_get_nextUpdate
    319 
    320 #define X509_get_pubkey           wolfSSL_X509_get_pubkey
    321 #define X509_CRL_verify           wolfSSL_X509_CRL_verify
    322 #define X509_STORE_CTX_set_error  wolfSSL_X509_STORE_CTX_set_error
    323 #define X509_OBJECT_free_contents wolfSSL_X509_OBJECT_free_contents
    324 #define EVP_PKEY_new              wolfSSL_PKEY_new
    325 #define EVP_PKEY_free             wolfSSL_EVP_PKEY_free
    326 #define EVP_PKEY_type             wolfSSL_EVP_PKEY_type
    327 #define EVP_PKEY_base_id          wolfSSL_EVP_PKEY_base_id
    328 #define X509_cmp_current_time     wolfSSL_X509_cmp_current_time
    329 #define sk_X509_REVOKED_num       wolfSSL_sk_X509_REVOKED_num
    330 #define X509_CRL_get_REVOKED      wolfSSL_X509_CRL_get_REVOKED
    331 #define sk_X509_REVOKED_value     wolfSSL_sk_X509_REVOKED_value
    332 #define X509_get_notBefore(cert)  (ASN1_TIME*)wolfSSL_X509_notBefore((cert))
    333 #define X509_get_notAfter(cert)   (ASN1_TIME*)wolfSSL_X509_notAfter((cert))
    334 
    335 
    336 #define X509_get_serialNumber wolfSSL_X509_get_serialNumber
    337 
     464
     465typedef WOLFSSL_ASN1_BIT_STRING    ASN1_BIT_STRING;
     466
     467#define ASN1_TIME_adj                   wolfSSL_ASN1_TIME_adj
    338468#define ASN1_TIME_print              wolfSSL_ASN1_TIME_print
     469#define ASN1_TIME_to_generalizedtime    wolfSSL_ASN1_TIME_to_generalizedtime
    339470#define ASN1_GENERALIZEDTIME_print   wolfSSL_ASN1_GENERALIZEDTIME_print
    340 
     471#define ASN1_GENERALIZEDTIME_free       wolfSSL_ASN1_GENERALIZEDTIME_free
     472
     473#define ASN1_tag2str                    wolfSSL_ASN1_tag2str
     474
     475#define i2a_ASN1_INTEGER                wolfSSL_i2a_ASN1_INTEGER
     476#define i2c_ASN1_INTEGER                wolfSSL_i2c_ASN1_INTEGER
     477#define ASN1_INTEGER_new                wolfSSL_ASN1_INTEGER_new
     478#define ASN1_INTEGER_free               wolfSSL_ASN1_INTEGER_free
    341479#define ASN1_INTEGER_cmp wolfSSL_ASN1_INTEGER_cmp
    342480#define ASN1_INTEGER_get wolfSSL_ASN1_INTEGER_get
    343481#define ASN1_INTEGER_to_BN wolfSSL_ASN1_INTEGER_to_BN
     482
     483#define ASN1_STRING_data                wolfSSL_ASN1_STRING_data
     484#define ASN1_STRING_get0_data           wolfSSL_ASN1_STRING_data
     485#define ASN1_STRING_length              wolfSSL_ASN1_STRING_length
    344486#define ASN1_STRING_to_UTF8 wolfSSL_ASN1_STRING_to_UTF8
     487#define ASN1_STRING_print_ex            wolfSSL_ASN1_STRING_print_ex
     488
     489#define ASN1_UTCTIME_pr                 wolfSSL_ASN1_UTCTIME_pr
     490
     491#define ASN1_IA5STRING                  WOLFSSL_ASN1_STRING
     492
     493#define ASN1_OCTET_STRING               WOLFSSL_ASN1_STRING
    345494
    346495#define SSL_load_client_CA_file wolfSSL_load_client_CA_file
     
    350499#define SSL_CTX_set_cert_store             wolfSSL_CTX_set_cert_store
    351500#define SSL_CTX_get_cert_store             wolfSSL_CTX_get_cert_store
    352 #define X509_STORE_CTX_get_ex_data         wolfSSL_X509_STORE_CTX_get_ex_data
    353501#define SSL_get_ex_data_X509_STORE_CTX_idx wolfSSL_get_ex_data_X509_STORE_CTX_idx
    354502#define SSL_get_ex_data wolfSSL_get_ex_data
     
    357505#define SSL_CTX_set_default_passwd_cb wolfSSL_CTX_set_default_passwd_cb
    358506
    359 #define SSL_CTX_set_timeout(ctx, to) wolfSSL_CTX_set_timeout(ctx, (unsigned int) to)
     507#define SSL_CTX_set_timeout(ctx, to)    \
     508                                 wolfSSL_CTX_set_timeout(ctx, (unsigned int) to)
    360509#define SSL_CTX_set_info_callback wolfSSL_CTX_set_info_callback
    361 
    362 #define ERR_peek_error wolfSSL_ERR_peek_error
    363 #define ERR_peek_last_error_line  wolfSSL_ERR_peek_last_error_line
    364 #define ERR_peek_errors_fp         wolfSSL_ERR_peek_errors_fp
    365 #define ERR_GET_REASON wolfSSL_ERR_GET_REASON
     510#define SSL_CTX_set_alpn_protos         wolfSSL_CTX_set_alpn_protos
    366511
    367512#define SSL_alert_type_string wolfSSL_alert_type_string
     
    391536
    392537#define SSL_DEFAULT_CIPHER_LIST WOLFSSL_DEFAULT_CIPHER_LIST
    393 #define RSA_F4 WOLFSSL_RSA_F4
    394538
    395539#define SSL_CTX_set_psk_client_callback wolfSSL_CTX_set_psk_client_callback
     
    405549#define SSL_set_psk_server_callback wolfSSL_set_psk_server_callback
    406550
    407 #define ERR_get_error_line_data wolfSSL_ERR_get_error_line_data
    408 
     551/* system file ints for ERR_put_error */
     552#define SYS_F_ACCEPT      WOLFSSL_SYS_ACCEPT
     553#define SYS_F_BIND        WOLFSSL_SYS_BIND
     554#define SYS_F_CONNECT     WOLFSSL_SYS_CONNECT
     555#define SYS_F_FOPEN       WOLFSSL_SYS_FOPEN
     556#define SYS_F_FREAD       WOLFSSL_SYS_FREAD
     557#define SYS_F_GETADDRINFO WOLFSSL_SYS_GETADDRINFO
     558#define SYS_F_GETSOCKOPT  WOLFSSL_SYS_GETSOCKOPT
     559#define SYS_F_GETSOCKNAME WOLFSSL_SYS_GETSOCKNAME
     560#define SYS_F_OPENDIR     WOLFSSL_SYS_OPENDIR
     561#define SYS_F_SETSOCKOPT  WOLFSSL_SYS_SETSOCKOPT
     562#define SYS_F_SOCKET      WOLFSSL_SYS_SOCKET
     563#define SYS_F_GETHOSTBYNAME  WOLFSSL_SYS_GETHOSTBYNAME
     564#define SYS_F_GETNAMEINFO    WOLFSSL_SYS_GETNAMEINFO
     565#define SYS_F_GETSERVBYNAME  WOLFSSL_SYS_GETSERVBYNAME
     566#define SYS_F_IOCTLSOCKET    WOLFSSL_SYS_IOCTLSOCKET
     567#define SYS_F_LISTEN         WOLFSSL_SYS_LISTEN
     568
     569#define ERR_GET_REASON                  wolfSSL_ERR_GET_REASON
     570
     571#define ERR_put_error                   wolfSSL_ERR_put_error
     572#define ERR_peek_error                  wolfSSL_ERR_peek_error
     573#define ERR_peek_errors_fp              wolfSSL_ERR_peek_errors_fp
     574#define ERR_peek_error_line_data        wolfSSL_ERR_peek_error_line_data
     575#define ERR_peek_last_error             wolfSSL_ERR_peek_last_error
     576#define ERR_peek_last_error_line        wolfSSL_ERR_peek_last_error_line
     577#define ERR_get_error_line              wolfSSL_ERR_get_error_line
     578#define ERR_get_error_line_data         wolfSSL_ERR_get_error_line_data
    409579#define ERR_get_error wolfSSL_ERR_get_error
     580#define ERR_print_errors_fp(file)       wolfSSL_ERR_dump_errors_fp((file))
    410581#define ERR_clear_error wolfSSL_ERR_clear_error
    411 
    412 #define RAND_status wolfSSL_RAND_status
    413 #define RAND_bytes wolfSSL_RAND_bytes
     582#define ERR_free_strings                wolfSSL_ERR_free_strings
     583#define ERR_remove_state                wolfSSL_ERR_remove_state
     584#define ERR_remove_thread_state         wolfSSL_ERR_remove_thread_state
     585#define ERR_error_string                wolfSSL_ERR_error_string
     586#define ERR_error_string_n              wolfSSL_ERR_error_string_n
     587#define ERR_reason_error_string         wolfSSL_ERR_reason_error_string
     588#define ERR_load_BIO_strings            wolfSSL_ERR_load_BIO_strings
     589
    414590#define SSLv23_server_method wolfSSLv23_server_method
    415591#define SSL_CTX_set_options wolfSSL_CTX_set_options
    416 #define SSL_CTX_check_private_key wolfSSL_CTX_check_private_key
    417 
    418 #define ERR_free_strings wolfSSL_ERR_free_strings
    419 #define ERR_remove_state wolfSSL_ERR_remove_state
    420 #define EVP_cleanup wolfSSL_EVP_cleanup
    421 
    422 #define CRYPTO_cleanup_all_ex_data wolfSSL_cleanup_all_ex_data
     592#define SSL_CTX_get_options             wolfSSL_CTX_get_options
     593#define SSL_CTX_clear_options           wolfSSL_CTX_clear_options
     594
     595#define SSL_CTX_check_private_key       wolfSSL_CTX_check_private_key
     596#define SSL_check_private_key           wolfSSL_check_private_key
     597
    423598#define SSL_CTX_set_mode wolfSSL_CTX_set_mode
    424599#define SSL_CTX_get_mode wolfSSL_CTX_get_mode
     
    430605#define SSL_CTX_set_session_id_context wolfSSL_CTX_set_session_id_context
    431606#define SSL_get_peer_certificate wolfSSL_get_peer_certificate
     607#define SSL_get_peer_cert_chain         wolfSSL_get_peer_cert_chain
    432608
    433609#define SSL_want_read wolfSSL_want_read
     
    435611
    436612#define BIO_prf wolfSSL_BIO_prf
    437 #define ASN1_UTCTIME_pr wolfSSL_ASN1_UTCTIME_pr
    438613
    439614#define sk_num wolfSSL_sk_num
    440615#define sk_value wolfSSL_sk_value
    441 #define sk_X509_pop  wolfSSL_sk_X509_pop
    442 #define sk_X509_free wolfSSL_sk_X509_free
    443 #define d2i_X509_bio wolfSSL_d2i_X509_bio
     616
     617#define d2i_PKCS12_bio                  wolfSSL_d2i_PKCS12_bio
     618#define d2i_PKCS12_fp                   wolfSSL_d2i_PKCS12_fp
     619
     620#define d2i_RSAPublicKey                wolfSSL_d2i_RSAPublicKey
     621#define d2i_RSAPrivateKey               wolfSSL_d2i_RSAPrivateKey
     622#define i2d_RSAPrivateKey               wolfSSL_i2d_RSAPrivateKey
     623#define i2d_RSAPublicKey                wolfSSL_i2d_RSAPublicKey
    444624
    445625#define SSL_CTX_get_ex_data wolfSSL_CTX_get_ex_data
     
    455635#define SSL_SESSION_get_time wolfSSL_SESSION_get_time
    456636#define SSL_CTX_get_ex_new_index wolfSSL_CTX_get_ex_new_index
    457 #define PEM_read_bio_X509 wolfSSL_PEM_read_bio_X509
    458 #define PEM_read_bio_X509_AUX wolfSSL_PEM_read_bio_X509_AUX
     637#define PEM_read                        wolfSSL_PEM_read
     638#define PEM_write                       wolfSSL_PEM_write
     639#define PEM_get_EVP_CIPHER_INFO         wolfSSL_PEM_get_EVP_CIPHER_INFO
     640#define PEM_do_header                   wolfSSL_PEM_do_header
    459641
    460642/*#if OPENSSL_API_COMPAT < 0x10100000L*/
     
    467649#define SSL_set_tmp_rsa(ssl,rsa)             1
    468650/*#endif*/
     651
    469652#define CONF_modules_unload(a)
    470653
     
    474657#define SSL_get_default_timeout(ctx) 500
    475658
    476 /* Lighthttp compatibility */
    477 
    478 #if defined(HAVE_LIGHTY)  || defined(WOLFSSL_MYSQL_COMPATIBLE) || \
    479     defined(HAVE_STUNNEL) || defined(WOLFSSL_NGINX) || \
    480     defined(HAVE_POCO_LIB) || defined(WOLFSSL_HAPROXY)
    481 typedef WOLFSSL_X509_NAME_ENTRY X509_NAME_ENTRY;
    482 
    483 #define X509_NAME_free wolfSSL_X509_NAME_free
    484659#define SSL_CTX_use_certificate wolfSSL_CTX_use_certificate
    485660#define SSL_CTX_use_PrivateKey wolfSSL_CTX_use_PrivateKey
    486661#define BIO_read_filename wolfSSL_BIO_read_filename
    487662#define BIO_s_file wolfSSL_BIO_s_file
    488 #define OBJ_nid2sn wolfSSL_OBJ_nid2sn
    489 #define OBJ_obj2nid wolfSSL_OBJ_obj2nid
    490 #define OBJ_sn2nid wolfSSL_OBJ_sn2nid
    491663#define SSL_CTX_set_verify_depth wolfSSL_CTX_set_verify_depth
    492664#define SSL_set_verify_depth wolfSSL_set_verify_depth
    493665#define SSL_get_app_data wolfSSL_get_app_data
    494666#define SSL_set_app_data wolfSSL_set_app_data
    495 #define X509_NAME_entry_count wolfSSL_X509_NAME_entry_count
    496 #define X509_NAME_ENTRY_get_object wolfSSL_X509_NAME_ENTRY_get_object
    497 #define X509_NAME_get_entry wolfSSL_X509_NAME_get_entry
    498 #define ASN1_STRING_data wolfSSL_ASN1_STRING_data
    499 #define ASN1_STRING_length wolfSSL_ASN1_STRING_length
    500 #define X509_NAME_get_index_by_NID wolfSSL_X509_NAME_get_index_by_NID
    501 #define X509_NAME_ENTRY_get_data wolfSSL_X509_NAME_ENTRY_get_data
    502 #define sk_X509_NAME_pop_free  wolfSSL_sk_X509_NAME_pop_free
    503667#define SHA1 wolfSSL_SHA1
    504 #define X509_check_private_key wolfSSL_X509_check_private_key
     668
    505669#define SSL_dup_CA_list wolfSSL_dup_CA_list
    506670
    507 #define NID_commonName 0x03 /* matchs ASN_COMMON_NAME in asn.h */
    508 
    509 #define OBJ_nid2ln wolfSSL_OBJ_nid2ln
    510 #define OBJ_txt2nid wolfSSL_OBJ_txt2nid
     671enum {
     672    GEN_DNS   = 0x02, /* ASN_DNS_TYPE */
     673    GEN_EMAIL = 0x01, /* ASN_RFC822_TYPE */
     674    GEN_URI   = 0x06  /* ASN_URI_TYPE */
     675};
     676
    511677#define PEM_read_bio_DHparams wolfSSL_PEM_read_bio_DHparams
    512678#define PEM_read_bio_DSAparams wolfSSL_PEM_read_bio_DSAparams
    513 #define PEM_write_bio_X509 wolfSSL_PEM_write_bio_X509
    514 
    515 
    516 #ifdef WOLFSSL_HAPROXY
     679
     680#if defined(OPENSSL_ALL) || defined(WOLFSSL_HAPROXY)
    517681#define SSL_get_rbio                      wolfSSL_SSL_get_rbio
    518682#define SSL_get_wbio                      wolfSSL_SSL_get_wbio
     
    520684#define SSL_get_ciphers(x)                wolfSSL_get_ciphers_compat(x)
    521685#define SSL_SESSION_get_id                wolfSSL_SESSION_get_id
    522 #define ASN1_STRING_get0_data             wolfSSL_ASN1_STRING_data
    523 #define SSL_get_cipher_bits(s,np)         wolfSSL_CIPHER_get_bits(SSL_get_current_cipher(s),np)
     686#define SSL_get_cipher_bits(s,np)       \
     687                          wolfSSL_CIPHER_get_bits(SSL_get_current_cipher(s),np)
    524688#define sk_SSL_CIPHER_num                 wolfSSL_sk_SSL_CIPHER_num
    525689#define sk_SSL_COMP_zero                  wolfSSL_sk_SSL_COMP_zero
    526690#define sk_SSL_CIPHER_value               wolfSSL_sk_SSL_CIPHER_value
    527 #endif /* WOLFSSL_HAPROXY */
    528 #endif /* HAVE_STUNNEL || HAVE_LIGHTY || WOLFSSL_MYSQL_COMPATIBLE || WOLFSSL_NGINX || HAVE_POCO_LIB || WOLFSSL_HAPROXY */
     691#endif /* OPENSSL_ALL || WOLFSSL_HAPROXY */
     692
     693#if defined(OPENSSL_ALL) || defined(WOLFSSL_ASIO)
     694#include <wolfssl/openssl/pem.h>
     695
     696typedef STACK_OF(WOLFSSL_ASN1_OBJECT) GENERAL_NAMES;
     697#define SSL_CTRL_CHAIN       88
     698#define BIO_CTRL_WPENDING    13
     699#define GEN_IPADD            7
     700#define ERR_LIB_SSL          20
     701#define SSL_R_SHORT_READ     10
     702#define ERR_R_PEM_LIB        9
     703#define V_ASN1_IA5STRING     22
     704#define SSL_CTRL_MODE        33       
     705
     706#define SSL_CTX_clear_chain_certs(ctx) SSL_CTX_set0_chain(ctx,NULL)
     707#define d2i_RSAPrivateKey_bio           wolfSSL_d2i_RSAPrivateKey_bio
     708#define SSL_CTX_use_RSAPrivateKey       wolfSSL_CTX_use_RSAPrivateKey
     709#define d2i_PrivateKey_bio              wolfSSL_d2i_PrivateKey_bio
     710#define BIO_new_bio_pair                wolfSSL_BIO_new_bio_pair
     711#define SSL_get_verify_callback         wolfSSL_get_verify_callback
     712#define GENERAL_NAMES_free(GENERAL_NAMES)NULL
     713
     714#define SSL_set_mode(ssl,op)         wolfSSL_ctrl((ssl),SSL_CTRL_MODE,(op),NULL)
     715
     716#define SSL_CTX_use_certificate_ASN1    wolfSSL_CTX_use_certificate_ASN1
     717#define SSL_CTX_set0_chain(ctx,sk) \
     718                             wolfSSL_CTX_ctrl(ctx,SSL_CTRL_CHAIN,0,(char *)(sk))
     719#define SSL_CTX_get_app_data(ctx)       wolfSSL_CTX_get_ex_data(ctx,0)
     720#define SSL_CTX_set_app_data(ctx,arg)   wolfSSL_CTX_set_ex_data(ctx,0, \
     721                                                                  (char *)(arg))
     722#endif /* OPENSSL_ALL || WOLFSSL_ASIO */
    529723
    530724#define SSL_CTX_set_tmp_dh wolfSSL_CTX_set_tmp_dh
     
    533727#define BIO_ctrl            wolfSSL_BIO_ctrl
    534728#define BIO_ctrl_pending    wolfSSL_BIO_ctrl_pending
     729#define BIO_wpending                    wolfSSL_BIO_wpending
    535730#define BIO_get_mem_ptr     wolfSSL_BIO_get_mem_ptr
    536731#define BIO_int_ctrl        wolfSSL_BIO_int_ctrl
     
    551746#define BIO_set_mem_eof_return wolfSSL_BIO_set_mem_eof_return
    552747
     748#define TLSEXT_STATUSTYPE_ocsp  1
     749
    553750#define SSL_set_options      wolfSSL_set_options
    554751#define SSL_get_options      wolfSSL_get_options
     752#define SSL_clear_options               wolfSSL_clear_options
    555753#define SSL_set_tmp_dh       wolfSSL_set_tmp_dh
    556754#define SSL_clear_num_renegotiations    wolfSSL_clear_num_renegotiations
     
    561759#define SSL_get_tlsext_status_ids       wolfSSL_get_tlsext_status_ids
    562760#define SSL_set_tlsext_status_ids       wolfSSL_set_tlsext_status_ids
    563 #define SSL_get_tlsext_status_ocsp_resp wolfSSL_get_tlsext_status_ocsp_resp
     761#define SSL_get_tlsext_status_ocsp_res  wolfSSL_get_tlsext_status_ocsp_resp
     762#define SSL_set_tlsext_status_ocsp_res  wolfSSL_set_tlsext_status_ocsp_resp
    564763#define SSL_set_tlsext_status_ocsp_resp wolfSSL_set_tlsext_status_ocsp_resp
     764#define SSL_get_tlsext_status_ocsp_resp  wolfSSL_get_tlsext_status_ocsp_resp
    565765
    566766#define SSL_CTX_add_extra_chain_cert wolfSSL_CTX_add_extra_chain_cert
     
    615815#define SSL_CTX_ctrl wolfSSL_CTX_ctrl
    616816
    617 #define X509_V_FLAG_CRL_CHECK     WOLFSSL_CRL_CHECK
    618 #define X509_V_FLAG_CRL_CHECK_ALL WOLFSSL_CRL_CHECKALL
    619 
    620 #if defined(HAVE_STUNNEL) || defined(WOLFSSL_NGINX)
     817#define SSL3_RANDOM_SIZE                32 /* same as RAN_LEN in internal.h */
     818#if defined(HAVE_STUNNEL) || defined(WOLFSSL_NGINX) || defined(OPENSSL_EXTRA) \
     819                                                         || defined(OPENSSL_ALL)
    621820#include <wolfssl/openssl/asn1.h>
    622821
     
    628827#define SSL3_ST_SR_CLNT_HELLO_A         (0x110|0x2000)
    629828#define ASN1_STRFLGS_ESC_MSB             4
    630 #define X509_V_ERR_CERT_REJECTED         28
    631829
    632830#define SSL_MAX_MASTER_KEY_LENGTH        WOLFSSL_MAX_MASTER_KEY_LENGTH
     
    635833#define SSL_alert_type_string_long       wolfSSL_alert_type_string_long
    636834#define SSL_CIPHER_get_bits              wolfSSL_CIPHER_get_bits
    637 #define sk_X509_NAME_num                 wolfSSL_sk_X509_NAME_num
    638 #define sk_X509_num                      wolfSSL_sk_X509_num
    639 #define X509_NAME_print_ex               wolfSSL_X509_NAME_print_ex
    640 #define X509_get0_pubkey_bitstr          wolfSSL_X509_get0_pubkey_bitstr
     835#define sk_GENERAL_NAME_num             wolfSSL_sk_GENERAL_NAME_num
    641836#define SSL_CTX_get_options              wolfSSL_CTX_get_options
    642837
    643838#define SSL_CTX_flush_sessions           wolfSSL_flush_sessions
    644839#define SSL_CTX_add_session              wolfSSL_CTX_add_session
    645 #define SSL_get_SSL_CTX                  wolfSSL_get_SSL_CTX
    646840#define SSL_version                      wolfSSL_version
    647841#define SSL_get_state                    wolfSSL_get_state
    648842#define SSL_state_string_long            wolfSSL_state_string_long
    649 #define SSL_get_peer_cert_chain          wolfSSL_get_peer_cert_chain
    650 #define sk_X509_NAME_value               wolfSSL_sk_X509_NAME_value
    651 #define sk_X509_value                    wolfSSL_sk_X509_value
     843
     844#define sk_GENERAL_NAME_value           wolfSSL_sk_GENERAL_NAME_value
    652845#define SSL_SESSION_get_ex_data          wolfSSL_SESSION_get_ex_data
    653846#define SSL_SESSION_set_ex_data          wolfSSL_SESSION_set_ex_data
    654847#define SSL_SESSION_get_ex_new_index     wolfSSL_SESSION_get_ex_new_index
    655848#define SSL_SESSION_get_id               wolfSSL_SESSION_get_id
    656 #define CRYPTO_dynlock_value             WOLFSSL_dynlock_value
    657 typedef WOLFSSL_ASN1_BIT_STRING    ASN1_BIT_STRING;
    658 #define X509_STORE_get1_certs            wolfSSL_X509_STORE_get1_certs
    659 #define sk_X509_pop_free                 wolfSSL_sk_X509_pop_free
    660 
     849#define sk_GENERAL_NAME_pop_free        wolfSSL_sk_GENERAL_NAME_pop_free
     850#define GENERAL_NAME_free               NULL
     851
     852#define SSL3_AL_FATAL                   2
    661853#define SSL_TLSEXT_ERR_OK                    0
    662854#define SSL_TLSEXT_ERR_ALERT_FATAL           alert_fatal
     
    673865#define PSK_MAX_PSK_LEN                      256
    674866#define PSK_MAX_IDENTITY_LEN                 128
    675 #define ERR_remove_thread_state WOLFSSL_ERR_remove_thread_state
    676867#define SSL_CTX_clear_options wolfSSL_CTX_clear_options
    677868
     
    680871#define SSL_CTX_get_default_passwd_cb          wolfSSL_CTX_get_default_passwd_cb
    681872#define SSL_CTX_get_default_passwd_cb_userdata wolfSSL_CTX_get_default_passwd_cb_userdata
    682 
    683 /* certificate extension NIDs */
    684 #define NID_basic_constraints         133
    685 #define NID_key_usage                 129  /* 2.5.29.15 */
    686 #define NID_ext_key_usage             151  /* 2.5.29.37 */
    687 #define NID_subject_key_identifier    128
    688 #define NID_authority_key_identifier  149
    689 #define NID_private_key_usage_period  130  /* 2.5.29.16 */
    690 #define NID_subject_alt_name          131
    691 #define NID_issuer_alt_name           132
    692 #define NID_info_access               69
    693 #define NID_sinfo_access              79  /* id-pe 11 */
    694 #define NID_name_constraints          144 /* 2.5.29.30 */
    695 #define NID_certificate_policies      146
    696 #define NID_policy_mappings           147
    697 #define NID_policy_constraints        150
    698 #define NID_inhibit_any_policy        168 /* 2.5.29.54 */
    699 #define NID_tlsfeature                92  /* id-pe 24 */
    700 
    701873
    702874#define SSL_CTX_set_msg_callback        wolfSSL_CTX_set_msg_callback
     
    705877#define SSL_set_msg_callback_arg        wolfSSL_set_msg_callback_arg
    706878
    707 /* certificate extension NIDs */
    708 #define NID_basic_constraints         133
    709 #define NID_key_usage                 129  /* 2.5.29.15 */
    710 #define NID_ext_key_usage             151  /* 2.5.29.37 */
    711 #define NID_subject_key_identifier    128
    712 #define NID_authority_key_identifier  149
    713 #define NID_private_key_usage_period  130  /* 2.5.29.16 */
    714 #define NID_subject_alt_name          131
    715 #define NID_issuer_alt_name           132
    716 #define NID_info_access               69
    717 #define NID_sinfo_access              79  /* id-pe 11 */
    718 #define NID_name_constraints          144 /* 2.5.29.30 */
    719 #define NID_certificate_policies      146
    720 #define NID_policy_mappings           147
    721 #define NID_policy_constraints        150
    722 #define NID_inhibit_any_policy        168 /* 2.5.29.54 */
    723 #define NID_tlsfeature                92  /* id-pe 24 */
    724 
     879
     880/* Nginx uses this to determine if reached end of certs in file.
     881 * PEM_read_bio_X509 is called and the return error is lost.
     882 * The error that needs to be detected is: SSL_NO_PEM_HEADER.
     883 */
     884#define ERR_GET_LIB(l)  (int)((((unsigned long)l)>>24L)&0xffL)
     885#define PEM_R_NO_START_LINE     108
     886#define ERR_LIB_PEM             9
     887#define ERR_LIB_X509            10
    725888
    726889#if defined(WOLFSSL_NGINX) || defined(WOLFSSL_HAPROXY) || \
    727     defined(WOLFSSL_MYSQL_COMPATIBLE)
     890    defined(WOLFSSL_MYSQL_COMPATIBLE) || defined(OPENSSL_ALL) || \
     891    defined(HAVE_LIGHTY)
    728892
    729893#include <wolfssl/error-ssl.h>
     
    754918#define SSL_R_WRONG_VERSION_NUMBER                 VERSION_ERROR
    755919#define SSL_R_DECRYPTION_FAILED_OR_BAD_RECORD_MAC  ENCRYPT_ERROR
    756 
    757 /* Nginx uses this to determine if reached end of certs in file.
    758  * PEM_read_bio_X509 is called and the return error is lost.
    759  * The error that needs to be detected is: SSL_NO_PEM_HEADER.
    760  */
    761 #define ERR_GET_LIB(l)  (int)((((unsigned long)l)>>24L)&0xffL)
    762 #define PEM_R_NO_START_LINE     108
    763 #define ERR_LIB_PEM             9
     920#define SSL_R_HTTPS_PROXY_REQUEST                  PARSE_ERROR
     921#define SSL_R_HTTP_REQUEST                         PARSE_ERROR
     922#define SSL_R_UNSUPPORTED_PROTOCOL                 VERSION_ERROR
     923
    764924
    765925#ifdef HAVE_SESSION_TICKET
     
    769929
    770930#define OPENSSL_config                    wolfSSL_OPENSSL_config
    771 #define X509_get_ex_new_index             wolfSSL_X509_get_ex_new_index
    772 #define X509_get_ex_data                  wolfSSL_X509_get_ex_data
    773 #define X509_set_ex_data                  wolfSSL_X509_set_ex_data
    774 #define X509_NAME_digest                  wolfSSL_X509_NAME_digest
     931#define OPENSSL_memdup                  wolfSSL_OPENSSL_memdup
    775932#define SSL_CTX_get_timeout               wolfSSL_SSL_CTX_get_timeout
    776933#define SSL_CTX_set_tmp_ecdh              wolfSSL_SSL_CTX_set_tmp_ecdh
     
    781938#define SSL_in_init                       wolfSSL_SSL_in_init
    782939#define SSL_get0_session                  wolfSSL_SSL_get0_session
    783 #define X509_check_host                   wolfSSL_X509_check_host
    784 #define i2a_ASN1_INTEGER                  wolfSSL_i2a_ASN1_INTEGER
    785 #define ERR_peek_error_line_data          wolfSSL_ERR_peek_error_line_data
    786940#define SSL_CTX_set_tlsext_ticket_key_cb  wolfSSL_CTX_set_tlsext_ticket_key_cb
    787 #define X509_email_free                   wolfSSL_X509_email_free
    788 #define X509_get1_ocsp                    wolfSSL_X509_get1_ocsp
    789941#define SSL_CTX_set_tlsext_status_cb      wolfSSL_CTX_set_tlsext_status_cb
    790 #define X509_check_issued                 wolfSSL_X509_check_issued
    791 #define X509_dup                          wolfSSL_X509_dup
    792 #define X509_STORE_CTX_new                wolfSSL_X509_STORE_CTX_new
    793 #define X509_STORE_CTX_free               wolfSSL_X509_STORE_CTX_free
    794942#define SSL_CTX_get_extra_chain_certs     wolfSSL_CTX_get_extra_chain_certs
    795 #define X509_STORE_CTX_get1_issuer        wolfSSL_X509_STORE_CTX_get1_issuer
    796943#define sk_OPENSSL_STRING_value           wolfSSL_sk_WOLFSSL_STRING_value
    797944#define SSL_get0_alpn_selected            wolfSSL_get0_alpn_selected
     
    804951#define SSL_CTX_set1_curves_list          wolfSSL_CTX_set1_curves_list
    805952
    806 #endif /* WOLFSSL_NGINX || WOLFSSL_HAPROXY */
     953#endif /* WOLFSSL_NGINX || WOLFSSL_HAPROXY || WOLFSSL_MYSQL_COMPATIBLE ||
     954          OPENSSL_ALL || HAVE_LIGHTY */
     955
     956#ifdef OPENSSL_EXTRA
     957#define SSL_CTX_add_client_CA           wolfSSL_CTX_add_client_CA
     958#define SSL_CTX_set_srp_password        wolfSSL_CTX_set_srp_password
     959#define SSL_CTX_set_srp_username        wolfSSL_CTX_set_srp_username
     960#define SSL_get_SSL_CTX                 wolfSSL_get_SSL_CTX
     961
     962#define ERR_NUM_ERRORS                  16
     963#define EVP_PKEY_RSA                    6
     964#define EVP_PKEY_RSA2                   19
     965#define SN_pkcs9_emailAddress           "Email"
     966#define LN_pkcs9_emailAddress           "emailAddress"
     967#define NID_pkcs9_emailAddress          48
     968#define OBJ_pkcs9_emailAddress          1L,2L,840L,113539L,1L,9L,1L
     969
     970#define SSL_get_rbio                    wolfSSL_SSL_get_rbio
     971#define SSL_get_wbio                    wolfSSL_SSL_get_wbio
     972#define SSL_do_handshake                wolfSSL_SSL_do_handshake
     973#endif  /* OPENSSL_EXTRA */
    807974
    808975#ifdef __cplusplus
     
    810977#endif
    811978
    812 
    813979#endif /* wolfSSL_openssl_h__ */
Note: See TracChangeset for help on using the changeset viewer.