├── .github └── workflows │ └── ci.yml ├── .gitignore ├── .travis.yml ├── C ├── openssl-1.0.1u │ ├── aes.h │ ├── asn1.h │ ├── asn1_mac.h │ ├── asn1t.h │ ├── bio.h │ ├── blowfish.h │ ├── bn.h │ ├── buffer.h │ ├── camellia.h │ ├── cast.h │ ├── cmac.h │ ├── cms.h │ ├── comp.h │ ├── conf.h │ ├── conf_api.h │ ├── crypto.h │ ├── des.h │ ├── des_old.h │ ├── dh.h │ ├── dsa.h │ ├── dso.h │ ├── dtls1.h │ ├── e_os2.h │ ├── ebcdic.h │ ├── ec.h │ ├── ecdh.h │ ├── ecdsa.h │ ├── engine.h │ ├── err.h │ ├── evp.h │ ├── hmac.h │ ├── idea.h │ ├── krb5_asn.h │ ├── kssl.h │ ├── lhash.h │ ├── md4.h │ ├── md5.h │ ├── mdc2.h │ ├── modes.h │ ├── obj_mac.h │ ├── objects.h │ ├── ocsp.h │ ├── opensslconf.h │ ├── opensslv.h │ ├── ossl_typ.h │ ├── pem.h │ ├── pem2.h │ ├── pkcs12.h │ ├── pkcs7.h │ ├── pqueue.h │ ├── rand.h │ ├── rc2.h │ ├── rc4.h │ ├── ripemd.h │ ├── rsa.h │ ├── safestack.h │ ├── seed.h │ ├── sha.h │ ├── srp.h │ ├── srtp.h │ ├── ssl.h │ ├── ssl2.h │ ├── ssl23.h │ ├── ssl3.h │ ├── stack.h │ ├── symhacks.h │ ├── tls1.h │ ├── ts.h │ ├── txt_db.h │ ├── ui.h │ ├── ui_compat.h │ ├── whrlpool.h │ ├── x509.h │ ├── x509_vfy.h │ └── x509v3.h ├── openssl-1.0.2u │ ├── aes.h │ ├── asn1.h │ ├── asn1_mac.h │ ├── asn1t.h │ ├── bio.h │ ├── blowfish.h │ ├── bn.h │ ├── buffer.h │ ├── camellia.h │ ├── cast.h │ ├── cmac.h │ ├── cms.h │ ├── comp.h │ ├── conf.h │ ├── conf_api.h │ ├── crypto.h │ ├── des.h │ ├── des_old.h │ ├── dh.h │ ├── dsa.h │ ├── dso.h │ ├── dtls1.h │ ├── e_os2.h │ ├── ebcdic.h │ ├── ec.h │ ├── ecdh.h │ ├── ecdsa.h │ ├── engine.h │ ├── err.h │ ├── evp.h │ ├── hmac.h │ ├── idea.h │ ├── krb5_asn.h │ ├── kssl.h │ ├── lhash.h │ ├── md4.h │ ├── md5.h │ ├── mdc2.h │ ├── modes.h │ ├── obj_mac.h │ ├── objects.h │ ├── ocsp.h │ ├── opensslconf.h │ ├── opensslv.h │ ├── ossl_typ.h │ ├── pem.h │ ├── pem2.h │ ├── pkcs12.h │ ├── pkcs7.h │ ├── pqueue.h │ ├── rand.h │ ├── rc2.h │ ├── rc4.h │ ├── ripemd.h │ ├── rsa.h │ ├── safestack.h │ ├── seed.h │ ├── sha.h │ ├── srp.h │ ├── srtp.h │ ├── ssl.h │ ├── ssl2.h │ ├── ssl23.h │ ├── ssl3.h │ ├── stack.h │ ├── symhacks.h │ ├── tls1.h │ ├── ts.h │ ├── txt_db.h │ ├── ui.h │ ├── ui_compat.h │ ├── whrlpool.h │ ├── x509.h │ ├── x509_vfy.h │ └── x509v3.h ├── openssl-1.1.0l │ ├── __DECC_INCLUDE_EPILOGUE.H │ ├── __DECC_INCLUDE_PROLOGUE.H │ ├── aes.h │ ├── asn1.h │ ├── asn1_mac.h │ ├── asn1t.h │ ├── async.h │ ├── bio.h │ ├── blowfish.h │ ├── bn.h │ ├── buffer.h │ ├── camellia.h │ ├── cast.h │ ├── cmac.h │ ├── cms.h │ ├── comp.h │ ├── conf.h │ ├── conf_api.h │ ├── crypto.h │ ├── ct.h │ ├── des.h │ ├── dh.h │ ├── dsa.h │ ├── dtls1.h │ ├── e_os2.h │ ├── ebcdic.h │ ├── ec.h │ ├── ecdh.h │ ├── ecdsa.h │ ├── engine.h │ ├── err.h │ ├── evp.h │ ├── hmac.h │ ├── idea.h │ ├── kdf.h │ ├── lhash.h │ ├── md2.h │ ├── md4.h │ ├── md5.h │ ├── mdc2.h │ ├── modes.h │ ├── obj_mac.h │ ├── objects.h │ ├── ocsp.h │ ├── opensslconf.h.in │ ├── opensslv.h │ ├── ossl_typ.h │ ├── pem.h │ ├── pem2.h │ ├── pkcs12.h │ ├── pkcs7.h │ ├── rand.h │ ├── rc2.h │ ├── rc4.h │ ├── rc5.h │ ├── ripemd.h │ ├── rsa.h │ ├── safestack.h │ ├── seed.h │ ├── sha.h │ ├── srp.h │ ├── srtp.h │ ├── ssl.h │ ├── ssl2.h │ ├── ssl3.h │ ├── stack.h │ ├── symhacks.h │ ├── tls1.h │ ├── ts.h │ ├── txt_db.h │ ├── ui.h │ ├── whrlpool.h │ ├── x509.h │ ├── x509_vfy.h │ └── x509v3.h ├── openssl-1.1.1p │ ├── __DECC_INCLUDE_EPILOGUE.H │ ├── __DECC_INCLUDE_PROLOGUE.H │ ├── aes.h │ ├── asn1.h │ ├── asn1_mac.h │ ├── asn1err.h │ ├── asn1t.h │ ├── async.h │ ├── asyncerr.h │ ├── bio.h │ ├── bioerr.h │ ├── blowfish.h │ ├── bn.h │ ├── bnerr.h │ ├── buffer.h │ ├── buffererr.h │ ├── camellia.h │ ├── cast.h │ ├── cmac.h │ ├── cms.h │ ├── cmserr.h │ ├── comp.h │ ├── comperr.h │ ├── conf.h │ ├── conf_api.h │ ├── conferr.h │ ├── crypto.h │ ├── cryptoerr.h │ ├── ct.h │ ├── cterr.h │ ├── des.h │ ├── dh.h │ ├── dherr.h │ ├── dsa.h │ ├── dsaerr.h │ ├── dtls1.h │ ├── e_os2.h │ ├── ebcdic.h │ ├── ec.h │ ├── ecdh.h │ ├── ecdsa.h │ ├── ecerr.h │ ├── engine.h │ ├── engineerr.h │ ├── err.h │ ├── evp.h │ ├── evperr.h │ ├── hmac.h │ ├── idea.h │ ├── kdf.h │ ├── kdferr.h │ ├── lhash.h │ ├── md2.h │ ├── md4.h │ ├── md5.h │ ├── mdc2.h │ ├── modes.h │ ├── obj_mac.h │ ├── objects.h │ ├── objectserr.h │ ├── ocsp.h │ ├── ocsperr.h │ ├── opensslconf.h.in │ ├── opensslv.h │ ├── ossl_typ.h │ ├── pem.h │ ├── pem2.h │ ├── pemerr.h │ ├── pkcs12.h │ ├── pkcs12err.h │ ├── pkcs7.h │ ├── pkcs7err.h │ ├── rand.h │ ├── rand_drbg.h │ ├── randerr.h │ ├── rc2.h │ ├── rc4.h │ ├── rc5.h │ ├── ripemd.h │ ├── rsa.h │ ├── rsaerr.h │ ├── safestack.h │ ├── seed.h │ ├── sha.h │ ├── srp.h │ ├── srtp.h │ ├── ssl.h │ ├── ssl2.h │ ├── ssl3.h │ ├── sslerr.h │ ├── stack.h │ ├── store.h │ ├── storeerr.h │ ├── symhacks.h │ ├── tls1.h │ ├── ts.h │ ├── tserr.h │ ├── txt_db.h │ ├── ui.h │ ├── uierr.h │ ├── whrlpool.h │ ├── x509.h │ ├── x509_vfy.h │ ├── x509err.h │ ├── x509v3.h │ └── x509v3err.h └── openssl-3.0.4 │ ├── __DECC_INCLUDE_EPILOGUE.H │ ├── __DECC_INCLUDE_PROLOGUE.H │ ├── aes.h │ ├── asn1.h.in │ ├── asn1_mac.h │ ├── asn1err.h │ ├── asn1t.h.in │ ├── async.h │ ├── asyncerr.h │ ├── bio.h.in │ ├── bioerr.h │ ├── blowfish.h │ ├── bn.h │ ├── bnerr.h │ ├── buffer.h │ ├── buffererr.h │ ├── camellia.h │ ├── cast.h │ ├── cmac.h │ ├── cmp.h.in │ ├── cmp_util.h │ ├── cmperr.h │ ├── cms.h.in │ ├── cmserr.h │ ├── comp.h │ ├── comperr.h │ ├── conf.h.in │ ├── conf_api.h │ ├── conferr.h │ ├── configuration.h.in │ ├── conftypes.h │ ├── core.h │ ├── core_dispatch.h │ ├── core_names.h │ ├── core_object.h │ ├── crmf.h.in │ ├── crmferr.h │ ├── crypto.h.in │ ├── cryptoerr.h │ ├── cryptoerr_legacy.h │ ├── ct.h.in │ ├── cterr.h │ ├── decoder.h │ ├── decodererr.h │ ├── des.h │ ├── dh.h │ ├── dherr.h │ ├── dsa.h │ ├── dsaerr.h │ ├── dtls1.h │ ├── e_os2.h │ ├── ebcdic.h │ ├── ec.h │ ├── ecdh.h │ ├── ecdsa.h │ ├── ecerr.h │ ├── encoder.h │ ├── encodererr.h │ ├── engine.h │ ├── engineerr.h │ ├── err.h.in │ ├── ess.h.in │ ├── esserr.h │ ├── evp.h │ ├── evperr.h │ ├── fips_names.h │ ├── fipskey.h.in │ ├── hmac.h │ ├── http.h │ ├── httperr.h │ ├── idea.h │ ├── kdf.h │ ├── kdferr.h │ ├── lhash.h.in │ ├── macros.h │ ├── md2.h │ ├── md4.h │ ├── md5.h │ ├── mdc2.h │ ├── modes.h │ ├── obj_mac.h │ ├── objects.h │ ├── objectserr.h │ ├── ocsp.h.in │ ├── ocsperr.h │ ├── opensslconf.h │ ├── opensslv.h.in │ ├── ossl_typ.h │ ├── param_build.h │ ├── params.h │ ├── pem.h │ ├── pem2.h │ ├── pemerr.h │ ├── pkcs12.h.in │ ├── pkcs12err.h │ ├── pkcs7.h.in │ ├── pkcs7err.h │ ├── prov_ssl.h │ ├── proverr.h │ ├── provider.h │ ├── rand.h │ ├── randerr.h │ ├── rc2.h │ ├── rc4.h │ ├── rc5.h │ ├── ripemd.h │ ├── rsa.h │ ├── rsaerr.h │ ├── safestack.h.in │ ├── seed.h │ ├── self_test.h │ ├── sha.h │ ├── srp.h.in │ ├── srtp.h │ ├── ssl.h.in │ ├── ssl2.h │ ├── ssl3.h │ ├── sslerr.h │ ├── sslerr_legacy.h │ ├── stack.h │ ├── store.h │ ├── storeerr.h │ ├── symhacks.h │ ├── tls1.h │ ├── trace.h │ ├── ts.h │ ├── tserr.h │ ├── txt_db.h │ ├── types.h │ ├── ui.h.in │ ├── uierr.h │ ├── whrlpool.h │ ├── x509.h.in │ ├── x509_vfy.h.in │ ├── x509err.h │ ├── x509v3.h.in │ └── x509v3err.h ├── CONTRIBUTING.md ├── README.md ├── dub.sdl ├── examples └── sslecho │ ├── .gitignore │ ├── README.md │ ├── dub.json │ ├── source │ └── app.d │ └── test.d ├── scripts ├── generate_version.d └── objects.pl └── source └── deimos └── openssl ├── _d_util.di ├── aes.di ├── applink.di ├── asn1.di ├── asn1_mac.di ├── asn1t.di ├── bio.di ├── blowfish.di ├── bn.di ├── buffer.di ├── camellia.di ├── cast_.di ├── cmac.di ├── cms.di ├── comp.di ├── conf.di ├── conf_api.di ├── crypto.di ├── des.di ├── dh.di ├── dsa.di ├── dso.di ├── dtls1.di ├── e_os2.di ├── ebcdic.di ├── ec.di ├── ecdh.di ├── ecdsa.di ├── engine.di ├── err.di ├── evp.di ├── hmac.di ├── idea.di ├── kdf.di ├── krb5_asn.di ├── kssl.di ├── lhash.di ├── md4.di ├── md5.di ├── mdc2.di ├── modes.di ├── obj_mac.di ├── objects.di ├── ocsp.di ├── opensslconf.di ├── opensslv.di ├── ossl_typ.di ├── pem.di ├── pem2.di ├── pkcs12.di ├── pkcs7.di ├── pqueue.di ├── prov_ssl.di ├── rand.di ├── rc2.di ├── rc4.di ├── ripemd.di ├── rsa.di ├── safestack.di ├── seed.di ├── sha.di ├── srp.di ├── srtp.di ├── ssl.di ├── ssl2.di ├── ssl23.di ├── ssl3.di ├── stack.di ├── symhacks.di ├── tls1.di ├── ts.di ├── txt_db.di ├── types.di ├── ui.di ├── ui_compat.di ├── whrlpool.di ├── x509.di ├── x509_vfy.di └── x509v3.di /.gitignore: -------------------------------------------------------------------------------- 1 | # Generated version file 2 | /source/deimos/openssl/version_.di 3 | 4 | # DUB artifacts 5 | /.dub/ 6 | /openssl 7 | /*-test-library 8 | dub.selections.json 9 | 10 | /examples/sslecho/sslecho 11 | /examples/sslecho/test 12 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: d 2 | 3 | #compiler: 4 | # - dmd 5 | 6 | install: 7 | # dmd 8 | # dub 9 | - DMD_VER=2.065.0 10 | - DMD=dmd_${DMD_VER}-0_amd64.deb 11 | - DUB_VER=0.9.21 12 | - DUB=dub-${DUB_VER}-linux-x86_64 13 | - wget http://downloads.dlang.org/releases/2014/${DMD} 14 | - sudo dpkg -i ${DMD} || true 15 | - sudo apt-get -y update || true 16 | - sudo apt-get -fy install || true 17 | - sudo dpkg -i ${DMD} 18 | - wget http://code.dlang.org/files/${DUB}.tar.gz 19 | - sudo tar -C /usr/local/bin -zxf ${DUB}.tar.gz 20 | 21 | script: 22 | - dub test 23 | -------------------------------------------------------------------------------- /C/openssl-1.0.1u/comp.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef HEADER_COMP_H 3 | # define HEADER_COMP_H 4 | 5 | # include 6 | 7 | # ifdef OPENSSL_NO_COMP 8 | # error COMP is disabled. 9 | # endif 10 | 11 | #ifdef __cplusplus 12 | extern "C" { 13 | #endif 14 | 15 | typedef struct comp_ctx_st COMP_CTX; 16 | 17 | typedef struct comp_method_st { 18 | int type; /* NID for compression library */ 19 | const char *name; /* A text string to identify the library */ 20 | int (*init) (COMP_CTX *ctx); 21 | void (*finish) (COMP_CTX *ctx); 22 | int (*compress) (COMP_CTX *ctx, 23 | unsigned char *out, unsigned int olen, 24 | unsigned char *in, unsigned int ilen); 25 | int (*expand) (COMP_CTX *ctx, 26 | unsigned char *out, unsigned int olen, 27 | unsigned char *in, unsigned int ilen); 28 | /* 29 | * The following two do NOTHING, but are kept for backward compatibility 30 | */ 31 | long (*ctrl) (void); 32 | long (*callback_ctrl) (void); 33 | } COMP_METHOD; 34 | 35 | struct comp_ctx_st { 36 | COMP_METHOD *meth; 37 | unsigned long compress_in; 38 | unsigned long compress_out; 39 | unsigned long expand_in; 40 | unsigned long expand_out; 41 | CRYPTO_EX_DATA ex_data; 42 | }; 43 | 44 | COMP_CTX *COMP_CTX_new(COMP_METHOD *meth); 45 | void COMP_CTX_free(COMP_CTX *ctx); 46 | int COMP_compress_block(COMP_CTX *ctx, unsigned char *out, int olen, 47 | unsigned char *in, int ilen); 48 | int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen, 49 | unsigned char *in, int ilen); 50 | COMP_METHOD *COMP_rle(void); 51 | COMP_METHOD *COMP_zlib(void); 52 | void COMP_zlib_cleanup(void); 53 | 54 | # ifdef HEADER_BIO_H 55 | # ifdef ZLIB 56 | BIO_METHOD *BIO_f_zlib(void); 57 | # endif 58 | # endif 59 | 60 | /* BEGIN ERROR CODES */ 61 | /* 62 | * The following lines are auto generated by the script mkerr.pl. Any changes 63 | * made after this point may be overwritten when the script is next run. 64 | */ 65 | void ERR_load_COMP_strings(void); 66 | 67 | /* Error codes for the COMP functions. */ 68 | 69 | /* Function codes. */ 70 | # define COMP_F_BIO_ZLIB_FLUSH 99 71 | # define COMP_F_BIO_ZLIB_NEW 100 72 | # define COMP_F_BIO_ZLIB_READ 101 73 | # define COMP_F_BIO_ZLIB_WRITE 102 74 | 75 | /* Reason codes. */ 76 | # define COMP_R_ZLIB_DEFLATE_ERROR 99 77 | # define COMP_R_ZLIB_INFLATE_ERROR 100 78 | # define COMP_R_ZLIB_NOT_SUPPORTED 101 79 | 80 | #ifdef __cplusplus 81 | } 82 | #endif 83 | #endif 84 | -------------------------------------------------------------------------------- /C/openssl-1.0.1u/ebcdic.h: -------------------------------------------------------------------------------- 1 | /* crypto/ebcdic.h */ 2 | 3 | #ifndef HEADER_EBCDIC_H 4 | # define HEADER_EBCDIC_H 5 | 6 | # include 7 | 8 | #ifdef __cplusplus 9 | extern "C" { 10 | #endif 11 | 12 | /* Avoid name clashes with other applications */ 13 | # define os_toascii _openssl_os_toascii 14 | # define os_toebcdic _openssl_os_toebcdic 15 | # define ebcdic2ascii _openssl_ebcdic2ascii 16 | # define ascii2ebcdic _openssl_ascii2ebcdic 17 | 18 | extern const unsigned char os_toascii[256]; 19 | extern const unsigned char os_toebcdic[256]; 20 | void *ebcdic2ascii(void *dest, const void *srce, size_t count); 21 | void *ascii2ebcdic(void *dest, const void *srce, size_t count); 22 | 23 | #ifdef __cplusplus 24 | } 25 | #endif 26 | #endif 27 | -------------------------------------------------------------------------------- /C/openssl-1.0.1u/whrlpool.h: -------------------------------------------------------------------------------- 1 | #ifndef HEADER_WHRLPOOL_H 2 | # define HEADER_WHRLPOOL_H 3 | 4 | # include 5 | # include 6 | 7 | #ifdef __cplusplus 8 | extern "C" { 9 | #endif 10 | 11 | # define WHIRLPOOL_DIGEST_LENGTH (512/8) 12 | # define WHIRLPOOL_BBLOCK 512 13 | # define WHIRLPOOL_COUNTER (256/8) 14 | 15 | typedef struct { 16 | union { 17 | unsigned char c[WHIRLPOOL_DIGEST_LENGTH]; 18 | /* double q is here to ensure 64-bit alignment */ 19 | double q[WHIRLPOOL_DIGEST_LENGTH / sizeof(double)]; 20 | } H; 21 | unsigned char data[WHIRLPOOL_BBLOCK / 8]; 22 | unsigned int bitoff; 23 | size_t bitlen[WHIRLPOOL_COUNTER / sizeof(size_t)]; 24 | } WHIRLPOOL_CTX; 25 | 26 | # ifndef OPENSSL_NO_WHIRLPOOL 27 | # ifdef OPENSSL_FIPS 28 | int private_WHIRLPOOL_Init(WHIRLPOOL_CTX *c); 29 | # endif 30 | int WHIRLPOOL_Init(WHIRLPOOL_CTX *c); 31 | int WHIRLPOOL_Update(WHIRLPOOL_CTX *c, const void *inp, size_t bytes); 32 | void WHIRLPOOL_BitUpdate(WHIRLPOOL_CTX *c, const void *inp, size_t bits); 33 | int WHIRLPOOL_Final(unsigned char *md, WHIRLPOOL_CTX *c); 34 | unsigned char *WHIRLPOOL(const void *inp, size_t bytes, unsigned char *md); 35 | # endif 36 | 37 | #ifdef __cplusplus 38 | } 39 | #endif 40 | 41 | #endif 42 | -------------------------------------------------------------------------------- /C/openssl-1.0.2u/comp.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef HEADER_COMP_H 3 | # define HEADER_COMP_H 4 | 5 | # include 6 | 7 | # ifdef OPENSSL_NO_COMP 8 | # error COMP is disabled. 9 | # endif 10 | 11 | #ifdef __cplusplus 12 | extern "C" { 13 | #endif 14 | 15 | typedef struct comp_ctx_st COMP_CTX; 16 | 17 | struct comp_method_st { 18 | int type; /* NID for compression library */ 19 | const char *name; /* A text string to identify the library */ 20 | int (*init) (COMP_CTX *ctx); 21 | void (*finish) (COMP_CTX *ctx); 22 | int (*compress) (COMP_CTX *ctx, 23 | unsigned char *out, unsigned int olen, 24 | unsigned char *in, unsigned int ilen); 25 | int (*expand) (COMP_CTX *ctx, 26 | unsigned char *out, unsigned int olen, 27 | unsigned char *in, unsigned int ilen); 28 | /* 29 | * The following two do NOTHING, but are kept for backward compatibility 30 | */ 31 | long (*ctrl) (void); 32 | long (*callback_ctrl) (void); 33 | }; 34 | 35 | struct comp_ctx_st { 36 | COMP_METHOD *meth; 37 | unsigned long compress_in; 38 | unsigned long compress_out; 39 | unsigned long expand_in; 40 | unsigned long expand_out; 41 | CRYPTO_EX_DATA ex_data; 42 | }; 43 | 44 | COMP_CTX *COMP_CTX_new(COMP_METHOD *meth); 45 | void COMP_CTX_free(COMP_CTX *ctx); 46 | int COMP_compress_block(COMP_CTX *ctx, unsigned char *out, int olen, 47 | unsigned char *in, int ilen); 48 | int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen, 49 | unsigned char *in, int ilen); 50 | COMP_METHOD *COMP_rle(void); 51 | COMP_METHOD *COMP_zlib(void); 52 | void COMP_zlib_cleanup(void); 53 | 54 | # ifdef HEADER_BIO_H 55 | # ifdef ZLIB 56 | BIO_METHOD *BIO_f_zlib(void); 57 | # endif 58 | # endif 59 | 60 | /* BEGIN ERROR CODES */ 61 | /* 62 | * The following lines are auto generated by the script mkerr.pl. Any changes 63 | * made after this point may be overwritten when the script is next run. 64 | */ 65 | void ERR_load_COMP_strings(void); 66 | 67 | /* Error codes for the COMP functions. */ 68 | 69 | /* Function codes. */ 70 | # define COMP_F_BIO_ZLIB_FLUSH 99 71 | # define COMP_F_BIO_ZLIB_NEW 100 72 | # define COMP_F_BIO_ZLIB_READ 101 73 | # define COMP_F_BIO_ZLIB_WRITE 102 74 | 75 | /* Reason codes. */ 76 | # define COMP_R_ZLIB_DEFLATE_ERROR 99 77 | # define COMP_R_ZLIB_INFLATE_ERROR 100 78 | # define COMP_R_ZLIB_NOT_SUPPORTED 101 79 | 80 | #ifdef __cplusplus 81 | } 82 | #endif 83 | #endif 84 | -------------------------------------------------------------------------------- /C/openssl-1.0.2u/ebcdic.h: -------------------------------------------------------------------------------- 1 | /* crypto/ebcdic.h */ 2 | 3 | #ifndef HEADER_EBCDIC_H 4 | # define HEADER_EBCDIC_H 5 | 6 | # include 7 | 8 | #ifdef __cplusplus 9 | extern "C" { 10 | #endif 11 | 12 | /* Avoid name clashes with other applications */ 13 | # define os_toascii _openssl_os_toascii 14 | # define os_toebcdic _openssl_os_toebcdic 15 | # define ebcdic2ascii _openssl_ebcdic2ascii 16 | # define ascii2ebcdic _openssl_ascii2ebcdic 17 | 18 | extern const unsigned char os_toascii[256]; 19 | extern const unsigned char os_toebcdic[256]; 20 | void *ebcdic2ascii(void *dest, const void *srce, size_t count); 21 | void *ascii2ebcdic(void *dest, const void *srce, size_t count); 22 | 23 | #ifdef __cplusplus 24 | } 25 | #endif 26 | #endif 27 | -------------------------------------------------------------------------------- /C/openssl-1.0.2u/whrlpool.h: -------------------------------------------------------------------------------- 1 | #ifndef HEADER_WHRLPOOL_H 2 | # define HEADER_WHRLPOOL_H 3 | 4 | # include 5 | # include 6 | 7 | #ifdef __cplusplus 8 | extern "C" { 9 | #endif 10 | 11 | # define WHIRLPOOL_DIGEST_LENGTH (512/8) 12 | # define WHIRLPOOL_BBLOCK 512 13 | # define WHIRLPOOL_COUNTER (256/8) 14 | 15 | typedef struct { 16 | union { 17 | unsigned char c[WHIRLPOOL_DIGEST_LENGTH]; 18 | /* double q is here to ensure 64-bit alignment */ 19 | double q[WHIRLPOOL_DIGEST_LENGTH / sizeof(double)]; 20 | } H; 21 | unsigned char data[WHIRLPOOL_BBLOCK / 8]; 22 | unsigned int bitoff; 23 | size_t bitlen[WHIRLPOOL_COUNTER / sizeof(size_t)]; 24 | } WHIRLPOOL_CTX; 25 | 26 | # ifndef OPENSSL_NO_WHIRLPOOL 27 | # ifdef OPENSSL_FIPS 28 | int private_WHIRLPOOL_Init(WHIRLPOOL_CTX *c); 29 | # endif 30 | int WHIRLPOOL_Init(WHIRLPOOL_CTX *c); 31 | int WHIRLPOOL_Update(WHIRLPOOL_CTX *c, const void *inp, size_t bytes); 32 | void WHIRLPOOL_BitUpdate(WHIRLPOOL_CTX *c, const void *inp, size_t bits); 33 | int WHIRLPOOL_Final(unsigned char *md, WHIRLPOOL_CTX *c); 34 | unsigned char *WHIRLPOOL(const void *inp, size_t bytes, unsigned char *md); 35 | # endif 36 | 37 | #ifdef __cplusplus 38 | } 39 | #endif 40 | 41 | #endif 42 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/__DECC_INCLUDE_EPILOGUE.H: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | /* 11 | * This file is only used by HP C on VMS, and is included automatically 12 | * after each header file from this directory 13 | */ 14 | 15 | /* restore state. Must correspond to the save in __decc_include_prologue.h */ 16 | #pragma names restore 17 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/__DECC_INCLUDE_PROLOGUE.H: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | /* 11 | * This file is only used by HP C on VMS, and is included automatically 12 | * after each header file from this directory 13 | */ 14 | 15 | /* save state */ 16 | #pragma names save 17 | /* have the compiler shorten symbols larger than 31 chars to 23 chars 18 | * followed by a 8 hex char CRC 19 | */ 20 | #pragma names as_is,shortened 21 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/asn1_mac.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #error "This file is obsolete; please update your software." 11 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/blowfish.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_BLOWFISH_H 11 | # define HEADER_BLOWFISH_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_BF 16 | # include 17 | # ifdef __cplusplus 18 | extern "C" { 19 | # endif 20 | 21 | # define BF_ENCRYPT 1 22 | # define BF_DECRYPT 0 23 | 24 | /*- 25 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 26 | * ! BF_LONG has to be at least 32 bits wide. ! 27 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 28 | */ 29 | # define BF_LONG unsigned int 30 | 31 | # define BF_ROUNDS 16 32 | # define BF_BLOCK 8 33 | 34 | typedef struct bf_key_st { 35 | BF_LONG P[BF_ROUNDS + 2]; 36 | BF_LONG S[4 * 256]; 37 | } BF_KEY; 38 | 39 | void BF_set_key(BF_KEY *key, int len, const unsigned char *data); 40 | 41 | void BF_encrypt(BF_LONG *data, const BF_KEY *key); 42 | void BF_decrypt(BF_LONG *data, const BF_KEY *key); 43 | 44 | void BF_ecb_encrypt(const unsigned char *in, unsigned char *out, 45 | const BF_KEY *key, int enc); 46 | void BF_cbc_encrypt(const unsigned char *in, unsigned char *out, long length, 47 | const BF_KEY *schedule, unsigned char *ivec, int enc); 48 | void BF_cfb64_encrypt(const unsigned char *in, unsigned char *out, 49 | long length, const BF_KEY *schedule, 50 | unsigned char *ivec, int *num, int enc); 51 | void BF_ofb64_encrypt(const unsigned char *in, unsigned char *out, 52 | long length, const BF_KEY *schedule, 53 | unsigned char *ivec, int *num); 54 | const char *BF_options(void); 55 | 56 | # ifdef __cplusplus 57 | } 58 | # endif 59 | # endif 60 | 61 | #endif 62 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_BUFFER_H 11 | # define HEADER_BUFFER_H 12 | 13 | # include 14 | # ifndef HEADER_CRYPTO_H 15 | # include 16 | # endif 17 | 18 | 19 | #ifdef __cplusplus 20 | extern "C" { 21 | #endif 22 | 23 | # include 24 | # include 25 | 26 | /* 27 | * These names are outdated as of OpenSSL 1.1; a future release 28 | * will move them to be deprecated. 29 | */ 30 | # define BUF_strdup(s) OPENSSL_strdup(s) 31 | # define BUF_strndup(s, size) OPENSSL_strndup(s, size) 32 | # define BUF_memdup(data, size) OPENSSL_memdup(data, size) 33 | # define BUF_strlcpy(dst, src, size) OPENSSL_strlcpy(dst, src, size) 34 | # define BUF_strlcat(dst, src, size) OPENSSL_strlcat(dst, src, size) 35 | # define BUF_strnlen(str, maxlen) OPENSSL_strnlen(str, maxlen) 36 | 37 | struct buf_mem_st { 38 | size_t length; /* current number of bytes */ 39 | char *data; 40 | size_t max; /* size of buffer */ 41 | unsigned long flags; 42 | }; 43 | 44 | # define BUF_MEM_FLAG_SECURE 0x01 45 | 46 | BUF_MEM *BUF_MEM_new(void); 47 | BUF_MEM *BUF_MEM_new_ex(unsigned long flags); 48 | void BUF_MEM_free(BUF_MEM *a); 49 | size_t BUF_MEM_grow(BUF_MEM *str, size_t len); 50 | size_t BUF_MEM_grow_clean(BUF_MEM *str, size_t len); 51 | void BUF_reverse(unsigned char *out, const unsigned char *in, size_t siz); 52 | 53 | /* BEGIN ERROR CODES */ 54 | /* 55 | * The following lines are auto generated by the script mkerr.pl. Any changes 56 | * made after this point may be overwritten when the script is next run. 57 | */ 58 | 59 | int ERR_load_BUF_strings(void); 60 | 61 | /* Error codes for the BUF functions. */ 62 | 63 | /* Function codes. */ 64 | # define BUF_F_BUF_MEM_GROW 100 65 | # define BUF_F_BUF_MEM_GROW_CLEAN 105 66 | # define BUF_F_BUF_MEM_NEW 101 67 | 68 | /* Reason codes. */ 69 | 70 | # ifdef __cplusplus 71 | } 72 | # endif 73 | #endif 74 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/cast.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_CAST_H 11 | # define HEADER_CAST_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_CAST 16 | # ifdef __cplusplus 17 | extern "C" { 18 | # endif 19 | 20 | # define CAST_ENCRYPT 1 21 | # define CAST_DECRYPT 0 22 | 23 | # define CAST_LONG unsigned int 24 | 25 | # define CAST_BLOCK 8 26 | # define CAST_KEY_LENGTH 16 27 | 28 | typedef struct cast_key_st { 29 | CAST_LONG data[32]; 30 | int short_key; /* Use reduced rounds for short key */ 31 | } CAST_KEY; 32 | 33 | void CAST_set_key(CAST_KEY *key, int len, const unsigned char *data); 34 | void CAST_ecb_encrypt(const unsigned char *in, unsigned char *out, 35 | const CAST_KEY *key, int enc); 36 | void CAST_encrypt(CAST_LONG *data, const CAST_KEY *key); 37 | void CAST_decrypt(CAST_LONG *data, const CAST_KEY *key); 38 | void CAST_cbc_encrypt(const unsigned char *in, unsigned char *out, 39 | long length, const CAST_KEY *ks, unsigned char *iv, 40 | int enc); 41 | void CAST_cfb64_encrypt(const unsigned char *in, unsigned char *out, 42 | long length, const CAST_KEY *schedule, 43 | unsigned char *ivec, int *num, int enc); 44 | void CAST_ofb64_encrypt(const unsigned char *in, unsigned char *out, 45 | long length, const CAST_KEY *schedule, 46 | unsigned char *ivec, int *num); 47 | 48 | # ifdef __cplusplus 49 | } 50 | # endif 51 | # endif 52 | 53 | #endif 54 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/cmac.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_CMAC_H 11 | # define HEADER_CMAC_H 12 | 13 | # ifndef OPENSSL_NO_CMAC 14 | 15 | #ifdef __cplusplus 16 | extern "C" { 17 | #endif 18 | 19 | # include 20 | 21 | /* Opaque */ 22 | typedef struct CMAC_CTX_st CMAC_CTX; 23 | 24 | CMAC_CTX *CMAC_CTX_new(void); 25 | void CMAC_CTX_cleanup(CMAC_CTX *ctx); 26 | void CMAC_CTX_free(CMAC_CTX *ctx); 27 | EVP_CIPHER_CTX *CMAC_CTX_get0_cipher_ctx(CMAC_CTX *ctx); 28 | int CMAC_CTX_copy(CMAC_CTX *out, const CMAC_CTX *in); 29 | 30 | int CMAC_Init(CMAC_CTX *ctx, const void *key, size_t keylen, 31 | const EVP_CIPHER *cipher, ENGINE *impl); 32 | int CMAC_Update(CMAC_CTX *ctx, const void *data, size_t dlen); 33 | int CMAC_Final(CMAC_CTX *ctx, unsigned char *out, size_t *poutlen); 34 | int CMAC_resume(CMAC_CTX *ctx); 35 | 36 | #ifdef __cplusplus 37 | } 38 | #endif 39 | 40 | # endif 41 | #endif 42 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/comp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_COMP_H 11 | # define HEADER_COMP_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_COMP 16 | # include 17 | # ifdef __cplusplus 18 | extern "C" { 19 | # endif 20 | 21 | 22 | 23 | COMP_CTX *COMP_CTX_new(COMP_METHOD *meth); 24 | const COMP_METHOD *COMP_CTX_get_method(const COMP_CTX *ctx); 25 | int COMP_CTX_get_type(const COMP_CTX* comp); 26 | int COMP_get_type(const COMP_METHOD *meth); 27 | const char *COMP_get_name(const COMP_METHOD *meth); 28 | void COMP_CTX_free(COMP_CTX *ctx); 29 | 30 | int COMP_compress_block(COMP_CTX *ctx, unsigned char *out, int olen, 31 | unsigned char *in, int ilen); 32 | int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen, 33 | unsigned char *in, int ilen); 34 | 35 | COMP_METHOD *COMP_zlib(void); 36 | 37 | #if OPENSSL_API_COMPAT < 0x10100000L 38 | #define COMP_zlib_cleanup() while(0) continue 39 | #endif 40 | 41 | # ifdef HEADER_BIO_H 42 | # ifdef ZLIB 43 | const BIO_METHOD *BIO_f_zlib(void); 44 | # endif 45 | # endif 46 | 47 | /* BEGIN ERROR CODES */ 48 | /* 49 | * The following lines are auto generated by the script mkerr.pl. Any changes 50 | * made after this point may be overwritten when the script is next run. 51 | */ 52 | 53 | int ERR_load_COMP_strings(void); 54 | 55 | /* Error codes for the COMP functions. */ 56 | 57 | /* Function codes. */ 58 | # define COMP_F_BIO_ZLIB_FLUSH 99 59 | # define COMP_F_BIO_ZLIB_NEW 100 60 | # define COMP_F_BIO_ZLIB_READ 101 61 | # define COMP_F_BIO_ZLIB_WRITE 102 62 | 63 | /* Reason codes. */ 64 | # define COMP_R_ZLIB_DEFLATE_ERROR 99 65 | # define COMP_R_ZLIB_INFLATE_ERROR 100 66 | # define COMP_R_ZLIB_NOT_SUPPORTED 101 67 | 68 | # ifdef __cplusplus 69 | } 70 | # endif 71 | # endif 72 | #endif 73 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/conf_api.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_CONF_API_H 11 | # define HEADER_CONF_API_H 12 | 13 | # include 14 | # include 15 | 16 | #ifdef __cplusplus 17 | extern "C" { 18 | #endif 19 | 20 | /* Up until OpenSSL 0.9.5a, this was new_section */ 21 | CONF_VALUE *_CONF_new_section(CONF *conf, const char *section); 22 | /* Up until OpenSSL 0.9.5a, this was get_section */ 23 | CONF_VALUE *_CONF_get_section(const CONF *conf, const char *section); 24 | /* Up until OpenSSL 0.9.5a, this was CONF_get_section */ 25 | STACK_OF(CONF_VALUE) *_CONF_get_section_values(const CONF *conf, 26 | const char *section); 27 | 28 | int _CONF_add_string(CONF *conf, CONF_VALUE *section, CONF_VALUE *value); 29 | char *_CONF_get_string(const CONF *conf, const char *section, 30 | const char *name); 31 | long _CONF_get_number(const CONF *conf, const char *section, 32 | const char *name); 33 | 34 | int _CONF_new_data(CONF *conf); 35 | void _CONF_free_data(CONF *conf); 36 | 37 | #ifdef __cplusplus 38 | } 39 | #endif 40 | #endif 41 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/dtls1.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_DTLS1_H 11 | # define HEADER_DTLS1_H 12 | 13 | #ifdef __cplusplus 14 | extern "C" { 15 | #endif 16 | 17 | # define DTLS1_VERSION 0xFEFF 18 | # define DTLS1_2_VERSION 0xFEFD 19 | # define DTLS_MIN_VERSION DTLS1_VERSION 20 | # define DTLS_MAX_VERSION DTLS1_2_VERSION 21 | # define DTLS1_VERSION_MAJOR 0xFE 22 | 23 | # define DTLS1_BAD_VER 0x0100 24 | 25 | /* Special value for method supporting multiple versions */ 26 | # define DTLS_ANY_VERSION 0x1FFFF 27 | 28 | /* lengths of messages */ 29 | # define DTLS1_COOKIE_LENGTH 256 30 | 31 | # define DTLS1_RT_HEADER_LENGTH 13 32 | 33 | # define DTLS1_HM_HEADER_LENGTH 12 34 | 35 | # define DTLS1_HM_BAD_FRAGMENT -2 36 | # define DTLS1_HM_FRAGMENT_RETRY -3 37 | 38 | # define DTLS1_CCS_HEADER_LENGTH 1 39 | 40 | # ifdef DTLS1_AD_MISSING_HANDSHAKE_MESSAGE 41 | # define DTLS1_AL_HEADER_LENGTH 7 42 | # else 43 | # define DTLS1_AL_HEADER_LENGTH 2 44 | # endif 45 | 46 | 47 | /* Timeout multipliers (timeout slice is defined in apps/timeouts.h */ 48 | # define DTLS1_TMO_READ_COUNT 2 49 | # define DTLS1_TMO_WRITE_COUNT 2 50 | 51 | # define DTLS1_TMO_ALERT_COUNT 12 52 | 53 | #ifdef __cplusplus 54 | } 55 | #endif 56 | #endif 57 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/ebcdic.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_EBCDIC_H 11 | # define HEADER_EBCDIC_H 12 | 13 | # include 14 | 15 | #ifdef __cplusplus 16 | extern "C" { 17 | #endif 18 | 19 | /* Avoid name clashes with other applications */ 20 | # define os_toascii _openssl_os_toascii 21 | # define os_toebcdic _openssl_os_toebcdic 22 | # define ebcdic2ascii _openssl_ebcdic2ascii 23 | # define ascii2ebcdic _openssl_ascii2ebcdic 24 | 25 | extern const unsigned char os_toascii[256]; 26 | extern const unsigned char os_toebcdic[256]; 27 | void *ebcdic2ascii(void *dest, const void *srce, size_t count); 28 | void *ascii2ebcdic(void *dest, const void *srce, size_t count); 29 | 30 | #ifdef __cplusplus 31 | } 32 | #endif 33 | #endif 34 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/ecdh.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #include 11 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/ecdsa.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #include 11 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/hmac.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_HMAC_H 11 | # define HEADER_HMAC_H 12 | 13 | # include 14 | 15 | # include 16 | 17 | # define HMAC_MAX_MD_CBLOCK 128/* largest known is SHA512 */ 18 | 19 | #ifdef __cplusplus 20 | extern "C" { 21 | #endif 22 | 23 | size_t HMAC_size(const HMAC_CTX *e); 24 | HMAC_CTX *HMAC_CTX_new(void); 25 | int HMAC_CTX_reset(HMAC_CTX *ctx); 26 | void HMAC_CTX_free(HMAC_CTX *ctx); 27 | 28 | DEPRECATEDIN_1_1_0(__owur int HMAC_Init(HMAC_CTX *ctx, const void *key, int len, 29 | const EVP_MD *md)) 30 | 31 | /*__owur*/ int HMAC_Init_ex(HMAC_CTX *ctx, const void *key, int len, 32 | const EVP_MD *md, ENGINE *impl); 33 | /*__owur*/ int HMAC_Update(HMAC_CTX *ctx, const unsigned char *data, 34 | size_t len); 35 | /*__owur*/ int HMAC_Final(HMAC_CTX *ctx, unsigned char *md, 36 | unsigned int *len); 37 | unsigned char *HMAC(const EVP_MD *evp_md, const void *key, int key_len, 38 | const unsigned char *d, size_t n, unsigned char *md, 39 | unsigned int *md_len); 40 | __owur int HMAC_CTX_copy(HMAC_CTX *dctx, HMAC_CTX *sctx); 41 | 42 | void HMAC_CTX_set_flags(HMAC_CTX *ctx, unsigned long flags); 43 | const EVP_MD *HMAC_CTX_get_md(const HMAC_CTX *ctx); 44 | 45 | #ifdef __cplusplus 46 | } 47 | #endif 48 | 49 | #endif 50 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/idea.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_IDEA_H 11 | # define HEADER_IDEA_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_IDEA 16 | # ifdef __cplusplus 17 | extern "C" { 18 | # endif 19 | 20 | typedef unsigned int IDEA_INT; 21 | 22 | # define IDEA_ENCRYPT 1 23 | # define IDEA_DECRYPT 0 24 | 25 | # define IDEA_BLOCK 8 26 | # define IDEA_KEY_LENGTH 16 27 | 28 | typedef struct idea_key_st { 29 | IDEA_INT data[9][6]; 30 | } IDEA_KEY_SCHEDULE; 31 | 32 | const char *IDEA_options(void); 33 | void IDEA_ecb_encrypt(const unsigned char *in, unsigned char *out, 34 | IDEA_KEY_SCHEDULE *ks); 35 | void IDEA_set_encrypt_key(const unsigned char *key, IDEA_KEY_SCHEDULE *ks); 36 | void IDEA_set_decrypt_key(IDEA_KEY_SCHEDULE *ek, IDEA_KEY_SCHEDULE *dk); 37 | void IDEA_cbc_encrypt(const unsigned char *in, unsigned char *out, 38 | long length, IDEA_KEY_SCHEDULE *ks, unsigned char *iv, 39 | int enc); 40 | void IDEA_cfb64_encrypt(const unsigned char *in, unsigned char *out, 41 | long length, IDEA_KEY_SCHEDULE *ks, unsigned char *iv, 42 | int *num, int enc); 43 | void IDEA_ofb64_encrypt(const unsigned char *in, unsigned char *out, 44 | long length, IDEA_KEY_SCHEDULE *ks, unsigned char *iv, 45 | int *num); 46 | void IDEA_encrypt(unsigned long *in, IDEA_KEY_SCHEDULE *ks); 47 | 48 | # if OPENSSL_API_COMPAT < 0x10100000L 49 | # define idea_options IDEA_options 50 | # define idea_ecb_encrypt IDEA_ecb_encrypt 51 | # define idea_set_encrypt_key IDEA_set_encrypt_key 52 | # define idea_set_decrypt_key IDEA_set_decrypt_key 53 | # define idea_cbc_encrypt IDEA_cbc_encrypt 54 | # define idea_cfb64_encrypt IDEA_cfb64_encrypt 55 | # define idea_ofb64_encrypt IDEA_ofb64_encrypt 56 | # define idea_encrypt IDEA_encrypt 57 | # endif 58 | 59 | # ifdef __cplusplus 60 | } 61 | # endif 62 | # endif 63 | 64 | #endif 65 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/md2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_MD2_H 11 | # define HEADER_MD2_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_MD2 16 | # include 17 | # ifdef __cplusplus 18 | extern "C" { 19 | # endif 20 | 21 | typedef unsigned char MD2_INT; 22 | 23 | # define MD2_DIGEST_LENGTH 16 24 | # define MD2_BLOCK 16 25 | 26 | typedef struct MD2state_st { 27 | unsigned int num; 28 | unsigned char data[MD2_BLOCK]; 29 | MD2_INT cksm[MD2_BLOCK]; 30 | MD2_INT state[MD2_BLOCK]; 31 | } MD2_CTX; 32 | 33 | const char *MD2_options(void); 34 | int MD2_Init(MD2_CTX *c); 35 | int MD2_Update(MD2_CTX *c, const unsigned char *data, size_t len); 36 | int MD2_Final(unsigned char *md, MD2_CTX *c); 37 | unsigned char *MD2(const unsigned char *d, size_t n, unsigned char *md); 38 | 39 | # ifdef __cplusplus 40 | } 41 | # endif 42 | # endif 43 | 44 | #endif 45 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/md4.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_MD4_H 11 | # define HEADER_MD4_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_MD4 16 | # include 17 | # include 18 | # ifdef __cplusplus 19 | extern "C" { 20 | # endif 21 | 22 | /*- 23 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 24 | * ! MD4_LONG has to be at least 32 bits wide. ! 25 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 26 | */ 27 | # define MD4_LONG unsigned int 28 | 29 | # define MD4_CBLOCK 64 30 | # define MD4_LBLOCK (MD4_CBLOCK/4) 31 | # define MD4_DIGEST_LENGTH 16 32 | 33 | typedef struct MD4state_st { 34 | MD4_LONG A, B, C, D; 35 | MD4_LONG Nl, Nh; 36 | MD4_LONG data[MD4_LBLOCK]; 37 | unsigned int num; 38 | } MD4_CTX; 39 | 40 | int MD4_Init(MD4_CTX *c); 41 | int MD4_Update(MD4_CTX *c, const void *data, size_t len); 42 | int MD4_Final(unsigned char *md, MD4_CTX *c); 43 | unsigned char *MD4(const unsigned char *d, size_t n, unsigned char *md); 44 | void MD4_Transform(MD4_CTX *c, const unsigned char *b); 45 | 46 | # ifdef __cplusplus 47 | } 48 | # endif 49 | # endif 50 | 51 | #endif 52 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/md5.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_MD5_H 11 | # define HEADER_MD5_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_MD5 16 | # include 17 | # include 18 | # ifdef __cplusplus 19 | extern "C" { 20 | # endif 21 | 22 | /* 23 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 24 | * ! MD5_LONG has to be at least 32 bits wide. ! 25 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 26 | */ 27 | # define MD5_LONG unsigned int 28 | 29 | # define MD5_CBLOCK 64 30 | # define MD5_LBLOCK (MD5_CBLOCK/4) 31 | # define MD5_DIGEST_LENGTH 16 32 | 33 | typedef struct MD5state_st { 34 | MD5_LONG A, B, C, D; 35 | MD5_LONG Nl, Nh; 36 | MD5_LONG data[MD5_LBLOCK]; 37 | unsigned int num; 38 | } MD5_CTX; 39 | 40 | int MD5_Init(MD5_CTX *c); 41 | int MD5_Update(MD5_CTX *c, const void *data, size_t len); 42 | int MD5_Final(unsigned char *md, MD5_CTX *c); 43 | unsigned char *MD5(const unsigned char *d, size_t n, unsigned char *md); 44 | void MD5_Transform(MD5_CTX *c, const unsigned char *b); 45 | # ifdef __cplusplus 46 | } 47 | # endif 48 | # endif 49 | 50 | #endif 51 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/mdc2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_MDC2_H 11 | # define HEADER_MDC2_H 12 | 13 | # include 14 | 15 | #ifndef OPENSSL_NO_MDC2 16 | # include 17 | # include 18 | # ifdef __cplusplus 19 | extern "C" { 20 | # endif 21 | 22 | # define MDC2_BLOCK 8 23 | # define MDC2_DIGEST_LENGTH 16 24 | 25 | typedef struct mdc2_ctx_st { 26 | unsigned int num; 27 | unsigned char data[MDC2_BLOCK]; 28 | DES_cblock h, hh; 29 | int pad_type; /* either 1 or 2, default 1 */ 30 | } MDC2_CTX; 31 | 32 | int MDC2_Init(MDC2_CTX *c); 33 | int MDC2_Update(MDC2_CTX *c, const unsigned char *data, size_t len); 34 | int MDC2_Final(unsigned char *md, MDC2_CTX *c); 35 | unsigned char *MDC2(const unsigned char *d, size_t n, unsigned char *md); 36 | 37 | # ifdef __cplusplus 38 | } 39 | # endif 40 | # endif 41 | 42 | #endif 43 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/pem2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifdef __cplusplus 11 | extern "C" { 12 | #endif 13 | 14 | #ifndef HEADER_PEM_H 15 | int ERR_load_PEM_strings(void); 16 | #endif 17 | 18 | #ifdef __cplusplus 19 | } 20 | #endif 21 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/rand.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_RAND_H 11 | # define HEADER_RAND_H 12 | 13 | # include 14 | # include 15 | # include 16 | 17 | #ifdef __cplusplus 18 | extern "C" { 19 | #endif 20 | 21 | /* Already defined in ossl_typ.h */ 22 | /* typedef struct rand_meth_st RAND_METHOD; */ 23 | 24 | struct rand_meth_st { 25 | int (*seed) (const void *buf, int num); 26 | int (*bytes) (unsigned char *buf, int num); 27 | void (*cleanup) (void); 28 | int (*add) (const void *buf, int num, double entropy); 29 | int (*pseudorand) (unsigned char *buf, int num); 30 | int (*status) (void); 31 | }; 32 | 33 | # ifdef BN_DEBUG 34 | extern int rand_predictable; 35 | # endif 36 | 37 | int RAND_set_rand_method(const RAND_METHOD *meth); 38 | const RAND_METHOD *RAND_get_rand_method(void); 39 | # ifndef OPENSSL_NO_ENGINE 40 | int RAND_set_rand_engine(ENGINE *engine); 41 | # endif 42 | RAND_METHOD *RAND_OpenSSL(void); 43 | #if OPENSSL_API_COMPAT < 0x10100000L 44 | # define RAND_cleanup() while(0) continue 45 | #endif 46 | int RAND_bytes(unsigned char *buf, int num); 47 | DEPRECATEDIN_1_1_0(int RAND_pseudo_bytes(unsigned char *buf, int num)) 48 | void RAND_seed(const void *buf, int num); 49 | #if defined(__ANDROID__) && defined(__NDK_FPABI__) 50 | __NDK_FPABI__ /* __attribute__((pcs("aapcs"))) on ARM */ 51 | #endif 52 | void RAND_add(const void *buf, int num, double entropy); 53 | int RAND_load_file(const char *file, long max_bytes); 54 | int RAND_write_file(const char *file); 55 | const char *RAND_file_name(char *file, size_t num); 56 | int RAND_status(void); 57 | # ifndef OPENSSL_NO_EGD 58 | int RAND_query_egd_bytes(const char *path, unsigned char *buf, int bytes); 59 | int RAND_egd(const char *path); 60 | int RAND_egd_bytes(const char *path, int bytes); 61 | # endif 62 | int RAND_poll(void); 63 | 64 | #if defined(_WIN32) && (defined(BASETYPES) || defined(_WINDEF_H)) 65 | /* application has to include in order to use these */ 66 | DEPRECATEDIN_1_1_0(void RAND_screen(void)) 67 | DEPRECATEDIN_1_1_0(int RAND_event(UINT, WPARAM, LPARAM)) 68 | #endif 69 | 70 | /* BEGIN ERROR CODES */ 71 | /* 72 | * The following lines are auto generated by the script mkerr.pl. Any changes 73 | * made after this point may be overwritten when the script is next run. 74 | */ 75 | 76 | int ERR_load_RAND_strings(void); 77 | 78 | /* Error codes for the RAND functions. */ 79 | 80 | /* Function codes. */ 81 | # define RAND_F_RAND_BYTES 100 82 | 83 | /* Reason codes. */ 84 | # define RAND_R_PRNG_NOT_SEEDED 100 85 | 86 | # ifdef __cplusplus 87 | } 88 | # endif 89 | #endif 90 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/rc2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_RC2_H 11 | # define HEADER_RC2_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_RC2 16 | # ifdef __cplusplus 17 | extern "C" { 18 | # endif 19 | 20 | typedef unsigned int RC2_INT; 21 | 22 | # define RC2_ENCRYPT 1 23 | # define RC2_DECRYPT 0 24 | 25 | # define RC2_BLOCK 8 26 | # define RC2_KEY_LENGTH 16 27 | 28 | typedef struct rc2_key_st { 29 | RC2_INT data[64]; 30 | } RC2_KEY; 31 | 32 | void RC2_set_key(RC2_KEY *key, int len, const unsigned char *data, int bits); 33 | void RC2_ecb_encrypt(const unsigned char *in, unsigned char *out, 34 | RC2_KEY *key, int enc); 35 | void RC2_encrypt(unsigned long *data, RC2_KEY *key); 36 | void RC2_decrypt(unsigned long *data, RC2_KEY *key); 37 | void RC2_cbc_encrypt(const unsigned char *in, unsigned char *out, long length, 38 | RC2_KEY *ks, unsigned char *iv, int enc); 39 | void RC2_cfb64_encrypt(const unsigned char *in, unsigned char *out, 40 | long length, RC2_KEY *schedule, unsigned char *ivec, 41 | int *num, int enc); 42 | void RC2_ofb64_encrypt(const unsigned char *in, unsigned char *out, 43 | long length, RC2_KEY *schedule, unsigned char *ivec, 44 | int *num); 45 | 46 | # ifdef __cplusplus 47 | } 48 | # endif 49 | # endif 50 | 51 | #endif 52 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/rc4.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_RC4_H 11 | # define HEADER_RC4_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_RC4 16 | # include 17 | #ifdef __cplusplus 18 | extern "C" { 19 | #endif 20 | 21 | typedef struct rc4_key_st { 22 | RC4_INT x, y; 23 | RC4_INT data[256]; 24 | } RC4_KEY; 25 | 26 | const char *RC4_options(void); 27 | void RC4_set_key(RC4_KEY *key, int len, const unsigned char *data); 28 | void RC4(RC4_KEY *key, size_t len, const unsigned char *indata, 29 | unsigned char *outdata); 30 | 31 | # ifdef __cplusplus 32 | } 33 | # endif 34 | # endif 35 | 36 | #endif 37 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/rc5.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_RC5_H 11 | # define HEADER_RC5_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_RC5 16 | # ifdef __cplusplus 17 | extern "C" { 18 | # endif 19 | 20 | # define RC5_ENCRYPT 1 21 | # define RC5_DECRYPT 0 22 | 23 | # define RC5_32_INT unsigned int 24 | 25 | # define RC5_32_BLOCK 8 26 | # define RC5_32_KEY_LENGTH 16/* This is a default, max is 255 */ 27 | 28 | /* 29 | * This are the only values supported. Tweak the code if you want more The 30 | * most supported modes will be RC5-32/12/16 RC5-32/16/8 31 | */ 32 | # define RC5_8_ROUNDS 8 33 | # define RC5_12_ROUNDS 12 34 | # define RC5_16_ROUNDS 16 35 | 36 | typedef struct rc5_key_st { 37 | /* Number of rounds */ 38 | int rounds; 39 | RC5_32_INT data[2 * (RC5_16_ROUNDS + 1)]; 40 | } RC5_32_KEY; 41 | 42 | void RC5_32_set_key(RC5_32_KEY *key, int len, const unsigned char *data, 43 | int rounds); 44 | void RC5_32_ecb_encrypt(const unsigned char *in, unsigned char *out, 45 | RC5_32_KEY *key, int enc); 46 | void RC5_32_encrypt(unsigned long *data, RC5_32_KEY *key); 47 | void RC5_32_decrypt(unsigned long *data, RC5_32_KEY *key); 48 | void RC5_32_cbc_encrypt(const unsigned char *in, unsigned char *out, 49 | long length, RC5_32_KEY *ks, unsigned char *iv, 50 | int enc); 51 | void RC5_32_cfb64_encrypt(const unsigned char *in, unsigned char *out, 52 | long length, RC5_32_KEY *schedule, 53 | unsigned char *ivec, int *num, int enc); 54 | void RC5_32_ofb64_encrypt(const unsigned char *in, unsigned char *out, 55 | long length, RC5_32_KEY *schedule, 56 | unsigned char *ivec, int *num); 57 | 58 | # ifdef __cplusplus 59 | } 60 | # endif 61 | # endif 62 | 63 | #endif 64 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/ripemd.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_RIPEMD_H 11 | # define HEADER_RIPEMD_H 12 | 13 | # include 14 | 15 | #ifndef OPENSSL_NO_RMD160 16 | # include 17 | # include 18 | # ifdef __cplusplus 19 | extern "C" { 20 | # endif 21 | 22 | # define RIPEMD160_LONG unsigned int 23 | 24 | # define RIPEMD160_CBLOCK 64 25 | # define RIPEMD160_LBLOCK (RIPEMD160_CBLOCK/4) 26 | # define RIPEMD160_DIGEST_LENGTH 20 27 | 28 | typedef struct RIPEMD160state_st { 29 | RIPEMD160_LONG A, B, C, D, E; 30 | RIPEMD160_LONG Nl, Nh; 31 | RIPEMD160_LONG data[RIPEMD160_LBLOCK]; 32 | unsigned int num; 33 | } RIPEMD160_CTX; 34 | 35 | int RIPEMD160_Init(RIPEMD160_CTX *c); 36 | int RIPEMD160_Update(RIPEMD160_CTX *c, const void *data, size_t len); 37 | int RIPEMD160_Final(unsigned char *md, RIPEMD160_CTX *c); 38 | unsigned char *RIPEMD160(const unsigned char *d, size_t n, unsigned char *md); 39 | void RIPEMD160_Transform(RIPEMD160_CTX *c, const unsigned char *b); 40 | 41 | # ifdef __cplusplus 42 | } 43 | # endif 44 | # endif 45 | 46 | 47 | #endif 48 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/srtp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | /* 11 | * DTLS code by Eric Rescorla 12 | * 13 | * Copyright (C) 2006, Network Resonance, Inc. Copyright (C) 2011, RTFM, Inc. 14 | */ 15 | 16 | #ifndef HEADER_D1_SRTP_H 17 | # define HEADER_D1_SRTP_H 18 | 19 | # include 20 | 21 | #ifdef __cplusplus 22 | extern "C" { 23 | #endif 24 | 25 | # define SRTP_AES128_CM_SHA1_80 0x0001 26 | # define SRTP_AES128_CM_SHA1_32 0x0002 27 | # define SRTP_AES128_F8_SHA1_80 0x0003 28 | # define SRTP_AES128_F8_SHA1_32 0x0004 29 | # define SRTP_NULL_SHA1_80 0x0005 30 | # define SRTP_NULL_SHA1_32 0x0006 31 | 32 | /* AEAD SRTP protection profiles from RFC 7714 */ 33 | # define SRTP_AEAD_AES_128_GCM 0x0007 34 | # define SRTP_AEAD_AES_256_GCM 0x0008 35 | 36 | # ifndef OPENSSL_NO_SRTP 37 | 38 | __owur int SSL_CTX_set_tlsext_use_srtp(SSL_CTX *ctx, const char *profiles); 39 | __owur int SSL_set_tlsext_use_srtp(SSL *ssl, const char *profiles); 40 | 41 | __owur STACK_OF(SRTP_PROTECTION_PROFILE) *SSL_get_srtp_profiles(SSL *ssl); 42 | __owur SRTP_PROTECTION_PROFILE *SSL_get_selected_srtp_profile(SSL *s); 43 | 44 | # endif 45 | 46 | #ifdef __cplusplus 47 | } 48 | #endif 49 | 50 | #endif 51 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/ssl2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_SSL2_H 11 | # define HEADER_SSL2_H 12 | 13 | #ifdef __cplusplus 14 | extern "C" { 15 | #endif 16 | 17 | # define SSL2_VERSION 0x0002 18 | 19 | # define SSL2_MT_CLIENT_HELLO 1 20 | 21 | #ifdef __cplusplus 22 | } 23 | #endif 24 | #endif 25 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/symhacks.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1999-2018 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_SYMHACKS_H 11 | # define HEADER_SYMHACKS_H 12 | 13 | # include 14 | 15 | /* Case insensitive linking causes problems.... */ 16 | # if defined(OPENSSL_SYS_VMS) 17 | # undef ERR_load_CRYPTO_strings 18 | # define ERR_load_CRYPTO_strings ERR_load_CRYPTOlib_strings 19 | # undef OCSP_crlID_new 20 | # define OCSP_crlID_new OCSP_crlID2_new 21 | 22 | # undef d2i_ECPARAMETERS 23 | # define d2i_ECPARAMETERS d2i_UC_ECPARAMETERS 24 | # undef i2d_ECPARAMETERS 25 | # define i2d_ECPARAMETERS i2d_UC_ECPARAMETERS 26 | # undef d2i_ECPKPARAMETERS 27 | # define d2i_ECPKPARAMETERS d2i_UC_ECPKPARAMETERS 28 | # undef i2d_ECPKPARAMETERS 29 | # define i2d_ECPKPARAMETERS i2d_UC_ECPKPARAMETERS 30 | 31 | /* This one clashes with CMS_data_create */ 32 | # undef cms_Data_create 33 | # define cms_Data_create priv_cms_Data_create 34 | 35 | # endif 36 | 37 | #endif /* ! defined HEADER_VMS_IDHACKS_H */ 38 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/txt_db.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_TXT_DB_H 11 | # define HEADER_TXT_DB_H 12 | 13 | # include 14 | # include 15 | # include 16 | # include 17 | 18 | # define DB_ERROR_OK 0 19 | # define DB_ERROR_MALLOC 1 20 | # define DB_ERROR_INDEX_CLASH 2 21 | # define DB_ERROR_INDEX_OUT_OF_RANGE 3 22 | # define DB_ERROR_NO_INDEX 4 23 | # define DB_ERROR_INSERT_INDEX_CLASH 5 24 | # define DB_ERROR_WRONG_NUM_FIELDS 6 25 | 26 | #ifdef __cplusplus 27 | extern "C" { 28 | #endif 29 | 30 | typedef OPENSSL_STRING *OPENSSL_PSTRING; 31 | DEFINE_SPECIAL_STACK_OF(OPENSSL_PSTRING, OPENSSL_STRING) 32 | 33 | typedef struct txt_db_st { 34 | int num_fields; 35 | STACK_OF(OPENSSL_PSTRING) *data; 36 | LHASH_OF(OPENSSL_STRING) **index; 37 | int (**qual) (OPENSSL_STRING *); 38 | long error; 39 | long arg1; 40 | long arg2; 41 | OPENSSL_STRING *arg_row; 42 | } TXT_DB; 43 | 44 | TXT_DB *TXT_DB_read(BIO *in, int num); 45 | long TXT_DB_write(BIO *out, TXT_DB *db); 46 | int TXT_DB_create_index(TXT_DB *db, int field, int (*qual) (OPENSSL_STRING *), 47 | OPENSSL_LH_HASHFUNC hash, OPENSSL_LH_COMPFUNC cmp); 48 | void TXT_DB_free(TXT_DB *db); 49 | OPENSSL_STRING *TXT_DB_get_by_index(TXT_DB *db, int idx, 50 | OPENSSL_STRING *value); 51 | int TXT_DB_insert(TXT_DB *db, OPENSSL_STRING *value); 52 | 53 | #ifdef __cplusplus 54 | } 55 | #endif 56 | 57 | #endif 58 | -------------------------------------------------------------------------------- /C/openssl-1.1.0l/whrlpool.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_WHRLPOOL_H 11 | # define HEADER_WHRLPOOL_H 12 | 13 | #include 14 | 15 | # ifndef OPENSSL_NO_WHIRLPOOL 16 | # include 17 | # include 18 | # ifdef __cplusplus 19 | extern "C" { 20 | # endif 21 | 22 | # define WHIRLPOOL_DIGEST_LENGTH (512/8) 23 | # define WHIRLPOOL_BBLOCK 512 24 | # define WHIRLPOOL_COUNTER (256/8) 25 | 26 | typedef struct { 27 | union { 28 | unsigned char c[WHIRLPOOL_DIGEST_LENGTH]; 29 | /* double q is here to ensure 64-bit alignment */ 30 | double q[WHIRLPOOL_DIGEST_LENGTH / sizeof(double)]; 31 | } H; 32 | unsigned char data[WHIRLPOOL_BBLOCK / 8]; 33 | unsigned int bitoff; 34 | size_t bitlen[WHIRLPOOL_COUNTER / sizeof(size_t)]; 35 | } WHIRLPOOL_CTX; 36 | 37 | int WHIRLPOOL_Init(WHIRLPOOL_CTX *c); 38 | int WHIRLPOOL_Update(WHIRLPOOL_CTX *c, const void *inp, size_t bytes); 39 | void WHIRLPOOL_BitUpdate(WHIRLPOOL_CTX *c, const void *inp, size_t bits); 40 | int WHIRLPOOL_Final(unsigned char *md, WHIRLPOOL_CTX *c); 41 | unsigned char *WHIRLPOOL(const void *inp, size_t bytes, unsigned char *md); 42 | 43 | # ifdef __cplusplus 44 | } 45 | # endif 46 | # endif 47 | 48 | #endif 49 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/__DECC_INCLUDE_EPILOGUE.H: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2016-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | /* 11 | * This file is only used by HP C/C++ on VMS, and is included automatically 12 | * after each header file from this directory 13 | */ 14 | 15 | /* 16 | * The C++ compiler doesn't understand these pragmas, even though it 17 | * understands the corresponding command line qualifier. 18 | */ 19 | #ifndef __cplusplus 20 | /* restore state. Must correspond to the save in __decc_include_prologue.h */ 21 | # pragma names restore 22 | #endif 23 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/__DECC_INCLUDE_PROLOGUE.H: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2016-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | /* 11 | * This file is only used by HP C/C++ on VMS, and is included automatically 12 | * after each header file from this directory 13 | */ 14 | 15 | /* 16 | * The C++ compiler doesn't understand these pragmas, even though it 17 | * understands the corresponding command line qualifier. 18 | */ 19 | #ifndef __cplusplus 20 | /* save state */ 21 | # pragma names save 22 | /* have the compiler shorten symbols larger than 31 chars to 23 chars 23 | * followed by a 8 hex char CRC 24 | */ 25 | # pragma names as_is,shortened 26 | #endif 27 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/asn1_mac.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #error "This file is obsolete; please update your software." 11 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/async.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #include 11 | 12 | #ifndef HEADER_ASYNC_H 13 | # define HEADER_ASYNC_H 14 | 15 | #if defined(_WIN32) 16 | # if defined(BASETYPES) || defined(_WINDEF_H) 17 | /* application has to include to use this */ 18 | #define OSSL_ASYNC_FD HANDLE 19 | #define OSSL_BAD_ASYNC_FD INVALID_HANDLE_VALUE 20 | # endif 21 | #else 22 | #define OSSL_ASYNC_FD int 23 | #define OSSL_BAD_ASYNC_FD -1 24 | #endif 25 | # include 26 | 27 | 28 | # ifdef __cplusplus 29 | extern "C" { 30 | # endif 31 | 32 | typedef struct async_job_st ASYNC_JOB; 33 | typedef struct async_wait_ctx_st ASYNC_WAIT_CTX; 34 | 35 | #define ASYNC_ERR 0 36 | #define ASYNC_NO_JOBS 1 37 | #define ASYNC_PAUSE 2 38 | #define ASYNC_FINISH 3 39 | 40 | int ASYNC_init_thread(size_t max_size, size_t init_size); 41 | void ASYNC_cleanup_thread(void); 42 | 43 | #ifdef OSSL_ASYNC_FD 44 | ASYNC_WAIT_CTX *ASYNC_WAIT_CTX_new(void); 45 | void ASYNC_WAIT_CTX_free(ASYNC_WAIT_CTX *ctx); 46 | int ASYNC_WAIT_CTX_set_wait_fd(ASYNC_WAIT_CTX *ctx, const void *key, 47 | OSSL_ASYNC_FD fd, 48 | void *custom_data, 49 | void (*cleanup)(ASYNC_WAIT_CTX *, const void *, 50 | OSSL_ASYNC_FD, void *)); 51 | int ASYNC_WAIT_CTX_get_fd(ASYNC_WAIT_CTX *ctx, const void *key, 52 | OSSL_ASYNC_FD *fd, void **custom_data); 53 | int ASYNC_WAIT_CTX_get_all_fds(ASYNC_WAIT_CTX *ctx, OSSL_ASYNC_FD *fd, 54 | size_t *numfds); 55 | int ASYNC_WAIT_CTX_get_changed_fds(ASYNC_WAIT_CTX *ctx, OSSL_ASYNC_FD *addfd, 56 | size_t *numaddfds, OSSL_ASYNC_FD *delfd, 57 | size_t *numdelfds); 58 | int ASYNC_WAIT_CTX_clear_fd(ASYNC_WAIT_CTX *ctx, const void *key); 59 | #endif 60 | 61 | int ASYNC_is_capable(void); 62 | 63 | int ASYNC_start_job(ASYNC_JOB **job, ASYNC_WAIT_CTX *ctx, int *ret, 64 | int (*func)(void *), void *args, size_t size); 65 | int ASYNC_pause_job(void); 66 | 67 | ASYNC_JOB *ASYNC_get_current_job(void); 68 | ASYNC_WAIT_CTX *ASYNC_get_wait_ctx(ASYNC_JOB *job); 69 | void ASYNC_block_pause(void); 70 | void ASYNC_unblock_pause(void); 71 | 72 | 73 | # ifdef __cplusplus 74 | } 75 | # endif 76 | #endif 77 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/asyncerr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the OpenSSL license (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef HEADER_ASYNCERR_H 12 | # define HEADER_ASYNCERR_H 13 | 14 | # ifndef HEADER_SYMHACKS_H 15 | # include 16 | # endif 17 | 18 | # ifdef __cplusplus 19 | extern "C" 20 | # endif 21 | int ERR_load_ASYNC_strings(void); 22 | 23 | /* 24 | * ASYNC function codes. 25 | */ 26 | # define ASYNC_F_ASYNC_CTX_NEW 100 27 | # define ASYNC_F_ASYNC_INIT_THREAD 101 28 | # define ASYNC_F_ASYNC_JOB_NEW 102 29 | # define ASYNC_F_ASYNC_PAUSE_JOB 103 30 | # define ASYNC_F_ASYNC_START_FUNC 104 31 | # define ASYNC_F_ASYNC_START_JOB 105 32 | # define ASYNC_F_ASYNC_WAIT_CTX_SET_WAIT_FD 106 33 | 34 | /* 35 | * ASYNC reason codes. 36 | */ 37 | # define ASYNC_R_FAILED_TO_SET_POOL 101 38 | # define ASYNC_R_FAILED_TO_SWAP_CONTEXT 102 39 | # define ASYNC_R_INIT_FAILED 105 40 | # define ASYNC_R_INVALID_POOL_SIZE 103 41 | 42 | #endif 43 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/blowfish.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_BLOWFISH_H 11 | # define HEADER_BLOWFISH_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_BF 16 | # include 17 | # ifdef __cplusplus 18 | extern "C" { 19 | # endif 20 | 21 | # define BF_ENCRYPT 1 22 | # define BF_DECRYPT 0 23 | 24 | /*- 25 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 26 | * ! BF_LONG has to be at least 32 bits wide. ! 27 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 28 | */ 29 | # define BF_LONG unsigned int 30 | 31 | # define BF_ROUNDS 16 32 | # define BF_BLOCK 8 33 | 34 | typedef struct bf_key_st { 35 | BF_LONG P[BF_ROUNDS + 2]; 36 | BF_LONG S[4 * 256]; 37 | } BF_KEY; 38 | 39 | void BF_set_key(BF_KEY *key, int len, const unsigned char *data); 40 | 41 | void BF_encrypt(BF_LONG *data, const BF_KEY *key); 42 | void BF_decrypt(BF_LONG *data, const BF_KEY *key); 43 | 44 | void BF_ecb_encrypt(const unsigned char *in, unsigned char *out, 45 | const BF_KEY *key, int enc); 46 | void BF_cbc_encrypt(const unsigned char *in, unsigned char *out, long length, 47 | const BF_KEY *schedule, unsigned char *ivec, int enc); 48 | void BF_cfb64_encrypt(const unsigned char *in, unsigned char *out, 49 | long length, const BF_KEY *schedule, 50 | unsigned char *ivec, int *num, int enc); 51 | void BF_ofb64_encrypt(const unsigned char *in, unsigned char *out, 52 | long length, const BF_KEY *schedule, 53 | unsigned char *ivec, int *num); 54 | const char *BF_options(void); 55 | 56 | # ifdef __cplusplus 57 | } 58 | # endif 59 | # endif 60 | 61 | #endif 62 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_BUFFER_H 11 | # define HEADER_BUFFER_H 12 | 13 | # include 14 | # ifndef HEADER_CRYPTO_H 15 | # include 16 | # endif 17 | # include 18 | 19 | 20 | #ifdef __cplusplus 21 | extern "C" { 22 | #endif 23 | 24 | # include 25 | # include 26 | 27 | /* 28 | * These names are outdated as of OpenSSL 1.1; a future release 29 | * will move them to be deprecated. 30 | */ 31 | # define BUF_strdup(s) OPENSSL_strdup(s) 32 | # define BUF_strndup(s, size) OPENSSL_strndup(s, size) 33 | # define BUF_memdup(data, size) OPENSSL_memdup(data, size) 34 | # define BUF_strlcpy(dst, src, size) OPENSSL_strlcpy(dst, src, size) 35 | # define BUF_strlcat(dst, src, size) OPENSSL_strlcat(dst, src, size) 36 | # define BUF_strnlen(str, maxlen) OPENSSL_strnlen(str, maxlen) 37 | 38 | struct buf_mem_st { 39 | size_t length; /* current number of bytes */ 40 | char *data; 41 | size_t max; /* size of buffer */ 42 | unsigned long flags; 43 | }; 44 | 45 | # define BUF_MEM_FLAG_SECURE 0x01 46 | 47 | BUF_MEM *BUF_MEM_new(void); 48 | BUF_MEM *BUF_MEM_new_ex(unsigned long flags); 49 | void BUF_MEM_free(BUF_MEM *a); 50 | size_t BUF_MEM_grow(BUF_MEM *str, size_t len); 51 | size_t BUF_MEM_grow_clean(BUF_MEM *str, size_t len); 52 | void BUF_reverse(unsigned char *out, const unsigned char *in, size_t siz); 53 | 54 | 55 | # ifdef __cplusplus 56 | } 57 | # endif 58 | #endif 59 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/buffererr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the OpenSSL license (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef HEADER_BUFERR_H 12 | # define HEADER_BUFERR_H 13 | 14 | # ifndef HEADER_SYMHACKS_H 15 | # include 16 | # endif 17 | 18 | # ifdef __cplusplus 19 | extern "C" 20 | # endif 21 | int ERR_load_BUF_strings(void); 22 | 23 | /* 24 | * BUF function codes. 25 | */ 26 | # define BUF_F_BUF_MEM_GROW 100 27 | # define BUF_F_BUF_MEM_GROW_CLEAN 105 28 | # define BUF_F_BUF_MEM_NEW 101 29 | 30 | /* 31 | * BUF reason codes. 32 | */ 33 | 34 | #endif 35 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/cast.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_CAST_H 11 | # define HEADER_CAST_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_CAST 16 | # ifdef __cplusplus 17 | extern "C" { 18 | # endif 19 | 20 | # define CAST_ENCRYPT 1 21 | # define CAST_DECRYPT 0 22 | 23 | # define CAST_LONG unsigned int 24 | 25 | # define CAST_BLOCK 8 26 | # define CAST_KEY_LENGTH 16 27 | 28 | typedef struct cast_key_st { 29 | CAST_LONG data[32]; 30 | int short_key; /* Use reduced rounds for short key */ 31 | } CAST_KEY; 32 | 33 | void CAST_set_key(CAST_KEY *key, int len, const unsigned char *data); 34 | void CAST_ecb_encrypt(const unsigned char *in, unsigned char *out, 35 | const CAST_KEY *key, int enc); 36 | void CAST_encrypt(CAST_LONG *data, const CAST_KEY *key); 37 | void CAST_decrypt(CAST_LONG *data, const CAST_KEY *key); 38 | void CAST_cbc_encrypt(const unsigned char *in, unsigned char *out, 39 | long length, const CAST_KEY *ks, unsigned char *iv, 40 | int enc); 41 | void CAST_cfb64_encrypt(const unsigned char *in, unsigned char *out, 42 | long length, const CAST_KEY *schedule, 43 | unsigned char *ivec, int *num, int enc); 44 | void CAST_ofb64_encrypt(const unsigned char *in, unsigned char *out, 45 | long length, const CAST_KEY *schedule, 46 | unsigned char *ivec, int *num); 47 | 48 | # ifdef __cplusplus 49 | } 50 | # endif 51 | # endif 52 | 53 | #endif 54 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/cmac.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_CMAC_H 11 | # define HEADER_CMAC_H 12 | 13 | # ifndef OPENSSL_NO_CMAC 14 | 15 | #ifdef __cplusplus 16 | extern "C" { 17 | #endif 18 | 19 | # include 20 | 21 | /* Opaque */ 22 | typedef struct CMAC_CTX_st CMAC_CTX; 23 | 24 | CMAC_CTX *CMAC_CTX_new(void); 25 | void CMAC_CTX_cleanup(CMAC_CTX *ctx); 26 | void CMAC_CTX_free(CMAC_CTX *ctx); 27 | EVP_CIPHER_CTX *CMAC_CTX_get0_cipher_ctx(CMAC_CTX *ctx); 28 | int CMAC_CTX_copy(CMAC_CTX *out, const CMAC_CTX *in); 29 | 30 | int CMAC_Init(CMAC_CTX *ctx, const void *key, size_t keylen, 31 | const EVP_CIPHER *cipher, ENGINE *impl); 32 | int CMAC_Update(CMAC_CTX *ctx, const void *data, size_t dlen); 33 | int CMAC_Final(CMAC_CTX *ctx, unsigned char *out, size_t *poutlen); 34 | int CMAC_resume(CMAC_CTX *ctx); 35 | 36 | #ifdef __cplusplus 37 | } 38 | #endif 39 | 40 | # endif 41 | #endif 42 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/comp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_COMP_H 11 | # define HEADER_COMP_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_COMP 16 | # include 17 | # include 18 | # ifdef __cplusplus 19 | extern "C" { 20 | # endif 21 | 22 | 23 | 24 | COMP_CTX *COMP_CTX_new(COMP_METHOD *meth); 25 | const COMP_METHOD *COMP_CTX_get_method(const COMP_CTX *ctx); 26 | int COMP_CTX_get_type(const COMP_CTX* comp); 27 | int COMP_get_type(const COMP_METHOD *meth); 28 | const char *COMP_get_name(const COMP_METHOD *meth); 29 | void COMP_CTX_free(COMP_CTX *ctx); 30 | 31 | int COMP_compress_block(COMP_CTX *ctx, unsigned char *out, int olen, 32 | unsigned char *in, int ilen); 33 | int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen, 34 | unsigned char *in, int ilen); 35 | 36 | COMP_METHOD *COMP_zlib(void); 37 | 38 | #if OPENSSL_API_COMPAT < 0x10100000L 39 | #define COMP_zlib_cleanup() while(0) continue 40 | #endif 41 | 42 | # ifdef HEADER_BIO_H 43 | # ifdef ZLIB 44 | const BIO_METHOD *BIO_f_zlib(void); 45 | # endif 46 | # endif 47 | 48 | 49 | # ifdef __cplusplus 50 | } 51 | # endif 52 | # endif 53 | #endif 54 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/comperr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the OpenSSL license (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef HEADER_COMPERR_H 12 | # define HEADER_COMPERR_H 13 | 14 | # ifndef HEADER_SYMHACKS_H 15 | # include 16 | # endif 17 | 18 | # include 19 | 20 | # ifndef OPENSSL_NO_COMP 21 | 22 | # ifdef __cplusplus 23 | extern "C" 24 | # endif 25 | int ERR_load_COMP_strings(void); 26 | 27 | /* 28 | * COMP function codes. 29 | */ 30 | # define COMP_F_BIO_ZLIB_FLUSH 99 31 | # define COMP_F_BIO_ZLIB_NEW 100 32 | # define COMP_F_BIO_ZLIB_READ 101 33 | # define COMP_F_BIO_ZLIB_WRITE 102 34 | # define COMP_F_COMP_CTX_NEW 103 35 | 36 | /* 37 | * COMP reason codes. 38 | */ 39 | # define COMP_R_ZLIB_DEFLATE_ERROR 99 40 | # define COMP_R_ZLIB_INFLATE_ERROR 100 41 | # define COMP_R_ZLIB_NOT_SUPPORTED 101 42 | 43 | # endif 44 | #endif 45 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/conf_api.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_CONF_API_H 11 | # define HEADER_CONF_API_H 12 | 13 | # include 14 | # include 15 | 16 | #ifdef __cplusplus 17 | extern "C" { 18 | #endif 19 | 20 | /* Up until OpenSSL 0.9.5a, this was new_section */ 21 | CONF_VALUE *_CONF_new_section(CONF *conf, const char *section); 22 | /* Up until OpenSSL 0.9.5a, this was get_section */ 23 | CONF_VALUE *_CONF_get_section(const CONF *conf, const char *section); 24 | /* Up until OpenSSL 0.9.5a, this was CONF_get_section */ 25 | STACK_OF(CONF_VALUE) *_CONF_get_section_values(const CONF *conf, 26 | const char *section); 27 | 28 | int _CONF_add_string(CONF *conf, CONF_VALUE *section, CONF_VALUE *value); 29 | char *_CONF_get_string(const CONF *conf, const char *section, 30 | const char *name); 31 | long _CONF_get_number(const CONF *conf, const char *section, 32 | const char *name); 33 | 34 | int _CONF_new_data(CONF *conf); 35 | void _CONF_free_data(CONF *conf); 36 | 37 | #ifdef __cplusplus 38 | } 39 | #endif 40 | #endif 41 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/cryptoerr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the OpenSSL license (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef HEADER_CRYPTOERR_H 12 | # define HEADER_CRYPTOERR_H 13 | 14 | # ifndef HEADER_SYMHACKS_H 15 | # include 16 | # endif 17 | 18 | # ifdef __cplusplus 19 | extern "C" 20 | # endif 21 | int ERR_load_CRYPTO_strings(void); 22 | 23 | /* 24 | * CRYPTO function codes. 25 | */ 26 | # define CRYPTO_F_CMAC_CTX_NEW 120 27 | # define CRYPTO_F_CRYPTO_DUP_EX_DATA 110 28 | # define CRYPTO_F_CRYPTO_FREE_EX_DATA 111 29 | # define CRYPTO_F_CRYPTO_GET_EX_NEW_INDEX 100 30 | # define CRYPTO_F_CRYPTO_MEMDUP 115 31 | # define CRYPTO_F_CRYPTO_NEW_EX_DATA 112 32 | # define CRYPTO_F_CRYPTO_OCB128_COPY_CTX 121 33 | # define CRYPTO_F_CRYPTO_OCB128_INIT 122 34 | # define CRYPTO_F_CRYPTO_SET_EX_DATA 102 35 | # define CRYPTO_F_FIPS_MODE_SET 109 36 | # define CRYPTO_F_GET_AND_LOCK 113 37 | # define CRYPTO_F_OPENSSL_ATEXIT 114 38 | # define CRYPTO_F_OPENSSL_BUF2HEXSTR 117 39 | # define CRYPTO_F_OPENSSL_FOPEN 119 40 | # define CRYPTO_F_OPENSSL_HEXSTR2BUF 118 41 | # define CRYPTO_F_OPENSSL_INIT_CRYPTO 116 42 | # define CRYPTO_F_OPENSSL_LH_NEW 126 43 | # define CRYPTO_F_OPENSSL_SK_DEEP_COPY 127 44 | # define CRYPTO_F_OPENSSL_SK_DUP 128 45 | # define CRYPTO_F_PKEY_HMAC_INIT 123 46 | # define CRYPTO_F_PKEY_POLY1305_INIT 124 47 | # define CRYPTO_F_PKEY_SIPHASH_INIT 125 48 | # define CRYPTO_F_SK_RESERVE 129 49 | 50 | /* 51 | * CRYPTO reason codes. 52 | */ 53 | # define CRYPTO_R_FIPS_MODE_NOT_SUPPORTED 101 54 | # define CRYPTO_R_ILLEGAL_HEX_DIGIT 102 55 | # define CRYPTO_R_ODD_NUMBER_OF_DIGITS 103 56 | 57 | #endif 58 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/dtls1.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2005-2018 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_DTLS1_H 11 | # define HEADER_DTLS1_H 12 | 13 | #ifdef __cplusplus 14 | extern "C" { 15 | #endif 16 | 17 | # define DTLS1_VERSION 0xFEFF 18 | # define DTLS1_2_VERSION 0xFEFD 19 | # define DTLS_MIN_VERSION DTLS1_VERSION 20 | # define DTLS_MAX_VERSION DTLS1_2_VERSION 21 | # define DTLS1_VERSION_MAJOR 0xFE 22 | 23 | # define DTLS1_BAD_VER 0x0100 24 | 25 | /* Special value for method supporting multiple versions */ 26 | # define DTLS_ANY_VERSION 0x1FFFF 27 | 28 | /* lengths of messages */ 29 | /* 30 | * Actually the max cookie length in DTLS is 255. But we can't change this now 31 | * due to compatibility concerns. 32 | */ 33 | # define DTLS1_COOKIE_LENGTH 256 34 | 35 | # define DTLS1_RT_HEADER_LENGTH 13 36 | 37 | # define DTLS1_HM_HEADER_LENGTH 12 38 | 39 | # define DTLS1_HM_BAD_FRAGMENT -2 40 | # define DTLS1_HM_FRAGMENT_RETRY -3 41 | 42 | # define DTLS1_CCS_HEADER_LENGTH 1 43 | 44 | # define DTLS1_AL_HEADER_LENGTH 2 45 | 46 | /* Timeout multipliers */ 47 | # define DTLS1_TMO_READ_COUNT 2 48 | # define DTLS1_TMO_WRITE_COUNT 2 49 | 50 | # define DTLS1_TMO_ALERT_COUNT 12 51 | 52 | #ifdef __cplusplus 53 | } 54 | #endif 55 | #endif 56 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/ebcdic.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_EBCDIC_H 11 | # define HEADER_EBCDIC_H 12 | 13 | # include 14 | 15 | #ifdef __cplusplus 16 | extern "C" { 17 | #endif 18 | 19 | /* Avoid name clashes with other applications */ 20 | # define os_toascii _openssl_os_toascii 21 | # define os_toebcdic _openssl_os_toebcdic 22 | # define ebcdic2ascii _openssl_ebcdic2ascii 23 | # define ascii2ebcdic _openssl_ascii2ebcdic 24 | 25 | extern const unsigned char os_toascii[256]; 26 | extern const unsigned char os_toebcdic[256]; 27 | void *ebcdic2ascii(void *dest, const void *srce, size_t count); 28 | void *ascii2ebcdic(void *dest, const void *srce, size_t count); 29 | 30 | #ifdef __cplusplus 31 | } 32 | #endif 33 | #endif 34 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/ecdh.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #include 11 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/ecdsa.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #include 11 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/hmac.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_HMAC_H 11 | # define HEADER_HMAC_H 12 | 13 | # include 14 | 15 | # include 16 | 17 | # if OPENSSL_API_COMPAT < 0x10200000L 18 | # define HMAC_MAX_MD_CBLOCK 128 /* Deprecated */ 19 | # endif 20 | 21 | #ifdef __cplusplus 22 | extern "C" { 23 | #endif 24 | 25 | size_t HMAC_size(const HMAC_CTX *e); 26 | HMAC_CTX *HMAC_CTX_new(void); 27 | int HMAC_CTX_reset(HMAC_CTX *ctx); 28 | void HMAC_CTX_free(HMAC_CTX *ctx); 29 | 30 | DEPRECATEDIN_1_1_0(__owur int HMAC_Init(HMAC_CTX *ctx, const void *key, int len, 31 | const EVP_MD *md)) 32 | 33 | /*__owur*/ int HMAC_Init_ex(HMAC_CTX *ctx, const void *key, int len, 34 | const EVP_MD *md, ENGINE *impl); 35 | /*__owur*/ int HMAC_Update(HMAC_CTX *ctx, const unsigned char *data, 36 | size_t len); 37 | /*__owur*/ int HMAC_Final(HMAC_CTX *ctx, unsigned char *md, 38 | unsigned int *len); 39 | unsigned char *HMAC(const EVP_MD *evp_md, const void *key, int key_len, 40 | const unsigned char *d, size_t n, unsigned char *md, 41 | unsigned int *md_len); 42 | __owur int HMAC_CTX_copy(HMAC_CTX *dctx, HMAC_CTX *sctx); 43 | 44 | void HMAC_CTX_set_flags(HMAC_CTX *ctx, unsigned long flags); 45 | const EVP_MD *HMAC_CTX_get_md(const HMAC_CTX *ctx); 46 | 47 | #ifdef __cplusplus 48 | } 49 | #endif 50 | 51 | #endif 52 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/idea.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_IDEA_H 11 | # define HEADER_IDEA_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_IDEA 16 | # ifdef __cplusplus 17 | extern "C" { 18 | # endif 19 | 20 | typedef unsigned int IDEA_INT; 21 | 22 | # define IDEA_ENCRYPT 1 23 | # define IDEA_DECRYPT 0 24 | 25 | # define IDEA_BLOCK 8 26 | # define IDEA_KEY_LENGTH 16 27 | 28 | typedef struct idea_key_st { 29 | IDEA_INT data[9][6]; 30 | } IDEA_KEY_SCHEDULE; 31 | 32 | const char *IDEA_options(void); 33 | void IDEA_ecb_encrypt(const unsigned char *in, unsigned char *out, 34 | IDEA_KEY_SCHEDULE *ks); 35 | void IDEA_set_encrypt_key(const unsigned char *key, IDEA_KEY_SCHEDULE *ks); 36 | void IDEA_set_decrypt_key(IDEA_KEY_SCHEDULE *ek, IDEA_KEY_SCHEDULE *dk); 37 | void IDEA_cbc_encrypt(const unsigned char *in, unsigned char *out, 38 | long length, IDEA_KEY_SCHEDULE *ks, unsigned char *iv, 39 | int enc); 40 | void IDEA_cfb64_encrypt(const unsigned char *in, unsigned char *out, 41 | long length, IDEA_KEY_SCHEDULE *ks, unsigned char *iv, 42 | int *num, int enc); 43 | void IDEA_ofb64_encrypt(const unsigned char *in, unsigned char *out, 44 | long length, IDEA_KEY_SCHEDULE *ks, unsigned char *iv, 45 | int *num); 46 | void IDEA_encrypt(unsigned long *in, IDEA_KEY_SCHEDULE *ks); 47 | 48 | # if OPENSSL_API_COMPAT < 0x10100000L 49 | # define idea_options IDEA_options 50 | # define idea_ecb_encrypt IDEA_ecb_encrypt 51 | # define idea_set_encrypt_key IDEA_set_encrypt_key 52 | # define idea_set_decrypt_key IDEA_set_decrypt_key 53 | # define idea_cbc_encrypt IDEA_cbc_encrypt 54 | # define idea_cfb64_encrypt IDEA_cfb64_encrypt 55 | # define idea_ofb64_encrypt IDEA_ofb64_encrypt 56 | # define idea_encrypt IDEA_encrypt 57 | # endif 58 | 59 | # ifdef __cplusplus 60 | } 61 | # endif 62 | # endif 63 | 64 | #endif 65 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/kdferr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the OpenSSL license (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef HEADER_KDFERR_H 12 | # define HEADER_KDFERR_H 13 | 14 | # ifndef HEADER_SYMHACKS_H 15 | # include 16 | # endif 17 | 18 | # ifdef __cplusplus 19 | extern "C" 20 | # endif 21 | int ERR_load_KDF_strings(void); 22 | 23 | /* 24 | * KDF function codes. 25 | */ 26 | # define KDF_F_PKEY_HKDF_CTRL_STR 103 27 | # define KDF_F_PKEY_HKDF_DERIVE 102 28 | # define KDF_F_PKEY_HKDF_INIT 108 29 | # define KDF_F_PKEY_SCRYPT_CTRL_STR 104 30 | # define KDF_F_PKEY_SCRYPT_CTRL_UINT64 105 31 | # define KDF_F_PKEY_SCRYPT_DERIVE 109 32 | # define KDF_F_PKEY_SCRYPT_INIT 106 33 | # define KDF_F_PKEY_SCRYPT_SET_MEMBUF 107 34 | # define KDF_F_PKEY_TLS1_PRF_CTRL_STR 100 35 | # define KDF_F_PKEY_TLS1_PRF_DERIVE 101 36 | # define KDF_F_PKEY_TLS1_PRF_INIT 110 37 | # define KDF_F_TLS1_PRF_ALG 111 38 | 39 | /* 40 | * KDF reason codes. 41 | */ 42 | # define KDF_R_INVALID_DIGEST 100 43 | # define KDF_R_MISSING_ITERATION_COUNT 109 44 | # define KDF_R_MISSING_KEY 104 45 | # define KDF_R_MISSING_MESSAGE_DIGEST 105 46 | # define KDF_R_MISSING_PARAMETER 101 47 | # define KDF_R_MISSING_PASS 110 48 | # define KDF_R_MISSING_SALT 111 49 | # define KDF_R_MISSING_SECRET 107 50 | # define KDF_R_MISSING_SEED 106 51 | # define KDF_R_UNKNOWN_PARAMETER_TYPE 103 52 | # define KDF_R_VALUE_ERROR 108 53 | # define KDF_R_VALUE_MISSING 102 54 | 55 | #endif 56 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/md2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_MD2_H 11 | # define HEADER_MD2_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_MD2 16 | # include 17 | # ifdef __cplusplus 18 | extern "C" { 19 | # endif 20 | 21 | typedef unsigned char MD2_INT; 22 | 23 | # define MD2_DIGEST_LENGTH 16 24 | # define MD2_BLOCK 16 25 | 26 | typedef struct MD2state_st { 27 | unsigned int num; 28 | unsigned char data[MD2_BLOCK]; 29 | MD2_INT cksm[MD2_BLOCK]; 30 | MD2_INT state[MD2_BLOCK]; 31 | } MD2_CTX; 32 | 33 | const char *MD2_options(void); 34 | int MD2_Init(MD2_CTX *c); 35 | int MD2_Update(MD2_CTX *c, const unsigned char *data, size_t len); 36 | int MD2_Final(unsigned char *md, MD2_CTX *c); 37 | unsigned char *MD2(const unsigned char *d, size_t n, unsigned char *md); 38 | 39 | # ifdef __cplusplus 40 | } 41 | # endif 42 | # endif 43 | 44 | #endif 45 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/md4.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_MD4_H 11 | # define HEADER_MD4_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_MD4 16 | # include 17 | # include 18 | # ifdef __cplusplus 19 | extern "C" { 20 | # endif 21 | 22 | /*- 23 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 24 | * ! MD4_LONG has to be at least 32 bits wide. ! 25 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 26 | */ 27 | # define MD4_LONG unsigned int 28 | 29 | # define MD4_CBLOCK 64 30 | # define MD4_LBLOCK (MD4_CBLOCK/4) 31 | # define MD4_DIGEST_LENGTH 16 32 | 33 | typedef struct MD4state_st { 34 | MD4_LONG A, B, C, D; 35 | MD4_LONG Nl, Nh; 36 | MD4_LONG data[MD4_LBLOCK]; 37 | unsigned int num; 38 | } MD4_CTX; 39 | 40 | int MD4_Init(MD4_CTX *c); 41 | int MD4_Update(MD4_CTX *c, const void *data, size_t len); 42 | int MD4_Final(unsigned char *md, MD4_CTX *c); 43 | unsigned char *MD4(const unsigned char *d, size_t n, unsigned char *md); 44 | void MD4_Transform(MD4_CTX *c, const unsigned char *b); 45 | 46 | # ifdef __cplusplus 47 | } 48 | # endif 49 | # endif 50 | 51 | #endif 52 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/md5.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_MD5_H 11 | # define HEADER_MD5_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_MD5 16 | # include 17 | # include 18 | # ifdef __cplusplus 19 | extern "C" { 20 | # endif 21 | 22 | /* 23 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 24 | * ! MD5_LONG has to be at least 32 bits wide. ! 25 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 26 | */ 27 | # define MD5_LONG unsigned int 28 | 29 | # define MD5_CBLOCK 64 30 | # define MD5_LBLOCK (MD5_CBLOCK/4) 31 | # define MD5_DIGEST_LENGTH 16 32 | 33 | typedef struct MD5state_st { 34 | MD5_LONG A, B, C, D; 35 | MD5_LONG Nl, Nh; 36 | MD5_LONG data[MD5_LBLOCK]; 37 | unsigned int num; 38 | } MD5_CTX; 39 | 40 | int MD5_Init(MD5_CTX *c); 41 | int MD5_Update(MD5_CTX *c, const void *data, size_t len); 42 | int MD5_Final(unsigned char *md, MD5_CTX *c); 43 | unsigned char *MD5(const unsigned char *d, size_t n, unsigned char *md); 44 | void MD5_Transform(MD5_CTX *c, const unsigned char *b); 45 | # ifdef __cplusplus 46 | } 47 | # endif 48 | # endif 49 | 50 | #endif 51 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/mdc2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_MDC2_H 11 | # define HEADER_MDC2_H 12 | 13 | # include 14 | 15 | #ifndef OPENSSL_NO_MDC2 16 | # include 17 | # include 18 | # ifdef __cplusplus 19 | extern "C" { 20 | # endif 21 | 22 | # define MDC2_BLOCK 8 23 | # define MDC2_DIGEST_LENGTH 16 24 | 25 | typedef struct mdc2_ctx_st { 26 | unsigned int num; 27 | unsigned char data[MDC2_BLOCK]; 28 | DES_cblock h, hh; 29 | int pad_type; /* either 1 or 2, default 1 */ 30 | } MDC2_CTX; 31 | 32 | int MDC2_Init(MDC2_CTX *c); 33 | int MDC2_Update(MDC2_CTX *c, const unsigned char *data, size_t len); 34 | int MDC2_Final(unsigned char *md, MDC2_CTX *c); 35 | unsigned char *MDC2(const unsigned char *d, size_t n, unsigned char *md); 36 | 37 | # ifdef __cplusplus 38 | } 39 | # endif 40 | # endif 41 | 42 | #endif 43 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/objectserr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the OpenSSL license (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef HEADER_OBJERR_H 12 | # define HEADER_OBJERR_H 13 | 14 | # ifndef HEADER_SYMHACKS_H 15 | # include 16 | # endif 17 | 18 | # ifdef __cplusplus 19 | extern "C" 20 | # endif 21 | int ERR_load_OBJ_strings(void); 22 | 23 | /* 24 | * OBJ function codes. 25 | */ 26 | # define OBJ_F_OBJ_ADD_OBJECT 105 27 | # define OBJ_F_OBJ_ADD_SIGID 107 28 | # define OBJ_F_OBJ_CREATE 100 29 | # define OBJ_F_OBJ_DUP 101 30 | # define OBJ_F_OBJ_NAME_NEW_INDEX 106 31 | # define OBJ_F_OBJ_NID2LN 102 32 | # define OBJ_F_OBJ_NID2OBJ 103 33 | # define OBJ_F_OBJ_NID2SN 104 34 | # define OBJ_F_OBJ_TXT2OBJ 108 35 | 36 | /* 37 | * OBJ reason codes. 38 | */ 39 | # define OBJ_R_OID_EXISTS 102 40 | # define OBJ_R_UNKNOWN_NID 101 41 | 42 | #endif 43 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/pem2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1999-2018 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_PEM2_H 11 | # define HEADER_PEM2_H 12 | # include 13 | #endif 14 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/rand.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_RAND_H 11 | # define HEADER_RAND_H 12 | 13 | # include 14 | # include 15 | # include 16 | # include 17 | 18 | #ifdef __cplusplus 19 | extern "C" { 20 | #endif 21 | 22 | struct rand_meth_st { 23 | int (*seed) (const void *buf, int num); 24 | int (*bytes) (unsigned char *buf, int num); 25 | void (*cleanup) (void); 26 | int (*add) (const void *buf, int num, double randomness); 27 | int (*pseudorand) (unsigned char *buf, int num); 28 | int (*status) (void); 29 | }; 30 | 31 | int RAND_set_rand_method(const RAND_METHOD *meth); 32 | const RAND_METHOD *RAND_get_rand_method(void); 33 | # ifndef OPENSSL_NO_ENGINE 34 | int RAND_set_rand_engine(ENGINE *engine); 35 | # endif 36 | 37 | RAND_METHOD *RAND_OpenSSL(void); 38 | 39 | # if OPENSSL_API_COMPAT < 0x10100000L 40 | # define RAND_cleanup() while(0) continue 41 | # endif 42 | int RAND_bytes(unsigned char *buf, int num); 43 | int RAND_priv_bytes(unsigned char *buf, int num); 44 | DEPRECATEDIN_1_1_0(int RAND_pseudo_bytes(unsigned char *buf, int num)) 45 | 46 | void RAND_seed(const void *buf, int num); 47 | void RAND_keep_random_devices_open(int keep); 48 | 49 | # if defined(__ANDROID__) && defined(__NDK_FPABI__) 50 | __NDK_FPABI__ /* __attribute__((pcs("aapcs"))) on ARM */ 51 | # endif 52 | void RAND_add(const void *buf, int num, double randomness); 53 | int RAND_load_file(const char *file, long max_bytes); 54 | int RAND_write_file(const char *file); 55 | const char *RAND_file_name(char *file, size_t num); 56 | int RAND_status(void); 57 | 58 | # ifndef OPENSSL_NO_EGD 59 | int RAND_query_egd_bytes(const char *path, unsigned char *buf, int bytes); 60 | int RAND_egd(const char *path); 61 | int RAND_egd_bytes(const char *path, int bytes); 62 | # endif 63 | 64 | int RAND_poll(void); 65 | 66 | # if defined(_WIN32) && (defined(BASETYPES) || defined(_WINDEF_H)) 67 | /* application has to include in order to use these */ 68 | DEPRECATEDIN_1_1_0(void RAND_screen(void)) 69 | DEPRECATEDIN_1_1_0(int RAND_event(UINT, WPARAM, LPARAM)) 70 | # endif 71 | 72 | 73 | #ifdef __cplusplus 74 | } 75 | #endif 76 | 77 | #endif 78 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/rc2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_RC2_H 11 | # define HEADER_RC2_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_RC2 16 | # ifdef __cplusplus 17 | extern "C" { 18 | # endif 19 | 20 | typedef unsigned int RC2_INT; 21 | 22 | # define RC2_ENCRYPT 1 23 | # define RC2_DECRYPT 0 24 | 25 | # define RC2_BLOCK 8 26 | # define RC2_KEY_LENGTH 16 27 | 28 | typedef struct rc2_key_st { 29 | RC2_INT data[64]; 30 | } RC2_KEY; 31 | 32 | void RC2_set_key(RC2_KEY *key, int len, const unsigned char *data, int bits); 33 | void RC2_ecb_encrypt(const unsigned char *in, unsigned char *out, 34 | RC2_KEY *key, int enc); 35 | void RC2_encrypt(unsigned long *data, RC2_KEY *key); 36 | void RC2_decrypt(unsigned long *data, RC2_KEY *key); 37 | void RC2_cbc_encrypt(const unsigned char *in, unsigned char *out, long length, 38 | RC2_KEY *ks, unsigned char *iv, int enc); 39 | void RC2_cfb64_encrypt(const unsigned char *in, unsigned char *out, 40 | long length, RC2_KEY *schedule, unsigned char *ivec, 41 | int *num, int enc); 42 | void RC2_ofb64_encrypt(const unsigned char *in, unsigned char *out, 43 | long length, RC2_KEY *schedule, unsigned char *ivec, 44 | int *num); 45 | 46 | # ifdef __cplusplus 47 | } 48 | # endif 49 | # endif 50 | 51 | #endif 52 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/rc4.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_RC4_H 11 | # define HEADER_RC4_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_RC4 16 | # include 17 | #ifdef __cplusplus 18 | extern "C" { 19 | #endif 20 | 21 | typedef struct rc4_key_st { 22 | RC4_INT x, y; 23 | RC4_INT data[256]; 24 | } RC4_KEY; 25 | 26 | const char *RC4_options(void); 27 | void RC4_set_key(RC4_KEY *key, int len, const unsigned char *data); 28 | void RC4(RC4_KEY *key, size_t len, const unsigned char *indata, 29 | unsigned char *outdata); 30 | 31 | # ifdef __cplusplus 32 | } 33 | # endif 34 | # endif 35 | 36 | #endif 37 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/rc5.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_RC5_H 11 | # define HEADER_RC5_H 12 | 13 | # include 14 | 15 | # ifndef OPENSSL_NO_RC5 16 | # ifdef __cplusplus 17 | extern "C" { 18 | # endif 19 | 20 | # define RC5_ENCRYPT 1 21 | # define RC5_DECRYPT 0 22 | 23 | # define RC5_32_INT unsigned int 24 | 25 | # define RC5_32_BLOCK 8 26 | # define RC5_32_KEY_LENGTH 16/* This is a default, max is 255 */ 27 | 28 | /* 29 | * This are the only values supported. Tweak the code if you want more The 30 | * most supported modes will be RC5-32/12/16 RC5-32/16/8 31 | */ 32 | # define RC5_8_ROUNDS 8 33 | # define RC5_12_ROUNDS 12 34 | # define RC5_16_ROUNDS 16 35 | 36 | typedef struct rc5_key_st { 37 | /* Number of rounds */ 38 | int rounds; 39 | RC5_32_INT data[2 * (RC5_16_ROUNDS + 1)]; 40 | } RC5_32_KEY; 41 | 42 | void RC5_32_set_key(RC5_32_KEY *key, int len, const unsigned char *data, 43 | int rounds); 44 | void RC5_32_ecb_encrypt(const unsigned char *in, unsigned char *out, 45 | RC5_32_KEY *key, int enc); 46 | void RC5_32_encrypt(unsigned long *data, RC5_32_KEY *key); 47 | void RC5_32_decrypt(unsigned long *data, RC5_32_KEY *key); 48 | void RC5_32_cbc_encrypt(const unsigned char *in, unsigned char *out, 49 | long length, RC5_32_KEY *ks, unsigned char *iv, 50 | int enc); 51 | void RC5_32_cfb64_encrypt(const unsigned char *in, unsigned char *out, 52 | long length, RC5_32_KEY *schedule, 53 | unsigned char *ivec, int *num, int enc); 54 | void RC5_32_ofb64_encrypt(const unsigned char *in, unsigned char *out, 55 | long length, RC5_32_KEY *schedule, 56 | unsigned char *ivec, int *num); 57 | 58 | # ifdef __cplusplus 59 | } 60 | # endif 61 | # endif 62 | 63 | #endif 64 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/ripemd.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_RIPEMD_H 11 | # define HEADER_RIPEMD_H 12 | 13 | # include 14 | 15 | #ifndef OPENSSL_NO_RMD160 16 | # include 17 | # include 18 | # ifdef __cplusplus 19 | extern "C" { 20 | # endif 21 | 22 | # define RIPEMD160_LONG unsigned int 23 | 24 | # define RIPEMD160_CBLOCK 64 25 | # define RIPEMD160_LBLOCK (RIPEMD160_CBLOCK/4) 26 | # define RIPEMD160_DIGEST_LENGTH 20 27 | 28 | typedef struct RIPEMD160state_st { 29 | RIPEMD160_LONG A, B, C, D, E; 30 | RIPEMD160_LONG Nl, Nh; 31 | RIPEMD160_LONG data[RIPEMD160_LBLOCK]; 32 | unsigned int num; 33 | } RIPEMD160_CTX; 34 | 35 | int RIPEMD160_Init(RIPEMD160_CTX *c); 36 | int RIPEMD160_Update(RIPEMD160_CTX *c, const void *data, size_t len); 37 | int RIPEMD160_Final(unsigned char *md, RIPEMD160_CTX *c); 38 | unsigned char *RIPEMD160(const unsigned char *d, size_t n, unsigned char *md); 39 | void RIPEMD160_Transform(RIPEMD160_CTX *c, const unsigned char *b); 40 | 41 | # ifdef __cplusplus 42 | } 43 | # endif 44 | # endif 45 | 46 | 47 | #endif 48 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/srtp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | /* 11 | * DTLS code by Eric Rescorla 12 | * 13 | * Copyright (C) 2006, Network Resonance, Inc. Copyright (C) 2011, RTFM, Inc. 14 | */ 15 | 16 | #ifndef HEADER_D1_SRTP_H 17 | # define HEADER_D1_SRTP_H 18 | 19 | # include 20 | 21 | #ifdef __cplusplus 22 | extern "C" { 23 | #endif 24 | 25 | # define SRTP_AES128_CM_SHA1_80 0x0001 26 | # define SRTP_AES128_CM_SHA1_32 0x0002 27 | # define SRTP_AES128_F8_SHA1_80 0x0003 28 | # define SRTP_AES128_F8_SHA1_32 0x0004 29 | # define SRTP_NULL_SHA1_80 0x0005 30 | # define SRTP_NULL_SHA1_32 0x0006 31 | 32 | /* AEAD SRTP protection profiles from RFC 7714 */ 33 | # define SRTP_AEAD_AES_128_GCM 0x0007 34 | # define SRTP_AEAD_AES_256_GCM 0x0008 35 | 36 | # ifndef OPENSSL_NO_SRTP 37 | 38 | __owur int SSL_CTX_set_tlsext_use_srtp(SSL_CTX *ctx, const char *profiles); 39 | __owur int SSL_set_tlsext_use_srtp(SSL *ssl, const char *profiles); 40 | 41 | __owur STACK_OF(SRTP_PROTECTION_PROFILE) *SSL_get_srtp_profiles(SSL *ssl); 42 | __owur SRTP_PROTECTION_PROFILE *SSL_get_selected_srtp_profile(SSL *s); 43 | 44 | # endif 45 | 46 | #ifdef __cplusplus 47 | } 48 | #endif 49 | 50 | #endif 51 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/ssl2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_SSL2_H 11 | # define HEADER_SSL2_H 12 | 13 | #ifdef __cplusplus 14 | extern "C" { 15 | #endif 16 | 17 | # define SSL2_VERSION 0x0002 18 | 19 | # define SSL2_MT_CLIENT_HELLO 1 20 | 21 | #ifdef __cplusplus 22 | } 23 | #endif 24 | #endif 25 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/symhacks.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1999-2018 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_SYMHACKS_H 11 | # define HEADER_SYMHACKS_H 12 | 13 | # include 14 | 15 | /* Case insensitive linking causes problems.... */ 16 | # if defined(OPENSSL_SYS_VMS) 17 | # undef ERR_load_CRYPTO_strings 18 | # define ERR_load_CRYPTO_strings ERR_load_CRYPTOlib_strings 19 | # undef OCSP_crlID_new 20 | # define OCSP_crlID_new OCSP_crlID2_new 21 | 22 | # undef d2i_ECPARAMETERS 23 | # define d2i_ECPARAMETERS d2i_UC_ECPARAMETERS 24 | # undef i2d_ECPARAMETERS 25 | # define i2d_ECPARAMETERS i2d_UC_ECPARAMETERS 26 | # undef d2i_ECPKPARAMETERS 27 | # define d2i_ECPKPARAMETERS d2i_UC_ECPKPARAMETERS 28 | # undef i2d_ECPKPARAMETERS 29 | # define i2d_ECPKPARAMETERS i2d_UC_ECPKPARAMETERS 30 | 31 | /* This one clashes with CMS_data_create */ 32 | # undef cms_Data_create 33 | # define cms_Data_create priv_cms_Data_create 34 | 35 | # endif 36 | 37 | #endif /* ! defined HEADER_VMS_IDHACKS_H */ 38 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/txt_db.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_TXT_DB_H 11 | # define HEADER_TXT_DB_H 12 | 13 | # include 14 | # include 15 | # include 16 | # include 17 | 18 | # define DB_ERROR_OK 0 19 | # define DB_ERROR_MALLOC 1 20 | # define DB_ERROR_INDEX_CLASH 2 21 | # define DB_ERROR_INDEX_OUT_OF_RANGE 3 22 | # define DB_ERROR_NO_INDEX 4 23 | # define DB_ERROR_INSERT_INDEX_CLASH 5 24 | # define DB_ERROR_WRONG_NUM_FIELDS 6 25 | 26 | #ifdef __cplusplus 27 | extern "C" { 28 | #endif 29 | 30 | typedef OPENSSL_STRING *OPENSSL_PSTRING; 31 | DEFINE_SPECIAL_STACK_OF(OPENSSL_PSTRING, OPENSSL_STRING) 32 | 33 | typedef struct txt_db_st { 34 | int num_fields; 35 | STACK_OF(OPENSSL_PSTRING) *data; 36 | LHASH_OF(OPENSSL_STRING) **index; 37 | int (**qual) (OPENSSL_STRING *); 38 | long error; 39 | long arg1; 40 | long arg2; 41 | OPENSSL_STRING *arg_row; 42 | } TXT_DB; 43 | 44 | TXT_DB *TXT_DB_read(BIO *in, int num); 45 | long TXT_DB_write(BIO *out, TXT_DB *db); 46 | int TXT_DB_create_index(TXT_DB *db, int field, int (*qual) (OPENSSL_STRING *), 47 | OPENSSL_LH_HASHFUNC hash, OPENSSL_LH_COMPFUNC cmp); 48 | void TXT_DB_free(TXT_DB *db); 49 | OPENSSL_STRING *TXT_DB_get_by_index(TXT_DB *db, int idx, 50 | OPENSSL_STRING *value); 51 | int TXT_DB_insert(TXT_DB *db, OPENSSL_STRING *value); 52 | 53 | #ifdef __cplusplus 54 | } 55 | #endif 56 | 57 | #endif 58 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/uierr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the OpenSSL license (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef HEADER_UIERR_H 12 | # define HEADER_UIERR_H 13 | 14 | # ifndef HEADER_SYMHACKS_H 15 | # include 16 | # endif 17 | 18 | # ifdef __cplusplus 19 | extern "C" 20 | # endif 21 | int ERR_load_UI_strings(void); 22 | 23 | /* 24 | * UI function codes. 25 | */ 26 | # define UI_F_CLOSE_CONSOLE 115 27 | # define UI_F_ECHO_CONSOLE 116 28 | # define UI_F_GENERAL_ALLOCATE_BOOLEAN 108 29 | # define UI_F_GENERAL_ALLOCATE_PROMPT 109 30 | # define UI_F_NOECHO_CONSOLE 117 31 | # define UI_F_OPEN_CONSOLE 114 32 | # define UI_F_UI_CONSTRUCT_PROMPT 121 33 | # define UI_F_UI_CREATE_METHOD 112 34 | # define UI_F_UI_CTRL 111 35 | # define UI_F_UI_DUP_ERROR_STRING 101 36 | # define UI_F_UI_DUP_INFO_STRING 102 37 | # define UI_F_UI_DUP_INPUT_BOOLEAN 110 38 | # define UI_F_UI_DUP_INPUT_STRING 103 39 | # define UI_F_UI_DUP_USER_DATA 118 40 | # define UI_F_UI_DUP_VERIFY_STRING 106 41 | # define UI_F_UI_GET0_RESULT 107 42 | # define UI_F_UI_GET_RESULT_LENGTH 119 43 | # define UI_F_UI_NEW_METHOD 104 44 | # define UI_F_UI_PROCESS 113 45 | # define UI_F_UI_SET_RESULT 105 46 | # define UI_F_UI_SET_RESULT_EX 120 47 | 48 | /* 49 | * UI reason codes. 50 | */ 51 | # define UI_R_COMMON_OK_AND_CANCEL_CHARACTERS 104 52 | # define UI_R_INDEX_TOO_LARGE 102 53 | # define UI_R_INDEX_TOO_SMALL 103 54 | # define UI_R_NO_RESULT_BUFFER 105 55 | # define UI_R_PROCESSING_ERROR 107 56 | # define UI_R_RESULT_TOO_LARGE 100 57 | # define UI_R_RESULT_TOO_SMALL 101 58 | # define UI_R_SYSASSIGN_ERROR 109 59 | # define UI_R_SYSDASSGN_ERROR 110 60 | # define UI_R_SYSQIOW_ERROR 111 61 | # define UI_R_UNKNOWN_CONTROL_COMMAND 106 62 | # define UI_R_UNKNOWN_TTYGET_ERRNO_VALUE 108 63 | # define UI_R_USER_DATA_DUPLICATION_UNSUPPORTED 112 64 | 65 | #endif 66 | -------------------------------------------------------------------------------- /C/openssl-1.1.1p/whrlpool.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the OpenSSL license (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef HEADER_WHRLPOOL_H 11 | # define HEADER_WHRLPOOL_H 12 | 13 | #include 14 | 15 | # ifndef OPENSSL_NO_WHIRLPOOL 16 | # include 17 | # include 18 | # ifdef __cplusplus 19 | extern "C" { 20 | # endif 21 | 22 | # define WHIRLPOOL_DIGEST_LENGTH (512/8) 23 | # define WHIRLPOOL_BBLOCK 512 24 | # define WHIRLPOOL_COUNTER (256/8) 25 | 26 | typedef struct { 27 | union { 28 | unsigned char c[WHIRLPOOL_DIGEST_LENGTH]; 29 | /* double q is here to ensure 64-bit alignment */ 30 | double q[WHIRLPOOL_DIGEST_LENGTH / sizeof(double)]; 31 | } H; 32 | unsigned char data[WHIRLPOOL_BBLOCK / 8]; 33 | unsigned int bitoff; 34 | size_t bitlen[WHIRLPOOL_COUNTER / sizeof(size_t)]; 35 | } WHIRLPOOL_CTX; 36 | 37 | int WHIRLPOOL_Init(WHIRLPOOL_CTX *c); 38 | int WHIRLPOOL_Update(WHIRLPOOL_CTX *c, const void *inp, size_t bytes); 39 | void WHIRLPOOL_BitUpdate(WHIRLPOOL_CTX *c, const void *inp, size_t bits); 40 | int WHIRLPOOL_Final(unsigned char *md, WHIRLPOOL_CTX *c); 41 | unsigned char *WHIRLPOOL(const void *inp, size_t bytes, unsigned char *md); 42 | 43 | # ifdef __cplusplus 44 | } 45 | # endif 46 | # endif 47 | 48 | #endif 49 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/__DECC_INCLUDE_EPILOGUE.H: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2016-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | /* 11 | * This file is only used by HP C/C++ on VMS, and is included automatically 12 | * after each header file from this directory 13 | */ 14 | 15 | /* 16 | * The C++ compiler doesn't understand these pragmas, even though it 17 | * understands the corresponding command line qualifier. 18 | */ 19 | #ifndef __cplusplus 20 | /* restore state. Must correspond to the save in __decc_include_prologue.h */ 21 | # pragma names restore 22 | #endif 23 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/__DECC_INCLUDE_PROLOGUE.H: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2016-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | /* 11 | * This file is only used by HP C/C++ on VMS, and is included automatically 12 | * after each header file from this directory 13 | */ 14 | 15 | /* 16 | * The C++ compiler doesn't understand these pragmas, even though it 17 | * understands the corresponding command line qualifier. 18 | */ 19 | #ifndef __cplusplus 20 | /* save state */ 21 | # pragma names save 22 | /* have the compiler shorten symbols larger than 31 chars to 23 chars 23 | * followed by a 8 hex char CRC 24 | */ 25 | # pragma names as_is,shortened 26 | #endif 27 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/asn1_mac.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #error "This file is obsolete; please update your software." 11 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/asyncerr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_ASYNCERR_H 12 | # define OPENSSL_ASYNCERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * ASYNC reason codes. 23 | */ 24 | # define ASYNC_R_FAILED_TO_SET_POOL 101 25 | # define ASYNC_R_FAILED_TO_SWAP_CONTEXT 102 26 | # define ASYNC_R_INIT_FAILED 105 27 | # define ASYNC_R_INVALID_POOL_SIZE 103 28 | 29 | #endif 30 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/bnerr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_BNERR_H 12 | # define OPENSSL_BNERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * BN reason codes. 23 | */ 24 | # define BN_R_ARG2_LT_ARG3 100 25 | # define BN_R_BAD_RECIPROCAL 101 26 | # define BN_R_BIGNUM_TOO_LONG 114 27 | # define BN_R_BITS_TOO_SMALL 118 28 | # define BN_R_CALLED_WITH_EVEN_MODULUS 102 29 | # define BN_R_DIV_BY_ZERO 103 30 | # define BN_R_ENCODING_ERROR 104 31 | # define BN_R_EXPAND_ON_STATIC_BIGNUM_DATA 105 32 | # define BN_R_INPUT_NOT_REDUCED 110 33 | # define BN_R_INVALID_LENGTH 106 34 | # define BN_R_INVALID_RANGE 115 35 | # define BN_R_INVALID_SHIFT 119 36 | # define BN_R_NOT_A_SQUARE 111 37 | # define BN_R_NOT_INITIALIZED 107 38 | # define BN_R_NO_INVERSE 108 39 | # define BN_R_NO_PRIME_CANDIDATE 121 40 | # define BN_R_NO_SOLUTION 116 41 | # define BN_R_NO_SUITABLE_DIGEST 120 42 | # define BN_R_PRIVATE_KEY_TOO_LARGE 117 43 | # define BN_R_P_IS_NOT_PRIME 112 44 | # define BN_R_TOO_MANY_ITERATIONS 113 45 | # define BN_R_TOO_MANY_TEMPORARY_VARIABLES 109 46 | 47 | #endif 48 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/buffer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_BUFFER_H 11 | # define OPENSSL_BUFFER_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_BUFFER_H 17 | # endif 18 | 19 | # include 20 | # ifndef OPENSSL_CRYPTO_H 21 | # include 22 | # endif 23 | # include 24 | 25 | 26 | #ifdef __cplusplus 27 | extern "C" { 28 | #endif 29 | 30 | # include 31 | # include 32 | 33 | # ifndef OPENSSL_NO_DEPRECATED_3_0 34 | # define BUF_strdup(s) OPENSSL_strdup(s) 35 | # define BUF_strndup(s, size) OPENSSL_strndup(s, size) 36 | # define BUF_memdup(data, size) OPENSSL_memdup(data, size) 37 | # define BUF_strlcpy(dst, src, size) OPENSSL_strlcpy(dst, src, size) 38 | # define BUF_strlcat(dst, src, size) OPENSSL_strlcat(dst, src, size) 39 | # define BUF_strnlen(str, maxlen) OPENSSL_strnlen(str, maxlen) 40 | # endif 41 | 42 | struct buf_mem_st { 43 | size_t length; /* current number of bytes */ 44 | char *data; 45 | size_t max; /* size of buffer */ 46 | unsigned long flags; 47 | }; 48 | 49 | # define BUF_MEM_FLAG_SECURE 0x01 50 | 51 | BUF_MEM *BUF_MEM_new(void); 52 | BUF_MEM *BUF_MEM_new_ex(unsigned long flags); 53 | void BUF_MEM_free(BUF_MEM *a); 54 | size_t BUF_MEM_grow(BUF_MEM *str, size_t len); 55 | size_t BUF_MEM_grow_clean(BUF_MEM *str, size_t len); 56 | void BUF_reverse(unsigned char *out, const unsigned char *in, size_t siz); 57 | 58 | 59 | # ifdef __cplusplus 60 | } 61 | # endif 62 | #endif 63 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/buffererr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_BUFFERERR_H 12 | # define OPENSSL_BUFFERERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * BUF reason codes. 23 | */ 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/cast.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_CAST_H 11 | # define OPENSSL_CAST_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_CAST_H 17 | # endif 18 | 19 | # include 20 | 21 | # ifndef OPENSSL_NO_CAST 22 | # ifdef __cplusplus 23 | extern "C" { 24 | # endif 25 | 26 | # define CAST_BLOCK 8 27 | # define CAST_KEY_LENGTH 16 28 | 29 | # ifndef OPENSSL_NO_DEPRECATED_3_0 30 | 31 | # define CAST_ENCRYPT 1 32 | # define CAST_DECRYPT 0 33 | 34 | # define CAST_LONG unsigned int 35 | 36 | typedef struct cast_key_st { 37 | CAST_LONG data[32]; 38 | int short_key; /* Use reduced rounds for short key */ 39 | } CAST_KEY; 40 | 41 | # endif /* OPENSSL_NO_DEPRECATED_3_0 */ 42 | # ifndef OPENSSL_NO_DEPRECATED_3_0 43 | OSSL_DEPRECATEDIN_3_0 44 | void CAST_set_key(CAST_KEY *key, int len, const unsigned char *data); 45 | OSSL_DEPRECATEDIN_3_0 46 | void CAST_ecb_encrypt(const unsigned char *in, unsigned char *out, 47 | const CAST_KEY *key, int enc); 48 | OSSL_DEPRECATEDIN_3_0 49 | void CAST_encrypt(CAST_LONG *data, const CAST_KEY *key); 50 | OSSL_DEPRECATEDIN_3_0 51 | void CAST_decrypt(CAST_LONG *data, const CAST_KEY *key); 52 | OSSL_DEPRECATEDIN_3_0 53 | void CAST_cbc_encrypt(const unsigned char *in, unsigned char *out, 54 | long length, const CAST_KEY *ks, unsigned char *iv, 55 | int enc); 56 | OSSL_DEPRECATEDIN_3_0 57 | void CAST_cfb64_encrypt(const unsigned char *in, unsigned char *out, 58 | long length, const CAST_KEY *schedule, 59 | unsigned char *ivec, int *num, int enc); 60 | OSSL_DEPRECATEDIN_3_0 61 | void CAST_ofb64_encrypt(const unsigned char *in, unsigned char *out, 62 | long length, const CAST_KEY *schedule, 63 | unsigned char *ivec, int *num); 64 | # endif 65 | 66 | # ifdef __cplusplus 67 | } 68 | # endif 69 | # endif 70 | 71 | #endif 72 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/cmac.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_CMAC_H 11 | # define OPENSSL_CMAC_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_CMAC_H 17 | # endif 18 | 19 | # ifndef OPENSSL_NO_CMAC 20 | 21 | # ifdef __cplusplus 22 | extern "C" { 23 | # endif 24 | 25 | # include 26 | 27 | # ifndef OPENSSL_NO_DEPRECATED_3_0 28 | /* Opaque */ 29 | typedef struct CMAC_CTX_st CMAC_CTX; 30 | # endif 31 | # ifndef OPENSSL_NO_DEPRECATED_3_0 32 | OSSL_DEPRECATEDIN_3_0 CMAC_CTX *CMAC_CTX_new(void); 33 | OSSL_DEPRECATEDIN_3_0 void CMAC_CTX_cleanup(CMAC_CTX *ctx); 34 | OSSL_DEPRECATEDIN_3_0 void CMAC_CTX_free(CMAC_CTX *ctx); 35 | OSSL_DEPRECATEDIN_3_0 EVP_CIPHER_CTX *CMAC_CTX_get0_cipher_ctx(CMAC_CTX *ctx); 36 | OSSL_DEPRECATEDIN_3_0 int CMAC_CTX_copy(CMAC_CTX *out, const CMAC_CTX *in); 37 | OSSL_DEPRECATEDIN_3_0 int CMAC_Init(CMAC_CTX *ctx, 38 | const void *key, size_t keylen, 39 | const EVP_CIPHER *cipher, ENGINE *impl); 40 | OSSL_DEPRECATEDIN_3_0 int CMAC_Update(CMAC_CTX *ctx, 41 | const void *data, size_t dlen); 42 | OSSL_DEPRECATEDIN_3_0 int CMAC_Final(CMAC_CTX *ctx, 43 | unsigned char *out, size_t *poutlen); 44 | OSSL_DEPRECATEDIN_3_0 int CMAC_resume(CMAC_CTX *ctx); 45 | # endif 46 | 47 | # ifdef __cplusplus 48 | } 49 | # endif 50 | 51 | # endif 52 | #endif 53 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/cmp_util.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2007-2021 The OpenSSL Project Authors. All Rights Reserved. 3 | * Copyright Nokia 2007-2019 4 | * Copyright Siemens AG 2015-2019 5 | * 6 | * Licensed under the Apache License 2.0 (the "License"). You may not use 7 | * this file except in compliance with the License. You can obtain a copy 8 | * in the file LICENSE in the source distribution or at 9 | * https://www.openssl.org/source/license.html 10 | */ 11 | 12 | #ifndef OPENSSL_CMP_UTIL_H 13 | # define OPENSSL_CMP_UTIL_H 14 | # pragma once 15 | 16 | # include 17 | # ifndef OPENSSL_NO_CMP 18 | 19 | # include 20 | # include 21 | 22 | # ifdef __cplusplus 23 | extern "C" { 24 | # endif 25 | 26 | int OSSL_CMP_log_open(void); 27 | void OSSL_CMP_log_close(void); 28 | # define OSSL_CMP_LOG_PREFIX "CMP " 29 | 30 | /* 31 | * generalized logging/error callback mirroring the severity levels of syslog.h 32 | */ 33 | typedef int OSSL_CMP_severity; 34 | # define OSSL_CMP_LOG_EMERG 0 35 | # define OSSL_CMP_LOG_ALERT 1 36 | # define OSSL_CMP_LOG_CRIT 2 37 | # define OSSL_CMP_LOG_ERR 3 38 | # define OSSL_CMP_LOG_WARNING 4 39 | # define OSSL_CMP_LOG_NOTICE 5 40 | # define OSSL_CMP_LOG_INFO 6 41 | # define OSSL_CMP_LOG_DEBUG 7 42 | # define OSSL_CMP_LOG_TRACE 8 43 | # define OSSL_CMP_LOG_MAX OSSL_CMP_LOG_TRACE 44 | typedef int (*OSSL_CMP_log_cb_t)(const char *func, const char *file, int line, 45 | OSSL_CMP_severity level, const char *msg); 46 | 47 | int OSSL_CMP_print_to_bio(BIO *bio, const char *component, const char *file, 48 | int line, OSSL_CMP_severity level, const char *msg); 49 | /* use of the logging callback for outputting error queue */ 50 | void OSSL_CMP_print_errors_cb(OSSL_CMP_log_cb_t log_fn); 51 | 52 | # ifdef __cplusplus 53 | } 54 | # endif 55 | # endif /* !defined(OPENSSL_NO_CMP) */ 56 | #endif /* !defined(OPENSSL_CMP_UTIL_H) */ 57 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/comp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_COMP_H 11 | # define OPENSSL_COMP_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_COMP_H 17 | # endif 18 | 19 | # include 20 | 21 | # ifndef OPENSSL_NO_COMP 22 | # include 23 | # include 24 | # ifdef __cplusplus 25 | extern "C" { 26 | # endif 27 | 28 | 29 | 30 | COMP_CTX *COMP_CTX_new(COMP_METHOD *meth); 31 | const COMP_METHOD *COMP_CTX_get_method(const COMP_CTX *ctx); 32 | int COMP_CTX_get_type(const COMP_CTX* comp); 33 | int COMP_get_type(const COMP_METHOD *meth); 34 | const char *COMP_get_name(const COMP_METHOD *meth); 35 | void COMP_CTX_free(COMP_CTX *ctx); 36 | 37 | int COMP_compress_block(COMP_CTX *ctx, unsigned char *out, int olen, 38 | unsigned char *in, int ilen); 39 | int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen, 40 | unsigned char *in, int ilen); 41 | 42 | COMP_METHOD *COMP_zlib(void); 43 | 44 | #ifndef OPENSSL_NO_DEPRECATED_1_1_0 45 | # define COMP_zlib_cleanup() while(0) continue 46 | #endif 47 | 48 | # ifdef OPENSSL_BIO_H 49 | # ifdef ZLIB 50 | const BIO_METHOD *BIO_f_zlib(void); 51 | # endif 52 | # endif 53 | 54 | 55 | # ifdef __cplusplus 56 | } 57 | # endif 58 | # endif 59 | #endif 60 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/comperr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_COMPERR_H 12 | # define OPENSSL_COMPERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | # ifndef OPENSSL_NO_COMP 21 | 22 | 23 | /* 24 | * COMP reason codes. 25 | */ 26 | # define COMP_R_ZLIB_DEFLATE_ERROR 99 27 | # define COMP_R_ZLIB_INFLATE_ERROR 100 28 | # define COMP_R_ZLIB_NOT_SUPPORTED 101 29 | 30 | # endif 31 | #endif 32 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/conf_api.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_CONF_API_H 11 | # define OPENSSL_CONF_API_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_CONF_API_H 17 | # endif 18 | 19 | # include 20 | # include 21 | 22 | #ifdef __cplusplus 23 | extern "C" { 24 | #endif 25 | 26 | /* Up until OpenSSL 0.9.5a, this was new_section */ 27 | CONF_VALUE *_CONF_new_section(CONF *conf, const char *section); 28 | /* Up until OpenSSL 0.9.5a, this was get_section */ 29 | CONF_VALUE *_CONF_get_section(const CONF *conf, const char *section); 30 | /* Up until OpenSSL 0.9.5a, this was CONF_get_section */ 31 | STACK_OF(CONF_VALUE) *_CONF_get_section_values(const CONF *conf, 32 | const char *section); 33 | 34 | int _CONF_add_string(CONF *conf, CONF_VALUE *section, CONF_VALUE *value); 35 | char *_CONF_get_string(const CONF *conf, const char *section, 36 | const char *name); 37 | long _CONF_get_number(const CONF *conf, const char *section, 38 | const char *name); 39 | 40 | int _CONF_new_data(CONF *conf); 41 | void _CONF_free_data(CONF *conf); 42 | 43 | #ifdef __cplusplus 44 | } 45 | #endif 46 | #endif 47 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/conferr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_CONFERR_H 12 | # define OPENSSL_CONFERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * CONF reason codes. 23 | */ 24 | # define CONF_R_ERROR_LOADING_DSO 110 25 | # define CONF_R_INVALID_PRAGMA 122 26 | # define CONF_R_LIST_CANNOT_BE_NULL 115 27 | # define CONF_R_MANDATORY_BRACES_IN_VARIABLE_EXPANSION 123 28 | # define CONF_R_MISSING_CLOSE_SQUARE_BRACKET 100 29 | # define CONF_R_MISSING_EQUAL_SIGN 101 30 | # define CONF_R_MISSING_INIT_FUNCTION 112 31 | # define CONF_R_MODULE_INITIALIZATION_ERROR 109 32 | # define CONF_R_NO_CLOSE_BRACE 102 33 | # define CONF_R_NO_CONF 105 34 | # define CONF_R_NO_CONF_OR_ENVIRONMENT_VARIABLE 106 35 | # define CONF_R_NO_SECTION 107 36 | # define CONF_R_NO_SUCH_FILE 114 37 | # define CONF_R_NO_VALUE 108 38 | # define CONF_R_NUMBER_TOO_LARGE 121 39 | # define CONF_R_OPENSSL_CONF_REFERENCES_MISSING_SECTION 124 40 | # define CONF_R_RECURSIVE_DIRECTORY_INCLUDE 111 41 | # define CONF_R_RELATIVE_PATH 125 42 | # define CONF_R_SSL_COMMAND_SECTION_EMPTY 117 43 | # define CONF_R_SSL_COMMAND_SECTION_NOT_FOUND 118 44 | # define CONF_R_SSL_SECTION_EMPTY 119 45 | # define CONF_R_SSL_SECTION_NOT_FOUND 120 46 | # define CONF_R_UNABLE_TO_CREATE_NEW_SECTION 103 47 | # define CONF_R_UNKNOWN_MODULE_NAME 113 48 | # define CONF_R_VARIABLE_EXPANSION_TOO_LONG 116 49 | # define CONF_R_VARIABLE_HAS_NO_VALUE 104 50 | 51 | #endif 52 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/configuration.h.in: -------------------------------------------------------------------------------- 1 | /* 2 | * {- join("\n * ", @autowarntext) -} 3 | * 4 | * Copyright 2016-2021 The OpenSSL Project Authors. All Rights Reserved. 5 | * 6 | * Licensed under the Apache License 2.0 (the "License"). You may not use 7 | * this file except in compliance with the License. You can obtain a copy 8 | * in the file LICENSE in the source distribution or at 9 | * https://www.openssl.org/source/license.html 10 | */ 11 | 12 | #ifndef OPENSSL_CONFIGURATION_H 13 | # define OPENSSL_CONFIGURATION_H 14 | # pragma once 15 | 16 | # ifdef __cplusplus 17 | extern "C" { 18 | # endif 19 | 20 | # ifdef OPENSSL_ALGORITHM_DEFINES 21 | # error OPENSSL_ALGORITHM_DEFINES no longer supported 22 | # endif 23 | 24 | /* 25 | * OpenSSL was configured with the following options: 26 | */ 27 | 28 | {- if (@{$config{openssl_sys_defines}}) { 29 | foreach (@{$config{openssl_sys_defines}}) { 30 | $OUT .= "# ifndef $_\n"; 31 | $OUT .= "# define $_ 1\n"; 32 | $OUT .= "# endif\n"; 33 | } 34 | } 35 | foreach (@{$config{openssl_api_defines}}) { 36 | (my $macro, my $value) = $_ =~ /^(.*?)=(.*?)$/; 37 | $OUT .= "# define $macro $value\n"; 38 | } 39 | if (@{$config{openssl_feature_defines}}) { 40 | foreach (@{$config{openssl_feature_defines}}) { 41 | $OUT .= "# ifndef $_\n"; 42 | $OUT .= "# define $_\n"; 43 | $OUT .= "# endif\n"; 44 | } 45 | } 46 | ""; 47 | -} 48 | 49 | /* Generate 80386 code? */ 50 | {- $config{processor} eq "386" ? "# define" : "# undef" -} I386_ONLY 51 | 52 | /* 53 | * The following are cipher-specific, but are part of the public API. 54 | */ 55 | # if !defined(OPENSSL_SYS_UEFI) 56 | {- $config{bn_ll} ? "# define" : "# undef" -} BN_LLONG 57 | /* Only one for the following should be defined */ 58 | {- $config{b64l} ? "# define" : "# undef" -} SIXTY_FOUR_BIT_LONG 59 | {- $config{b64} ? "# define" : "# undef" -} SIXTY_FOUR_BIT 60 | {- $config{b32} ? "# define" : "# undef" -} THIRTY_TWO_BIT 61 | # endif 62 | 63 | # define RC4_INT {- $config{rc4_int} -} 64 | 65 | # ifdef __cplusplus 66 | } 67 | # endif 68 | 69 | #endif /* OPENSSL_CONFIGURATION_H */ 70 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/conftypes.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_CONFTYPES_H 11 | # define OPENSSL_CONFTYPES_H 12 | # pragma once 13 | 14 | #ifndef OPENSSL_CONF_H 15 | # include 16 | #endif 17 | 18 | /* 19 | * The contents of this file are deprecated and will be made opaque 20 | */ 21 | struct conf_method_st { 22 | const char *name; 23 | CONF *(*create) (CONF_METHOD *meth); 24 | int (*init) (CONF *conf); 25 | int (*destroy) (CONF *conf); 26 | int (*destroy_data) (CONF *conf); 27 | int (*load_bio) (CONF *conf, BIO *bp, long *eline); 28 | int (*dump) (const CONF *conf, BIO *bp); 29 | int (*is_number) (const CONF *conf, char c); 30 | int (*to_int) (const CONF *conf, char c); 31 | int (*load) (CONF *conf, const char *name, long *eline); 32 | }; 33 | 34 | struct conf_st { 35 | CONF_METHOD *meth; 36 | void *meth_data; 37 | LHASH_OF(CONF_VALUE) *data; 38 | int flag_dollarid; 39 | int flag_abspath; 40 | char *includedir; 41 | OSSL_LIB_CTX *libctx; 42 | }; 43 | 44 | #endif 45 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/core_object.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2020-2021 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_CORE_OBJECT_H 11 | # define OPENSSL_CORE_OBJECT_H 12 | # pragma once 13 | 14 | # ifdef __cplusplus 15 | extern "C" { 16 | # endif 17 | 18 | /*- 19 | * Known object types 20 | * 21 | * These numbers are used as values for the OSSL_PARAM parameter 22 | * OSSL_OBJECT_PARAM_TYPE. 23 | * 24 | * For most of these types, there's a corresponding libcrypto object type. 25 | * The corresponding type is indicated with a comment after the number. 26 | */ 27 | # define OSSL_OBJECT_UNKNOWN 0 28 | # define OSSL_OBJECT_NAME 1 /* char * */ 29 | # define OSSL_OBJECT_PKEY 2 /* EVP_PKEY * */ 30 | # define OSSL_OBJECT_CERT 3 /* X509 * */ 31 | # define OSSL_OBJECT_CRL 4 /* X509_CRL * */ 32 | 33 | /* 34 | * The rest of the associated OSSL_PARAM elements is described in core_names.h 35 | */ 36 | 37 | # ifdef __cplusplus 38 | } 39 | # endif 40 | 41 | #endif 42 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/crmferr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_CRMFERR_H 12 | # define OPENSSL_CRMFERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | # ifndef OPENSSL_NO_CRMF 21 | 22 | 23 | /* 24 | * CRMF reason codes. 25 | */ 26 | # define CRMF_R_BAD_PBM_ITERATIONCOUNT 100 27 | # define CRMF_R_CRMFERROR 102 28 | # define CRMF_R_ERROR 103 29 | # define CRMF_R_ERROR_DECODING_CERTIFICATE 104 30 | # define CRMF_R_ERROR_DECRYPTING_CERTIFICATE 105 31 | # define CRMF_R_ERROR_DECRYPTING_SYMMETRIC_KEY 106 32 | # define CRMF_R_FAILURE_OBTAINING_RANDOM 107 33 | # define CRMF_R_ITERATIONCOUNT_BELOW_100 108 34 | # define CRMF_R_MALFORMED_IV 101 35 | # define CRMF_R_NULL_ARGUMENT 109 36 | # define CRMF_R_POPOSKINPUT_NOT_SUPPORTED 113 37 | # define CRMF_R_POPO_INCONSISTENT_PUBLIC_KEY 117 38 | # define CRMF_R_POPO_MISSING 121 39 | # define CRMF_R_POPO_MISSING_PUBLIC_KEY 118 40 | # define CRMF_R_POPO_MISSING_SUBJECT 119 41 | # define CRMF_R_POPO_RAVERIFIED_NOT_ACCEPTED 120 42 | # define CRMF_R_SETTING_MAC_ALGOR_FAILURE 110 43 | # define CRMF_R_SETTING_OWF_ALGOR_FAILURE 111 44 | # define CRMF_R_UNSUPPORTED_ALGORITHM 112 45 | # define CRMF_R_UNSUPPORTED_CIPHER 114 46 | # define CRMF_R_UNSUPPORTED_METHOD_FOR_CREATING_POPO 115 47 | # define CRMF_R_UNSUPPORTED_POPO_METHOD 116 48 | 49 | # endif 50 | #endif 51 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/cryptoerr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_CRYPTOERR_H 12 | # define OPENSSL_CRYPTOERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * CRYPTO reason codes. 23 | */ 24 | # define CRYPTO_R_BAD_ALGORITHM_NAME 117 25 | # define CRYPTO_R_CONFLICTING_NAMES 118 26 | # define CRYPTO_R_HEX_STRING_TOO_SHORT 121 27 | # define CRYPTO_R_ILLEGAL_HEX_DIGIT 102 28 | # define CRYPTO_R_INSUFFICIENT_DATA_SPACE 106 29 | # define CRYPTO_R_INSUFFICIENT_PARAM_SIZE 107 30 | # define CRYPTO_R_INSUFFICIENT_SECURE_DATA_SPACE 108 31 | # define CRYPTO_R_INVALID_NEGATIVE_VALUE 122 32 | # define CRYPTO_R_INVALID_NULL_ARGUMENT 109 33 | # define CRYPTO_R_INVALID_OSSL_PARAM_TYPE 110 34 | # define CRYPTO_R_ODD_NUMBER_OF_DIGITS 103 35 | # define CRYPTO_R_PROVIDER_ALREADY_EXISTS 104 36 | # define CRYPTO_R_PROVIDER_SECTION_ERROR 105 37 | # define CRYPTO_R_RANDOM_SECTION_ERROR 119 38 | # define CRYPTO_R_SECURE_MALLOC_FAILURE 111 39 | # define CRYPTO_R_STRING_TOO_LONG 112 40 | # define CRYPTO_R_TOO_MANY_BYTES 113 41 | # define CRYPTO_R_TOO_MANY_RECORDS 114 42 | # define CRYPTO_R_TOO_SMALL_BUFFER 116 43 | # define CRYPTO_R_UNKNOWN_NAME_IN_RANDOM_SECTION 120 44 | # define CRYPTO_R_ZERO_LENGTH_NUMBER 115 45 | 46 | #endif 47 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/cterr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_CTERR_H 12 | # define OPENSSL_CTERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | # ifndef OPENSSL_NO_CT 21 | 22 | 23 | /* 24 | * CT reason codes. 25 | */ 26 | # define CT_R_BASE64_DECODE_ERROR 108 27 | # define CT_R_INVALID_LOG_ID_LENGTH 100 28 | # define CT_R_LOG_CONF_INVALID 109 29 | # define CT_R_LOG_CONF_INVALID_KEY 110 30 | # define CT_R_LOG_CONF_MISSING_DESCRIPTION 111 31 | # define CT_R_LOG_CONF_MISSING_KEY 112 32 | # define CT_R_LOG_KEY_INVALID 113 33 | # define CT_R_SCT_FUTURE_TIMESTAMP 116 34 | # define CT_R_SCT_INVALID 104 35 | # define CT_R_SCT_INVALID_SIGNATURE 107 36 | # define CT_R_SCT_LIST_INVALID 105 37 | # define CT_R_SCT_LOG_ID_MISMATCH 114 38 | # define CT_R_SCT_NOT_SET 106 39 | # define CT_R_SCT_UNSUPPORTED_VERSION 115 40 | # define CT_R_UNRECOGNIZED_SIGNATURE_NID 101 41 | # define CT_R_UNSUPPORTED_ENTRY_TYPE 102 42 | # define CT_R_UNSUPPORTED_VERSION 103 43 | 44 | # endif 45 | #endif 46 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/decodererr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_DECODERERR_H 12 | # define OPENSSL_DECODERERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * OSSL_DECODER reason codes. 23 | */ 24 | # define OSSL_DECODER_R_COULD_NOT_DECODE_OBJECT 101 25 | # define OSSL_DECODER_R_DECODER_NOT_FOUND 102 26 | # define OSSL_DECODER_R_MISSING_GET_PARAMS 100 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/dherr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_DHERR_H 12 | # define OPENSSL_DHERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | # ifndef OPENSSL_NO_DH 21 | 22 | 23 | /* 24 | * DH reason codes. 25 | */ 26 | # define DH_R_BAD_FFC_PARAMETERS 127 27 | # define DH_R_BAD_GENERATOR 101 28 | # define DH_R_BN_DECODE_ERROR 109 29 | # define DH_R_BN_ERROR 106 30 | # define DH_R_CHECK_INVALID_J_VALUE 115 31 | # define DH_R_CHECK_INVALID_Q_VALUE 116 32 | # define DH_R_CHECK_PUBKEY_INVALID 122 33 | # define DH_R_CHECK_PUBKEY_TOO_LARGE 123 34 | # define DH_R_CHECK_PUBKEY_TOO_SMALL 124 35 | # define DH_R_CHECK_P_NOT_PRIME 117 36 | # define DH_R_CHECK_P_NOT_SAFE_PRIME 118 37 | # define DH_R_CHECK_Q_NOT_PRIME 119 38 | # define DH_R_DECODE_ERROR 104 39 | # define DH_R_INVALID_PARAMETER_NAME 110 40 | # define DH_R_INVALID_PARAMETER_NID 114 41 | # define DH_R_INVALID_PUBKEY 102 42 | # define DH_R_INVALID_SECRET 128 43 | # define DH_R_KDF_PARAMETER_ERROR 112 44 | # define DH_R_KEYS_NOT_SET 108 45 | # define DH_R_MISSING_PUBKEY 125 46 | # define DH_R_MODULUS_TOO_LARGE 103 47 | # define DH_R_MODULUS_TOO_SMALL 126 48 | # define DH_R_NOT_SUITABLE_GENERATOR 120 49 | # define DH_R_NO_PARAMETERS_SET 107 50 | # define DH_R_NO_PRIVATE_VALUE 100 51 | # define DH_R_PARAMETER_ENCODING_ERROR 105 52 | # define DH_R_PEER_KEY_ERROR 111 53 | # define DH_R_SHARED_INFO_ERROR 113 54 | # define DH_R_UNABLE_TO_CHECK_GENERATOR 121 55 | 56 | # endif 57 | #endif 58 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/dsaerr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_DSAERR_H 12 | # define OPENSSL_DSAERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | # ifndef OPENSSL_NO_DSA 21 | 22 | 23 | /* 24 | * DSA reason codes. 25 | */ 26 | # define DSA_R_BAD_FFC_PARAMETERS 114 27 | # define DSA_R_BAD_Q_VALUE 102 28 | # define DSA_R_BN_DECODE_ERROR 108 29 | # define DSA_R_BN_ERROR 109 30 | # define DSA_R_DECODE_ERROR 104 31 | # define DSA_R_INVALID_DIGEST_TYPE 106 32 | # define DSA_R_INVALID_PARAMETERS 112 33 | # define DSA_R_MISSING_PARAMETERS 101 34 | # define DSA_R_MISSING_PRIVATE_KEY 111 35 | # define DSA_R_MODULUS_TOO_LARGE 103 36 | # define DSA_R_NO_PARAMETERS_SET 107 37 | # define DSA_R_PARAMETER_ENCODING_ERROR 105 38 | # define DSA_R_P_NOT_PRIME 115 39 | # define DSA_R_Q_NOT_PRIME 113 40 | # define DSA_R_SEED_LEN_SMALL 110 41 | 42 | # endif 43 | #endif 44 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/dtls1.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2005-2021 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_DTLS1_H 11 | # define OPENSSL_DTLS1_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_DTLS1_H 17 | # endif 18 | 19 | # include 20 | 21 | #ifdef __cplusplus 22 | extern "C" { 23 | #endif 24 | 25 | #include 26 | 27 | /* DTLS*_VERSION constants are defined in prov_ssl.h */ 28 | # ifndef OPENSSL_NO_DEPRECATED_3_0 29 | # define DTLS_MIN_VERSION DTLS1_VERSION 30 | # define DTLS_MAX_VERSION DTLS1_2_VERSION 31 | # endif 32 | # define DTLS1_VERSION_MAJOR 0xFE 33 | 34 | /* Special value for method supporting multiple versions */ 35 | # define DTLS_ANY_VERSION 0x1FFFF 36 | 37 | /* lengths of messages */ 38 | 39 | # define DTLS1_COOKIE_LENGTH 255 40 | 41 | # define DTLS1_RT_HEADER_LENGTH 13 42 | 43 | # define DTLS1_HM_HEADER_LENGTH 12 44 | 45 | # define DTLS1_HM_BAD_FRAGMENT -2 46 | # define DTLS1_HM_FRAGMENT_RETRY -3 47 | 48 | # define DTLS1_CCS_HEADER_LENGTH 1 49 | 50 | # define DTLS1_AL_HEADER_LENGTH 2 51 | 52 | # define DTLS1_TMO_ALERT_COUNT 12 53 | 54 | #ifdef __cplusplus 55 | } 56 | #endif 57 | #endif 58 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/ebcdic.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_EBCDIC_H 11 | # define OPENSSL_EBCDIC_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_EBCDIC_H 17 | # endif 18 | 19 | # include 20 | 21 | #ifdef __cplusplus 22 | extern "C" { 23 | #endif 24 | 25 | /* Avoid name clashes with other applications */ 26 | # define os_toascii _openssl_os_toascii 27 | # define os_toebcdic _openssl_os_toebcdic 28 | # define ebcdic2ascii _openssl_ebcdic2ascii 29 | # define ascii2ebcdic _openssl_ascii2ebcdic 30 | 31 | extern const unsigned char os_toascii[256]; 32 | extern const unsigned char os_toebcdic[256]; 33 | void *ebcdic2ascii(void *dest, const void *srce, size_t count); 34 | void *ascii2ebcdic(void *dest, const void *srce, size_t count); 35 | 36 | #ifdef __cplusplus 37 | } 38 | #endif 39 | #endif 40 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/ecdh.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #include 11 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/ecdsa.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #include 11 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/encodererr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_ENCODERERR_H 12 | # define OPENSSL_ENCODERERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * OSSL_ENCODER reason codes. 23 | */ 24 | # define OSSL_ENCODER_R_ENCODER_NOT_FOUND 101 25 | # define OSSL_ENCODER_R_INCORRECT_PROPERTY_QUERY 100 26 | # define OSSL_ENCODER_R_MISSING_GET_PARAMS 102 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/ess.h.in: -------------------------------------------------------------------------------- 1 | /* 2 | * {- join("\n * ", @autowarntext) -} 3 | * 4 | * Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved. 5 | * 6 | * Licensed under the Apache License 2.0 (the "License"). You may not use 7 | * this file except in compliance with the License. You can obtain a copy 8 | * in the file LICENSE in the source distribution or at 9 | * https://www.openssl.org/source/license.html 10 | */ 11 | 12 | {- 13 | use OpenSSL::stackhash qw(generate_stack_macros); 14 | -} 15 | 16 | #ifndef OPENSSL_ESS_H 17 | # define OPENSSL_ESS_H 18 | # pragma once 19 | 20 | # include 21 | 22 | # include 23 | # include 24 | # include 25 | 26 | # ifdef __cplusplus 27 | extern "C" { 28 | # endif 29 | 30 | 31 | typedef struct ESS_issuer_serial ESS_ISSUER_SERIAL; 32 | typedef struct ESS_cert_id ESS_CERT_ID; 33 | typedef struct ESS_signing_cert ESS_SIGNING_CERT; 34 | 35 | {- 36 | generate_stack_macros("ESS_CERT_ID"); 37 | -} 38 | 39 | 40 | typedef struct ESS_signing_cert_v2_st ESS_SIGNING_CERT_V2; 41 | typedef struct ESS_cert_id_v2_st ESS_CERT_ID_V2; 42 | 43 | {- 44 | generate_stack_macros("ESS_CERT_ID_V2"); 45 | -} 46 | 47 | DECLARE_ASN1_ALLOC_FUNCTIONS(ESS_ISSUER_SERIAL) 48 | DECLARE_ASN1_ENCODE_FUNCTIONS_only(ESS_ISSUER_SERIAL, ESS_ISSUER_SERIAL) 49 | DECLARE_ASN1_DUP_FUNCTION(ESS_ISSUER_SERIAL) 50 | 51 | DECLARE_ASN1_ALLOC_FUNCTIONS(ESS_CERT_ID) 52 | DECLARE_ASN1_ENCODE_FUNCTIONS_only(ESS_CERT_ID, ESS_CERT_ID) 53 | DECLARE_ASN1_DUP_FUNCTION(ESS_CERT_ID) 54 | 55 | DECLARE_ASN1_FUNCTIONS(ESS_SIGNING_CERT) 56 | DECLARE_ASN1_DUP_FUNCTION(ESS_SIGNING_CERT) 57 | 58 | DECLARE_ASN1_ALLOC_FUNCTIONS(ESS_CERT_ID_V2) 59 | DECLARE_ASN1_ENCODE_FUNCTIONS_only(ESS_CERT_ID_V2, ESS_CERT_ID_V2) 60 | DECLARE_ASN1_DUP_FUNCTION(ESS_CERT_ID_V2) 61 | 62 | DECLARE_ASN1_FUNCTIONS(ESS_SIGNING_CERT_V2) 63 | DECLARE_ASN1_DUP_FUNCTION(ESS_SIGNING_CERT_V2) 64 | 65 | ESS_SIGNING_CERT *OSSL_ESS_signing_cert_new_init(const X509 *signcert, 66 | const STACK_OF(X509) *certs, 67 | int set_issuer_serial); 68 | ESS_SIGNING_CERT_V2 *OSSL_ESS_signing_cert_v2_new_init(const EVP_MD *hash_alg, 69 | const X509 *signcert, 70 | const 71 | STACK_OF(X509) *certs, 72 | int set_issuer_serial); 73 | int OSSL_ESS_check_signing_certs(const ESS_SIGNING_CERT *ss, 74 | const ESS_SIGNING_CERT_V2 *ssv2, 75 | const STACK_OF(X509) *chain, 76 | int require_signing_cert); 77 | 78 | # ifdef __cplusplus 79 | } 80 | # endif 81 | #endif 82 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/esserr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_ESSERR_H 12 | # define OPENSSL_ESSERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | /* 20 | * ESS reason codes. 21 | */ 22 | # define ESS_R_EMPTY_ESS_CERT_ID_LIST 107 23 | # define ESS_R_ESS_CERT_DIGEST_ERROR 103 24 | # define ESS_R_ESS_CERT_ID_NOT_FOUND 104 25 | # define ESS_R_ESS_CERT_ID_WRONG_ORDER 105 26 | # define ESS_R_ESS_DIGEST_ALG_UNKNOWN 106 27 | # define ESS_R_ESS_SIGNING_CERTIFICATE_ERROR 102 28 | # define ESS_R_ESS_SIGNING_CERT_ADD_ERROR 100 29 | # define ESS_R_ESS_SIGNING_CERT_V2_ADD_ERROR 101 30 | # define ESS_R_MISSING_SIGNING_CERTIFICATE_ATTRIBUTE 108 31 | 32 | #endif 33 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/fips_names.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_FIPS_NAMES_H 11 | # define OPENSSL_FIPS_NAMES_H 12 | # pragma once 13 | 14 | # ifdef __cplusplus 15 | extern "C" { 16 | # endif 17 | 18 | /* 19 | * Parameter names that the FIPS Provider defines 20 | */ 21 | 22 | /* 23 | * The calculated MAC of the module file (Used for FIPS Self Testing) 24 | * Type: OSSL_PARAM_UTF8_STRING 25 | */ 26 | # define OSSL_PROV_FIPS_PARAM_MODULE_MAC "module-mac" 27 | /* 28 | * A version number for the fips install process (Used for FIPS Self Testing) 29 | * Type: OSSL_PARAM_UTF8_STRING 30 | */ 31 | # define OSSL_PROV_FIPS_PARAM_INSTALL_VERSION "install-version" 32 | /* 33 | * The calculated MAC of the install status indicator (Used for FIPS Self Testing) 34 | * Type: OSSL_PARAM_UTF8_STRING 35 | */ 36 | # define OSSL_PROV_FIPS_PARAM_INSTALL_MAC "install-mac" 37 | /* 38 | * The install status indicator (Used for FIPS Self Testing) 39 | * Type: OSSL_PARAM_UTF8_STRING 40 | */ 41 | # define OSSL_PROV_FIPS_PARAM_INSTALL_STATUS "install-status" 42 | 43 | /* 44 | * A boolean that determines if the FIPS conditional test errors result in 45 | * the module entering an error state. 46 | * Type: OSSL_PARAM_UTF8_STRING 47 | */ 48 | # define OSSL_PROV_FIPS_PARAM_CONDITIONAL_ERRORS "conditional-errors" 49 | 50 | /* 51 | * A boolean that determines if the runtime FIPS security checks are performed. 52 | * Type: OSSL_PARAM_UTF8_STRING 53 | */ 54 | # define OSSL_PROV_FIPS_PARAM_SECURITY_CHECKS "security-checks" 55 | 56 | # ifdef __cplusplus 57 | } 58 | # endif 59 | 60 | #endif /* OPENSSL_FIPS_NAMES_H */ 61 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/fipskey.h.in: -------------------------------------------------------------------------------- 1 | /* 2 | * {- join("\n * ", @autowarntext) -} 3 | * 4 | * Copyright 2020-2021 The OpenSSL Project Authors. All Rights Reserved. 5 | * 6 | * Licensed under the Apache License 2.0 (the "License"). You may not use 7 | * this file except in compliance with the License. You can obtain a copy 8 | * in the file LICENSE in the source distribution or at 9 | * https://www.openssl.org/source/license.html 10 | */ 11 | 12 | #ifndef OPENSSL_FIPSKEY_H 13 | # define OPENSSL_FIPSKEY_H 14 | # pragma once 15 | 16 | # ifdef __cplusplus 17 | extern "C" { 18 | # endif 19 | 20 | /* 21 | * The FIPS validation HMAC key, usable as an array initializer. 22 | */ 23 | #define FIPS_KEY_ELEMENTS \ 24 | {- join(', ', map { "0x$_" } unpack("(A2)*", $config{FIPSKEY})) -} 25 | 26 | /* 27 | * The FIPS validation key, as a string. 28 | */ 29 | #define FIPS_KEY_STRING "{- $config{FIPSKEY} -}" 30 | 31 | # ifdef __cplusplus 32 | } 33 | # endif 34 | 35 | #endif 36 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/hmac.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_HMAC_H 11 | # define OPENSSL_HMAC_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_HMAC_H 17 | # endif 18 | 19 | # include 20 | 21 | # include 22 | 23 | # ifndef OPENSSL_NO_DEPRECATED_3_0 24 | # define HMAC_MAX_MD_CBLOCK 200 /* Deprecated */ 25 | # endif 26 | 27 | # ifdef __cplusplus 28 | extern "C" { 29 | # endif 30 | 31 | # ifndef OPENSSL_NO_DEPRECATED_3_0 32 | OSSL_DEPRECATEDIN_3_0 size_t HMAC_size(const HMAC_CTX *e); 33 | OSSL_DEPRECATEDIN_3_0 HMAC_CTX *HMAC_CTX_new(void); 34 | OSSL_DEPRECATEDIN_3_0 int HMAC_CTX_reset(HMAC_CTX *ctx); 35 | OSSL_DEPRECATEDIN_3_0 void HMAC_CTX_free(HMAC_CTX *ctx); 36 | # endif 37 | # ifndef OPENSSL_NO_DEPRECATED_1_1_0 38 | OSSL_DEPRECATEDIN_1_1_0 __owur int HMAC_Init(HMAC_CTX *ctx, 39 | const void *key, int len, 40 | const EVP_MD *md); 41 | # endif 42 | # ifndef OPENSSL_NO_DEPRECATED_3_0 43 | OSSL_DEPRECATEDIN_3_0 int HMAC_Init_ex(HMAC_CTX *ctx, const void *key, int len, 44 | const EVP_MD *md, ENGINE *impl); 45 | OSSL_DEPRECATEDIN_3_0 int HMAC_Update(HMAC_CTX *ctx, const unsigned char *data, 46 | size_t len); 47 | OSSL_DEPRECATEDIN_3_0 int HMAC_Final(HMAC_CTX *ctx, unsigned char *md, 48 | unsigned int *len); 49 | OSSL_DEPRECATEDIN_3_0 __owur int HMAC_CTX_copy(HMAC_CTX *dctx, HMAC_CTX *sctx); 50 | OSSL_DEPRECATEDIN_3_0 void HMAC_CTX_set_flags(HMAC_CTX *ctx, unsigned long flags); 51 | OSSL_DEPRECATEDIN_3_0 const EVP_MD *HMAC_CTX_get_md(const HMAC_CTX *ctx); 52 | # endif 53 | 54 | unsigned char *HMAC(const EVP_MD *evp_md, const void *key, int key_len, 55 | const unsigned char *data, size_t data_len, 56 | unsigned char *md, unsigned int *md_len); 57 | 58 | # ifdef __cplusplus 59 | } 60 | # endif 61 | 62 | #endif 63 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/httperr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_HTTPERR_H 12 | # define OPENSSL_HTTPERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * HTTP reason codes. 23 | */ 24 | # define HTTP_R_ASN1_LEN_EXCEEDS_MAX_RESP_LEN 108 25 | # define HTTP_R_CONNECT_FAILURE 100 26 | # define HTTP_R_ERROR_PARSING_ASN1_LENGTH 109 27 | # define HTTP_R_ERROR_PARSING_CONTENT_LENGTH 119 28 | # define HTTP_R_ERROR_PARSING_URL 101 29 | # define HTTP_R_ERROR_RECEIVING 103 30 | # define HTTP_R_ERROR_SENDING 102 31 | # define HTTP_R_FAILED_READING_DATA 128 32 | # define HTTP_R_HEADER_PARSE_ERROR 126 33 | # define HTTP_R_INCONSISTENT_CONTENT_LENGTH 120 34 | # define HTTP_R_INVALID_PORT_NUMBER 123 35 | # define HTTP_R_INVALID_URL_PATH 125 36 | # define HTTP_R_INVALID_URL_SCHEME 124 37 | # define HTTP_R_MAX_RESP_LEN_EXCEEDED 117 38 | # define HTTP_R_MISSING_ASN1_ENCODING 110 39 | # define HTTP_R_MISSING_CONTENT_TYPE 121 40 | # define HTTP_R_MISSING_REDIRECT_LOCATION 111 41 | # define HTTP_R_RECEIVED_ERROR 105 42 | # define HTTP_R_RECEIVED_WRONG_HTTP_VERSION 106 43 | # define HTTP_R_REDIRECTION_FROM_HTTPS_TO_HTTP 112 44 | # define HTTP_R_REDIRECTION_NOT_ENABLED 116 45 | # define HTTP_R_RESPONSE_LINE_TOO_LONG 113 46 | # define HTTP_R_RESPONSE_PARSE_ERROR 104 47 | # define HTTP_R_RETRY_TIMEOUT 129 48 | # define HTTP_R_SERVER_CANCELED_CONNECTION 127 49 | # define HTTP_R_SOCK_NOT_SUPPORTED 122 50 | # define HTTP_R_STATUS_CODE_UNSUPPORTED 114 51 | # define HTTP_R_TLS_NOT_ENABLED 107 52 | # define HTTP_R_TOO_MANY_REDIRECTIONS 115 53 | # define HTTP_R_UNEXPECTED_CONTENT_TYPE 118 54 | 55 | #endif 56 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/kdferr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2020-2021 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_KDFERR_H 11 | # define OPENSSL_KDFERR_H 12 | # pragma once 13 | 14 | #include 15 | 16 | #endif /* !defined(OPENSSL_KDFERR_H) */ 17 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/md2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_MD2_H 11 | # define OPENSSL_MD2_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_MD2_H 17 | # endif 18 | 19 | # include 20 | 21 | # ifndef OPENSSL_NO_MD2 22 | # include 23 | # ifdef __cplusplus 24 | extern "C" { 25 | # endif 26 | 27 | # define MD2_DIGEST_LENGTH 16 28 | 29 | # if !defined(OPENSSL_NO_DEPRECATED_3_0) 30 | 31 | typedef unsigned char MD2_INT; 32 | 33 | # define MD2_BLOCK 16 34 | 35 | typedef struct MD2state_st { 36 | unsigned int num; 37 | unsigned char data[MD2_BLOCK]; 38 | MD2_INT cksm[MD2_BLOCK]; 39 | MD2_INT state[MD2_BLOCK]; 40 | } MD2_CTX; 41 | # endif 42 | # ifndef OPENSSL_NO_DEPRECATED_3_0 43 | OSSL_DEPRECATEDIN_3_0 const char *MD2_options(void); 44 | OSSL_DEPRECATEDIN_3_0 int MD2_Init(MD2_CTX *c); 45 | OSSL_DEPRECATEDIN_3_0 int MD2_Update(MD2_CTX *c, const unsigned char *data, 46 | size_t len); 47 | OSSL_DEPRECATEDIN_3_0 int MD2_Final(unsigned char *md, MD2_CTX *c); 48 | OSSL_DEPRECATEDIN_3_0 unsigned char *MD2(const unsigned char *d, size_t n, 49 | unsigned char *md); 50 | # endif 51 | 52 | # ifdef __cplusplus 53 | } 54 | # endif 55 | # endif 56 | #endif 57 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/md4.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_MD4_H 11 | # define OPENSSL_MD4_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_MD4_H 17 | # endif 18 | 19 | # include 20 | 21 | # ifndef OPENSSL_NO_MD4 22 | # include 23 | # include 24 | # ifdef __cplusplus 25 | extern "C" { 26 | # endif 27 | 28 | # define MD4_DIGEST_LENGTH 16 29 | 30 | # if !defined(OPENSSL_NO_DEPRECATED_3_0) 31 | 32 | /*- 33 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 34 | * ! MD4_LONG has to be at least 32 bits wide. ! 35 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 36 | */ 37 | # define MD4_LONG unsigned int 38 | 39 | # define MD4_CBLOCK 64 40 | # define MD4_LBLOCK (MD4_CBLOCK/4) 41 | 42 | typedef struct MD4state_st { 43 | MD4_LONG A, B, C, D; 44 | MD4_LONG Nl, Nh; 45 | MD4_LONG data[MD4_LBLOCK]; 46 | unsigned int num; 47 | } MD4_CTX; 48 | # endif 49 | # ifndef OPENSSL_NO_DEPRECATED_3_0 50 | OSSL_DEPRECATEDIN_3_0 int MD4_Init(MD4_CTX *c); 51 | OSSL_DEPRECATEDIN_3_0 int MD4_Update(MD4_CTX *c, const void *data, size_t len); 52 | OSSL_DEPRECATEDIN_3_0 int MD4_Final(unsigned char *md, MD4_CTX *c); 53 | OSSL_DEPRECATEDIN_3_0 unsigned char *MD4(const unsigned char *d, size_t n, 54 | unsigned char *md); 55 | OSSL_DEPRECATEDIN_3_0 void MD4_Transform(MD4_CTX *c, const unsigned char *b); 56 | # endif 57 | 58 | # ifdef __cplusplus 59 | } 60 | # endif 61 | # endif 62 | 63 | #endif 64 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/md5.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_MD5_H 11 | # define OPENSSL_MD5_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_MD5_H 17 | # endif 18 | 19 | # include 20 | 21 | # ifndef OPENSSL_NO_MD5 22 | # include 23 | # include 24 | # ifdef __cplusplus 25 | extern "C" { 26 | # endif 27 | 28 | # define MD5_DIGEST_LENGTH 16 29 | 30 | # if !defined(OPENSSL_NO_DEPRECATED_3_0) 31 | /* 32 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 33 | * ! MD5_LONG has to be at least 32 bits wide. ! 34 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 35 | */ 36 | # define MD5_LONG unsigned int 37 | 38 | # define MD5_CBLOCK 64 39 | # define MD5_LBLOCK (MD5_CBLOCK/4) 40 | 41 | typedef struct MD5state_st { 42 | MD5_LONG A, B, C, D; 43 | MD5_LONG Nl, Nh; 44 | MD5_LONG data[MD5_LBLOCK]; 45 | unsigned int num; 46 | } MD5_CTX; 47 | # endif 48 | # ifndef OPENSSL_NO_DEPRECATED_3_0 49 | OSSL_DEPRECATEDIN_3_0 int MD5_Init(MD5_CTX *c); 50 | OSSL_DEPRECATEDIN_3_0 int MD5_Update(MD5_CTX *c, const void *data, size_t len); 51 | OSSL_DEPRECATEDIN_3_0 int MD5_Final(unsigned char *md, MD5_CTX *c); 52 | OSSL_DEPRECATEDIN_3_0 unsigned char *MD5(const unsigned char *d, size_t n, 53 | unsigned char *md); 54 | OSSL_DEPRECATEDIN_3_0 void MD5_Transform(MD5_CTX *c, const unsigned char *b); 55 | # endif 56 | 57 | # ifdef __cplusplus 58 | } 59 | # endif 60 | # endif 61 | 62 | #endif 63 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/mdc2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_MDC2_H 11 | # define OPENSSL_MDC2_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_MDC2_H 17 | # endif 18 | 19 | # include 20 | 21 | # ifndef OPENSSL_NO_MDC2 22 | # include 23 | # include 24 | # ifdef __cplusplus 25 | extern "C" { 26 | # endif 27 | 28 | # define MDC2_DIGEST_LENGTH 16 29 | 30 | # if !defined(OPENSSL_NO_DEPRECATED_3_0) 31 | 32 | # define MDC2_BLOCK 8 33 | 34 | typedef struct mdc2_ctx_st { 35 | unsigned int num; 36 | unsigned char data[MDC2_BLOCK]; 37 | DES_cblock h, hh; 38 | unsigned int pad_type; /* either 1 or 2, default 1 */ 39 | } MDC2_CTX; 40 | # endif 41 | # ifndef OPENSSL_NO_DEPRECATED_3_0 42 | OSSL_DEPRECATEDIN_3_0 int MDC2_Init(MDC2_CTX *c); 43 | OSSL_DEPRECATEDIN_3_0 int MDC2_Update(MDC2_CTX *c, const unsigned char *data, 44 | size_t len); 45 | OSSL_DEPRECATEDIN_3_0 int MDC2_Final(unsigned char *md, MDC2_CTX *c); 46 | OSSL_DEPRECATEDIN_3_0 unsigned char *MDC2(const unsigned char *d, size_t n, 47 | unsigned char *md); 48 | # endif 49 | 50 | # ifdef __cplusplus 51 | } 52 | # endif 53 | # endif 54 | 55 | #endif 56 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/objectserr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_OBJECTSERR_H 12 | # define OPENSSL_OBJECTSERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * OBJ reason codes. 23 | */ 24 | # define OBJ_R_OID_EXISTS 102 25 | # define OBJ_R_UNKNOWN_NID 101 26 | # define OBJ_R_UNKNOWN_OBJECT_NAME 103 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/ocsperr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_OCSPERR_H 12 | # define OPENSSL_OCSPERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | # ifndef OPENSSL_NO_OCSP 21 | 22 | 23 | /* 24 | * OCSP reason codes. 25 | */ 26 | # define OCSP_R_CERTIFICATE_VERIFY_ERROR 101 27 | # define OCSP_R_DIGEST_ERR 102 28 | # define OCSP_R_DIGEST_NAME_ERR 106 29 | # define OCSP_R_DIGEST_SIZE_ERR 107 30 | # define OCSP_R_ERROR_IN_NEXTUPDATE_FIELD 122 31 | # define OCSP_R_ERROR_IN_THISUPDATE_FIELD 123 32 | # define OCSP_R_MISSING_OCSPSIGNING_USAGE 103 33 | # define OCSP_R_NEXTUPDATE_BEFORE_THISUPDATE 124 34 | # define OCSP_R_NOT_BASIC_RESPONSE 104 35 | # define OCSP_R_NO_CERTIFICATES_IN_CHAIN 105 36 | # define OCSP_R_NO_RESPONSE_DATA 108 37 | # define OCSP_R_NO_REVOKED_TIME 109 38 | # define OCSP_R_NO_SIGNER_KEY 130 39 | # define OCSP_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE 110 40 | # define OCSP_R_REQUEST_NOT_SIGNED 128 41 | # define OCSP_R_RESPONSE_CONTAINS_NO_REVOCATION_DATA 111 42 | # define OCSP_R_ROOT_CA_NOT_TRUSTED 112 43 | # define OCSP_R_SIGNATURE_FAILURE 117 44 | # define OCSP_R_SIGNER_CERTIFICATE_NOT_FOUND 118 45 | # define OCSP_R_STATUS_EXPIRED 125 46 | # define OCSP_R_STATUS_NOT_YET_VALID 126 47 | # define OCSP_R_STATUS_TOO_OLD 127 48 | # define OCSP_R_UNKNOWN_MESSAGE_DIGEST 119 49 | # define OCSP_R_UNKNOWN_NID 120 50 | # define OCSP_R_UNSUPPORTED_REQUESTORNAME_TYPE 129 51 | 52 | # endif 53 | #endif 54 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/opensslconf.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_OPENSSLCONF_H 11 | # define OPENSSL_OPENSSLCONF_H 12 | # pragma once 13 | 14 | # include 15 | # include 16 | 17 | #endif /* OPENSSL_OPENSSLCONF_H */ 18 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/ossl_typ.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | /* 11 | * The original was renamed to 12 | * 13 | * This header file only exists for compatibility reasons with older 14 | * applications which #include . 15 | */ 16 | # include 17 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/pem2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1999-2018 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_PEM2_H 11 | # define OPENSSL_PEM2_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_PEM2_H 17 | # endif 18 | # include 19 | #endif 20 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/pemerr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_PEMERR_H 12 | # define OPENSSL_PEMERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * PEM reason codes. 23 | */ 24 | # define PEM_R_BAD_BASE64_DECODE 100 25 | # define PEM_R_BAD_DECRYPT 101 26 | # define PEM_R_BAD_END_LINE 102 27 | # define PEM_R_BAD_IV_CHARS 103 28 | # define PEM_R_BAD_MAGIC_NUMBER 116 29 | # define PEM_R_BAD_PASSWORD_READ 104 30 | # define PEM_R_BAD_VERSION_NUMBER 117 31 | # define PEM_R_BIO_WRITE_FAILURE 118 32 | # define PEM_R_CIPHER_IS_NULL 127 33 | # define PEM_R_ERROR_CONVERTING_PRIVATE_KEY 115 34 | # define PEM_R_EXPECTING_DSS_KEY_BLOB 131 35 | # define PEM_R_EXPECTING_PRIVATE_KEY_BLOB 119 36 | # define PEM_R_EXPECTING_PUBLIC_KEY_BLOB 120 37 | # define PEM_R_EXPECTING_RSA_KEY_BLOB 132 38 | # define PEM_R_HEADER_TOO_LONG 128 39 | # define PEM_R_INCONSISTENT_HEADER 121 40 | # define PEM_R_KEYBLOB_HEADER_PARSE_ERROR 122 41 | # define PEM_R_KEYBLOB_TOO_SHORT 123 42 | # define PEM_R_MISSING_DEK_IV 129 43 | # define PEM_R_NOT_DEK_INFO 105 44 | # define PEM_R_NOT_ENCRYPTED 106 45 | # define PEM_R_NOT_PROC_TYPE 107 46 | # define PEM_R_NO_START_LINE 108 47 | # define PEM_R_PROBLEMS_GETTING_PASSWORD 109 48 | # define PEM_R_PVK_DATA_TOO_SHORT 124 49 | # define PEM_R_PVK_TOO_SHORT 125 50 | # define PEM_R_READ_KEY 111 51 | # define PEM_R_SHORT_HEADER 112 52 | # define PEM_R_UNEXPECTED_DEK_IV 130 53 | # define PEM_R_UNSUPPORTED_CIPHER 113 54 | # define PEM_R_UNSUPPORTED_ENCRYPTION 114 55 | # define PEM_R_UNSUPPORTED_KEY_COMPONENTS 126 56 | # define PEM_R_UNSUPPORTED_PUBLIC_KEY_TYPE 110 57 | 58 | #endif 59 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/pkcs12err.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_PKCS12ERR_H 12 | # define OPENSSL_PKCS12ERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * PKCS12 reason codes. 23 | */ 24 | # define PKCS12_R_CANT_PACK_STRUCTURE 100 25 | # define PKCS12_R_CONTENT_TYPE_NOT_DATA 121 26 | # define PKCS12_R_DECODE_ERROR 101 27 | # define PKCS12_R_ENCODE_ERROR 102 28 | # define PKCS12_R_ENCRYPT_ERROR 103 29 | # define PKCS12_R_ERROR_SETTING_ENCRYPTED_DATA_TYPE 120 30 | # define PKCS12_R_INVALID_NULL_ARGUMENT 104 31 | # define PKCS12_R_INVALID_NULL_PKCS12_POINTER 105 32 | # define PKCS12_R_INVALID_TYPE 112 33 | # define PKCS12_R_IV_GEN_ERROR 106 34 | # define PKCS12_R_KEY_GEN_ERROR 107 35 | # define PKCS12_R_MAC_ABSENT 108 36 | # define PKCS12_R_MAC_GENERATION_ERROR 109 37 | # define PKCS12_R_MAC_SETUP_ERROR 110 38 | # define PKCS12_R_MAC_STRING_SET_ERROR 111 39 | # define PKCS12_R_MAC_VERIFY_FAILURE 113 40 | # define PKCS12_R_PARSE_ERROR 114 41 | # define PKCS12_R_PKCS12_CIPHERFINAL_ERROR 116 42 | # define PKCS12_R_UNKNOWN_DIGEST_ALGORITHM 118 43 | # define PKCS12_R_UNSUPPORTED_PKCS12_MODE 119 44 | 45 | #endif 46 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/prov_ssl.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2021 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_PROV_SSL_H 11 | # define OPENSSL_PROV_SSL_H 12 | # pragma once 13 | 14 | # ifdef __cplusplus 15 | extern "C" { 16 | # endif 17 | 18 | /* SSL/TLS related defines useful to providers */ 19 | 20 | # define SSL_MAX_MASTER_KEY_LENGTH 48 21 | 22 | # define SSL3_VERSION 0x0300 23 | # define TLS1_VERSION 0x0301 24 | # define TLS1_1_VERSION 0x0302 25 | # define TLS1_2_VERSION 0x0303 26 | # define TLS1_3_VERSION 0x0304 27 | # define DTLS1_VERSION 0xFEFF 28 | # define DTLS1_2_VERSION 0xFEFD 29 | # define DTLS1_BAD_VER 0x0100 30 | 31 | # ifdef __cplusplus 32 | } 33 | # endif 34 | #endif /* OPENSSL_PROV_SSL_H */ 35 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/provider.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_PROVIDER_H 11 | # define OPENSSL_PROVIDER_H 12 | # pragma once 13 | 14 | # include 15 | 16 | # ifdef __cplusplus 17 | extern "C" { 18 | # endif 19 | 20 | /* Set the default provider search path */ 21 | int OSSL_PROVIDER_set_default_search_path(OSSL_LIB_CTX *, const char *path); 22 | 23 | /* Load and unload a provider */ 24 | OSSL_PROVIDER *OSSL_PROVIDER_load(OSSL_LIB_CTX *, const char *name); 25 | OSSL_PROVIDER *OSSL_PROVIDER_try_load(OSSL_LIB_CTX *, const char *name, 26 | int retain_fallbacks); 27 | int OSSL_PROVIDER_unload(OSSL_PROVIDER *prov); 28 | int OSSL_PROVIDER_available(OSSL_LIB_CTX *, const char *name); 29 | int OSSL_PROVIDER_do_all(OSSL_LIB_CTX *ctx, 30 | int (*cb)(OSSL_PROVIDER *provider, void *cbdata), 31 | void *cbdata); 32 | 33 | const OSSL_PARAM *OSSL_PROVIDER_gettable_params(const OSSL_PROVIDER *prov); 34 | int OSSL_PROVIDER_get_params(const OSSL_PROVIDER *prov, OSSL_PARAM params[]); 35 | int OSSL_PROVIDER_self_test(const OSSL_PROVIDER *prov); 36 | int OSSL_PROVIDER_get_capabilities(const OSSL_PROVIDER *prov, 37 | const char *capability, 38 | OSSL_CALLBACK *cb, 39 | void *arg); 40 | 41 | const OSSL_ALGORITHM *OSSL_PROVIDER_query_operation(const OSSL_PROVIDER *prov, 42 | int operation_id, 43 | int *no_cache); 44 | void OSSL_PROVIDER_unquery_operation(const OSSL_PROVIDER *prov, 45 | int operation_id, const OSSL_ALGORITHM *algs); 46 | void *OSSL_PROVIDER_get0_provider_ctx(const OSSL_PROVIDER *prov); 47 | const OSSL_DISPATCH *OSSL_PROVIDER_get0_dispatch(const OSSL_PROVIDER *prov); 48 | 49 | /* Add a built in providers */ 50 | int OSSL_PROVIDER_add_builtin(OSSL_LIB_CTX *, const char *name, 51 | OSSL_provider_init_fn *init_fn); 52 | 53 | /* Information */ 54 | const char *OSSL_PROVIDER_get0_name(const OSSL_PROVIDER *prov); 55 | 56 | # ifdef __cplusplus 57 | } 58 | # endif 59 | 60 | #endif 61 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/rc2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_RC2_H 11 | # define OPENSSL_RC2_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_RC2_H 17 | # endif 18 | 19 | # include 20 | 21 | # ifndef OPENSSL_NO_RC2 22 | # ifdef __cplusplus 23 | extern "C" { 24 | # endif 25 | 26 | # define RC2_BLOCK 8 27 | # define RC2_KEY_LENGTH 16 28 | 29 | # ifndef OPENSSL_NO_DEPRECATED_3_0 30 | typedef unsigned int RC2_INT; 31 | 32 | # define RC2_ENCRYPT 1 33 | # define RC2_DECRYPT 0 34 | 35 | typedef struct rc2_key_st { 36 | RC2_INT data[64]; 37 | } RC2_KEY; 38 | # endif 39 | # ifndef OPENSSL_NO_DEPRECATED_3_0 40 | OSSL_DEPRECATEDIN_3_0 void RC2_set_key(RC2_KEY *key, int len, 41 | const unsigned char *data, int bits); 42 | OSSL_DEPRECATEDIN_3_0 void RC2_ecb_encrypt(const unsigned char *in, 43 | unsigned char *out, RC2_KEY *key, 44 | int enc); 45 | OSSL_DEPRECATEDIN_3_0 void RC2_encrypt(unsigned long *data, RC2_KEY *key); 46 | OSSL_DEPRECATEDIN_3_0 void RC2_decrypt(unsigned long *data, RC2_KEY *key); 47 | OSSL_DEPRECATEDIN_3_0 void RC2_cbc_encrypt(const unsigned char *in, 48 | unsigned char *out, long length, 49 | RC2_KEY *ks, unsigned char *iv, 50 | int enc); 51 | OSSL_DEPRECATEDIN_3_0 void RC2_cfb64_encrypt(const unsigned char *in, 52 | unsigned char *out, long length, 53 | RC2_KEY *schedule, 54 | unsigned char *ivec, 55 | int *num, int enc); 56 | OSSL_DEPRECATEDIN_3_0 void RC2_ofb64_encrypt(const unsigned char *in, 57 | unsigned char *out, long length, 58 | RC2_KEY *schedule, 59 | unsigned char *ivec, 60 | int *num); 61 | # endif 62 | 63 | # ifdef __cplusplus 64 | } 65 | # endif 66 | # endif 67 | 68 | #endif 69 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/rc4.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_RC4_H 11 | # define OPENSSL_RC4_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_RC4_H 17 | # endif 18 | 19 | # include 20 | 21 | # ifndef OPENSSL_NO_RC4 22 | # include 23 | # ifdef __cplusplus 24 | extern "C" { 25 | # endif 26 | 27 | # ifndef OPENSSL_NO_DEPRECATED_3_0 28 | typedef struct rc4_key_st { 29 | RC4_INT x, y; 30 | RC4_INT data[256]; 31 | } RC4_KEY; 32 | # endif 33 | # ifndef OPENSSL_NO_DEPRECATED_3_0 34 | OSSL_DEPRECATEDIN_3_0 const char *RC4_options(void); 35 | OSSL_DEPRECATEDIN_3_0 void RC4_set_key(RC4_KEY *key, int len, 36 | const unsigned char *data); 37 | OSSL_DEPRECATEDIN_3_0 void RC4(RC4_KEY *key, size_t len, 38 | const unsigned char *indata, 39 | unsigned char *outdata); 40 | # endif 41 | 42 | # ifdef __cplusplus 43 | } 44 | # endif 45 | # endif 46 | 47 | #endif 48 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/ripemd.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_RIPEMD_H 11 | # define OPENSSL_RIPEMD_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_RIPEMD_H 17 | # endif 18 | 19 | # include 20 | 21 | # ifndef OPENSSL_NO_RMD160 22 | # include 23 | # include 24 | 25 | # define RIPEMD160_DIGEST_LENGTH 20 26 | 27 | # ifdef __cplusplus 28 | extern "C" { 29 | # endif 30 | # if !defined(OPENSSL_NO_DEPRECATED_3_0) 31 | 32 | # define RIPEMD160_LONG unsigned int 33 | 34 | # define RIPEMD160_CBLOCK 64 35 | # define RIPEMD160_LBLOCK (RIPEMD160_CBLOCK/4) 36 | 37 | typedef struct RIPEMD160state_st { 38 | RIPEMD160_LONG A, B, C, D, E; 39 | RIPEMD160_LONG Nl, Nh; 40 | RIPEMD160_LONG data[RIPEMD160_LBLOCK]; 41 | unsigned int num; 42 | } RIPEMD160_CTX; 43 | # endif 44 | # ifndef OPENSSL_NO_DEPRECATED_3_0 45 | OSSL_DEPRECATEDIN_3_0 int RIPEMD160_Init(RIPEMD160_CTX *c); 46 | OSSL_DEPRECATEDIN_3_0 int RIPEMD160_Update(RIPEMD160_CTX *c, const void *data, 47 | size_t len); 48 | OSSL_DEPRECATEDIN_3_0 int RIPEMD160_Final(unsigned char *md, RIPEMD160_CTX *c); 49 | OSSL_DEPRECATEDIN_3_0 unsigned char *RIPEMD160(const unsigned char *d, size_t n, 50 | unsigned char *md); 51 | OSSL_DEPRECATEDIN_3_0 void RIPEMD160_Transform(RIPEMD160_CTX *c, 52 | const unsigned char *b); 53 | # endif 54 | 55 | # ifdef __cplusplus 56 | } 57 | # endif 58 | # endif 59 | #endif 60 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/srtp.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | /* 11 | * DTLS code by Eric Rescorla 12 | * 13 | * Copyright (C) 2006, Network Resonance, Inc. Copyright (C) 2011, RTFM, Inc. 14 | */ 15 | 16 | #ifndef OPENSSL_SRTP_H 17 | # define OPENSSL_SRTP_H 18 | # pragma once 19 | 20 | # include 21 | # ifndef OPENSSL_NO_DEPRECATED_3_0 22 | # define HEADER_D1_SRTP_H 23 | # endif 24 | 25 | # include 26 | 27 | #ifdef __cplusplus 28 | extern "C" { 29 | #endif 30 | 31 | # define SRTP_AES128_CM_SHA1_80 0x0001 32 | # define SRTP_AES128_CM_SHA1_32 0x0002 33 | # define SRTP_AES128_F8_SHA1_80 0x0003 34 | # define SRTP_AES128_F8_SHA1_32 0x0004 35 | # define SRTP_NULL_SHA1_80 0x0005 36 | # define SRTP_NULL_SHA1_32 0x0006 37 | 38 | /* AEAD SRTP protection profiles from RFC 7714 */ 39 | # define SRTP_AEAD_AES_128_GCM 0x0007 40 | # define SRTP_AEAD_AES_256_GCM 0x0008 41 | 42 | # ifndef OPENSSL_NO_SRTP 43 | 44 | __owur int SSL_CTX_set_tlsext_use_srtp(SSL_CTX *ctx, const char *profiles); 45 | __owur int SSL_set_tlsext_use_srtp(SSL *ssl, const char *profiles); 46 | 47 | __owur STACK_OF(SRTP_PROTECTION_PROFILE) *SSL_get_srtp_profiles(SSL *ssl); 48 | __owur SRTP_PROTECTION_PROFILE *SSL_get_selected_srtp_profile(SSL *s); 49 | 50 | # endif 51 | 52 | #ifdef __cplusplus 53 | } 54 | #endif 55 | 56 | #endif 57 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/ssl2.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_SSL2_H 11 | # define OPENSSL_SSL2_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_SSL2_H 17 | # endif 18 | 19 | #ifdef __cplusplus 20 | extern "C" { 21 | #endif 22 | 23 | # define SSL2_VERSION 0x0002 24 | 25 | # define SSL2_MT_CLIENT_HELLO 1 26 | 27 | #ifdef __cplusplus 28 | } 29 | #endif 30 | #endif 31 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/storeerr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_STOREERR_H 12 | # define OPENSSL_STOREERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * OSSL_STORE reason codes. 23 | */ 24 | # define OSSL_STORE_R_AMBIGUOUS_CONTENT_TYPE 107 25 | # define OSSL_STORE_R_BAD_PASSWORD_READ 115 26 | # define OSSL_STORE_R_ERROR_VERIFYING_PKCS12_MAC 113 27 | # define OSSL_STORE_R_FINGERPRINT_SIZE_DOES_NOT_MATCH_DIGEST 121 28 | # define OSSL_STORE_R_INVALID_SCHEME 106 29 | # define OSSL_STORE_R_IS_NOT_A 112 30 | # define OSSL_STORE_R_LOADER_INCOMPLETE 116 31 | # define OSSL_STORE_R_LOADING_STARTED 117 32 | # define OSSL_STORE_R_NOT_A_CERTIFICATE 100 33 | # define OSSL_STORE_R_NOT_A_CRL 101 34 | # define OSSL_STORE_R_NOT_A_NAME 103 35 | # define OSSL_STORE_R_NOT_A_PRIVATE_KEY 102 36 | # define OSSL_STORE_R_NOT_A_PUBLIC_KEY 122 37 | # define OSSL_STORE_R_NOT_PARAMETERS 104 38 | # define OSSL_STORE_R_NO_LOADERS_FOUND 123 39 | # define OSSL_STORE_R_PASSPHRASE_CALLBACK_ERROR 114 40 | # define OSSL_STORE_R_PATH_MUST_BE_ABSOLUTE 108 41 | # define OSSL_STORE_R_SEARCH_ONLY_SUPPORTED_FOR_DIRECTORIES 119 42 | # define OSSL_STORE_R_UI_PROCESS_INTERRUPTED_OR_CANCELLED 109 43 | # define OSSL_STORE_R_UNREGISTERED_SCHEME 105 44 | # define OSSL_STORE_R_UNSUPPORTED_CONTENT_TYPE 110 45 | # define OSSL_STORE_R_UNSUPPORTED_OPERATION 118 46 | # define OSSL_STORE_R_UNSUPPORTED_SEARCH_TYPE 120 47 | # define OSSL_STORE_R_URI_AUTHORITY_UNSUPPORTED 111 48 | 49 | #endif 50 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/symhacks.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1999-2021 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_SYMHACKS_H 11 | # define OPENSSL_SYMHACKS_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_SYMHACKS_H 17 | # endif 18 | 19 | # include 20 | 21 | /* Case insensitive linking causes problems.... */ 22 | # if defined(OPENSSL_SYS_VMS) 23 | # undef ERR_load_CRYPTO_strings 24 | # define ERR_load_CRYPTO_strings ERR_load_CRYPTOlib_strings 25 | # undef OCSP_crlID_new 26 | # define OCSP_crlID_new OCSP_crlID2_new 27 | 28 | # undef d2i_ECPARAMETERS 29 | # define d2i_ECPARAMETERS d2i_UC_ECPARAMETERS 30 | # undef i2d_ECPARAMETERS 31 | # define i2d_ECPARAMETERS i2d_UC_ECPARAMETERS 32 | # undef d2i_ECPKPARAMETERS 33 | # define d2i_ECPKPARAMETERS d2i_UC_ECPKPARAMETERS 34 | # undef i2d_ECPKPARAMETERS 35 | # define i2d_ECPKPARAMETERS i2d_UC_ECPKPARAMETERS 36 | 37 | # endif 38 | 39 | #endif /* ! defined HEADER_VMS_IDHACKS_H */ 40 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/txt_db.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_TXT_DB_H 11 | # define OPENSSL_TXT_DB_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_TXT_DB_H 17 | # endif 18 | 19 | # include 20 | # include 21 | # include 22 | # include 23 | 24 | # define DB_ERROR_OK 0 25 | # define DB_ERROR_MALLOC 1 26 | # define DB_ERROR_INDEX_CLASH 2 27 | # define DB_ERROR_INDEX_OUT_OF_RANGE 3 28 | # define DB_ERROR_NO_INDEX 4 29 | # define DB_ERROR_INSERT_INDEX_CLASH 5 30 | # define DB_ERROR_WRONG_NUM_FIELDS 6 31 | 32 | #ifdef __cplusplus 33 | extern "C" { 34 | #endif 35 | 36 | typedef OPENSSL_STRING *OPENSSL_PSTRING; 37 | DEFINE_SPECIAL_STACK_OF(OPENSSL_PSTRING, OPENSSL_STRING) 38 | 39 | typedef struct txt_db_st { 40 | int num_fields; 41 | STACK_OF(OPENSSL_PSTRING) *data; 42 | LHASH_OF(OPENSSL_STRING) **index; 43 | int (**qual) (OPENSSL_STRING *); 44 | long error; 45 | long arg1; 46 | long arg2; 47 | OPENSSL_STRING *arg_row; 48 | } TXT_DB; 49 | 50 | TXT_DB *TXT_DB_read(BIO *in, int num); 51 | long TXT_DB_write(BIO *out, TXT_DB *db); 52 | int TXT_DB_create_index(TXT_DB *db, int field, int (*qual) (OPENSSL_STRING *), 53 | OPENSSL_LH_HASHFUNC hash, OPENSSL_LH_COMPFUNC cmp); 54 | void TXT_DB_free(TXT_DB *db); 55 | OPENSSL_STRING *TXT_DB_get_by_index(TXT_DB *db, int idx, 56 | OPENSSL_STRING *value); 57 | int TXT_DB_insert(TXT_DB *db, OPENSSL_STRING *value); 58 | 59 | #ifdef __cplusplus 60 | } 61 | #endif 62 | 63 | #endif 64 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/uierr.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Generated by util/mkerr.pl DO NOT EDIT 3 | * Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved. 4 | * 5 | * Licensed under the Apache License 2.0 (the "License"). You may not use 6 | * this file except in compliance with the License. You can obtain a copy 7 | * in the file LICENSE in the source distribution or at 8 | * https://www.openssl.org/source/license.html 9 | */ 10 | 11 | #ifndef OPENSSL_UIERR_H 12 | # define OPENSSL_UIERR_H 13 | # pragma once 14 | 15 | # include 16 | # include 17 | # include 18 | 19 | 20 | 21 | /* 22 | * UI reason codes. 23 | */ 24 | # define UI_R_COMMON_OK_AND_CANCEL_CHARACTERS 104 25 | # define UI_R_INDEX_TOO_LARGE 102 26 | # define UI_R_INDEX_TOO_SMALL 103 27 | # define UI_R_NO_RESULT_BUFFER 105 28 | # define UI_R_PROCESSING_ERROR 107 29 | # define UI_R_RESULT_TOO_LARGE 100 30 | # define UI_R_RESULT_TOO_SMALL 101 31 | # define UI_R_SYSASSIGN_ERROR 109 32 | # define UI_R_SYSDASSGN_ERROR 110 33 | # define UI_R_SYSQIOW_ERROR 111 34 | # define UI_R_UNKNOWN_CONTROL_COMMAND 106 35 | # define UI_R_UNKNOWN_TTYGET_ERRNO_VALUE 108 36 | # define UI_R_USER_DATA_DUPLICATION_UNSUPPORTED 112 37 | 38 | #endif 39 | -------------------------------------------------------------------------------- /C/openssl-3.0.4/whrlpool.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2005-2020 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | #ifndef OPENSSL_WHRLPOOL_H 11 | # define OPENSSL_WHRLPOOL_H 12 | # pragma once 13 | 14 | # include 15 | # ifndef OPENSSL_NO_DEPRECATED_3_0 16 | # define HEADER_WHRLPOOL_H 17 | # endif 18 | 19 | # include 20 | 21 | # ifndef OPENSSL_NO_WHIRLPOOL 22 | # include 23 | # include 24 | # ifdef __cplusplus 25 | extern "C" { 26 | # endif 27 | 28 | # define WHIRLPOOL_DIGEST_LENGTH (512/8) 29 | 30 | # if !defined(OPENSSL_NO_DEPRECATED_3_0) 31 | 32 | # define WHIRLPOOL_BBLOCK 512 33 | # define WHIRLPOOL_COUNTER (256/8) 34 | 35 | typedef struct { 36 | union { 37 | unsigned char c[WHIRLPOOL_DIGEST_LENGTH]; 38 | /* double q is here to ensure 64-bit alignment */ 39 | double q[WHIRLPOOL_DIGEST_LENGTH / sizeof(double)]; 40 | } H; 41 | unsigned char data[WHIRLPOOL_BBLOCK / 8]; 42 | unsigned int bitoff; 43 | size_t bitlen[WHIRLPOOL_COUNTER / sizeof(size_t)]; 44 | } WHIRLPOOL_CTX; 45 | # endif 46 | # ifndef OPENSSL_NO_DEPRECATED_3_0 47 | OSSL_DEPRECATEDIN_3_0 int WHIRLPOOL_Init(WHIRLPOOL_CTX *c); 48 | OSSL_DEPRECATEDIN_3_0 int WHIRLPOOL_Update(WHIRLPOOL_CTX *c, 49 | const void *inp, size_t bytes); 50 | OSSL_DEPRECATEDIN_3_0 void WHIRLPOOL_BitUpdate(WHIRLPOOL_CTX *c, 51 | const void *inp, size_t bits); 52 | OSSL_DEPRECATEDIN_3_0 int WHIRLPOOL_Final(unsigned char *md, WHIRLPOOL_CTX *c); 53 | OSSL_DEPRECATEDIN_3_0 unsigned char *WHIRLPOOL(const void *inp, size_t bytes, 54 | unsigned char *md); 55 | # endif 56 | 57 | # ifdef __cplusplus 58 | } 59 | # endif 60 | # endif 61 | 62 | #endif 63 | -------------------------------------------------------------------------------- /dub.sdl: -------------------------------------------------------------------------------- 1 | name "openssl" 2 | description "Deimos bindings for the OpenSSL cryptographic library" 3 | homepage "http://www.openssl.org/" 4 | license "OpenSSL or SSLeay" 5 | 6 | configuration "library-autodetect" { 7 | targetType "sourceLibrary" 8 | libs "ssl" "crypto" platform="posix" 9 | excludedSourceFiles "source/deimos/openssl/applink.d" 10 | preGenerateCommands `$DC -run scripts/generate_version.d` platform="posix-ldc" 11 | preGenerateCommands `$DC -run scripts/generate_version.d` platform="posix-dmd" 12 | preGenerateCommands `$DC scripts/generate_version.d -o generate_version` `./generate_version` platform="posix-gdc" 13 | postGenerateCommands `rm generate_version` platform="posix-gdc" 14 | versions `DeimosOpenSSLAutoDetect` 15 | } 16 | 17 | // Requires a `versions "DeimosOpenSSL_3_0"` or `versions "DeimosOpenSSL_1_#_#"` 18 | // directive in a dependent package to select the right OpenSSL version 19 | configuration "library-manual-version" { 20 | targetType "sourceLibrary" 21 | libs "ssl" "crypto" platform="posix" 22 | excludedSourceFiles "source/deimos/openssl/applink.d" 23 | } 24 | 25 | // Includes a module to replace `applink.c` as described in: 26 | // https://www.openssl.org/docs/manmaster/man3/OPENSSL_Applink.html 27 | configuration "library-applink" { 28 | targetType "sourceLibrary" 29 | libs "ssl" "crypto" platform="posix" 30 | } 31 | 32 | // See the "library-manual-version" configuration for how to 33 | // select the OpenSSL version 34 | configuration "library-manual-link" { 35 | targetType "sourceLibrary" 36 | excludedSourceFiles "source/deimos/openssl/applink.d" 37 | } 38 | -------------------------------------------------------------------------------- /examples/sslecho/.gitignore: -------------------------------------------------------------------------------- 1 | .dub 2 | docs.json 3 | __dummy.html 4 | docs/ 5 | /sslecho 6 | sslecho.so 7 | sslecho.dylib 8 | sslecho.dll 9 | sslecho.a 10 | sslecho.lib 11 | sslecho-test-* 12 | *.exe 13 | *.o 14 | *.obj 15 | *.lst 16 | -------------------------------------------------------------------------------- /examples/sslecho/README.md: -------------------------------------------------------------------------------- 1 | # sslecho: A simple echo server 2 | 3 | This example was ported from [the official OpenSSL repository](https://github.com/openssl/openssl/tree/ef8040bce02758de86fc55412ee4ac9102f9ffab/demos/sslecho). 4 | The certificates can be generated using: 5 | ```shell 6 | openssl req -batch -newkey rsa:4096 -x509 -sha256 -days 3650 -subj "/C=FR/CN=localhost" -nodes -out cert.pem -keyout key.pem 7 | ``` 8 | And 'localhost' was used as domain. 9 | 10 | The server and client need to be called with the following commands (respectively): 11 | ```shell 12 | $ ./sslecho s # Starts the server 13 | $ ./sslecho c localhost 14 | ``` 15 | Note that using `127.0.0.1` will not work. -------------------------------------------------------------------------------- /examples/sslecho/dub.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "sslecho", 3 | "description": "Port of OpenSSL demo of the same name", 4 | 5 | "dependencies": { 6 | "openssl": { 7 | "path": "../../" 8 | } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /examples/sslecho/test.d: -------------------------------------------------------------------------------- 1 | /// Runs the server and the client in a fork for CI 2 | module test; 3 | 4 | import core.thread; 5 | import core.time; 6 | 7 | import std.process; 8 | import std.stdio; 9 | 10 | int main () 11 | { 12 | auto serverPid = spawnProcess([ "./sslecho", "s" ]); 13 | writeln("Server has been spawned"); 14 | Thread.sleep(3.seconds); 15 | auto clientPid = spawnShell(`echo "Hello World\nkill" | ./sslecho c localhost`); 16 | writeln("Client has been spawned"); 17 | Thread.sleep(3.seconds); 18 | 19 | if (auto res = clientPid.wait()) 20 | return res; 21 | if (auto res = serverPid.wait()) 22 | return res; 23 | 24 | return 0; 25 | } 26 | -------------------------------------------------------------------------------- /source/deimos/openssl/_d_util.di: -------------------------------------------------------------------------------- 1 | module deimos.openssl._d_util; 2 | 3 | public import core.stdc.config; 4 | version (OPENSSL_NO_FP_API) {} else { public import core.stdc.stdio; } 5 | 6 | package: 7 | 8 | // Very boiled down version because we cannot use std.traits without causing 9 | // DMD to create a ModuleInfo reference for _d_util, which would require users 10 | // to include the Deimos files in the build. 11 | template ExternC(T) if (is(typeof(*(T.init)) P == function)) { 12 | static if (is(typeof(*(T.init)) R == return)) { 13 | static if (is(typeof(*(T.init)) P == function)) { 14 | alias extern(C) R function(P) ExternC; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /source/deimos/openssl/comp.di: -------------------------------------------------------------------------------- 1 | 2 | module deimos.openssl.comp; 3 | 4 | import deimos.openssl._d_util; 5 | 6 | import deimos.openssl.bio; // Needed for BIO_METHOD. 7 | 8 | public import deimos.openssl.crypto; 9 | 10 | extern (C): 11 | nothrow: 12 | 13 | alias comp_ctx_st COMP_CTX; 14 | 15 | struct comp_method_st { 16 | int type; /* NID for compression library */ 17 | const(char)* name; /* A text string to identify the library */ 18 | ExternC!(int function(COMP_CTX* ctx)) init_; 19 | ExternC!(void function(COMP_CTX* ctx)) finish; 20 | ExternC!(int function(COMP_CTX* ctx, 21 | ubyte* out_, uint olen, 22 | ubyte* in_, uint ilen)) compress; 23 | ExternC!(int function(COMP_CTX* ctx, 24 | ubyte* out_, uint olen, 25 | ubyte* in_, uint ilen)) expand; 26 | /* The following two do NOTHING, but are kept for backward compatibility */ 27 | ExternC!(c_long function()) ctrl; 28 | ExternC!(c_long function()) callback_ctrl; 29 | } 30 | alias comp_method_st COMP_METHOD; 31 | 32 | struct comp_ctx_st 33 | { 34 | COMP_METHOD* meth; 35 | c_ulong compress_in; 36 | c_ulong compress_out; 37 | c_ulong expand_in; 38 | c_ulong expand_out; 39 | 40 | CRYPTO_EX_DATA ex_data; 41 | }; 42 | 43 | 44 | COMP_CTX* COMP_CTX_new(COMP_METHOD* meth); 45 | void COMP_CTX_free(COMP_CTX* ctx); 46 | int COMP_compress_block(COMP_CTX* ctx, ubyte* out_, int olen, 47 | ubyte* in_, int ilen); 48 | int COMP_expand_block(COMP_CTX* ctx, ubyte* out_, int olen, 49 | ubyte* in_, int ilen); 50 | COMP_METHOD* COMP_rle(); 51 | COMP_METHOD* COMP_zlib(); 52 | void COMP_zlib_cleanup(); 53 | 54 | // #ifdef ZLIB 55 | BIO_METHOD* BIO_f_zlib(); 56 | // #endif 57 | 58 | /* BEGIN ERROR CODES */ 59 | /* The following lines are auto generated by the script mkerr.pl. Any changes 60 | * made after this point may be overwritten when the script is next run. 61 | */ 62 | void ERR_load_COMP_strings(); 63 | 64 | /* Error codes for the COMP functions. */ 65 | 66 | /* Function codes. */ 67 | enum COMP_F_BIO_ZLIB_FLUSH = 99; 68 | enum COMP_F_BIO_ZLIB_NEW = 100; 69 | enum COMP_F_BIO_ZLIB_READ = 101; 70 | enum COMP_F_BIO_ZLIB_WRITE = 102; 71 | 72 | /* Reason codes. */ 73 | enum COMP_R_ZLIB_DEFLATE_ERROR = 99; 74 | enum COMP_R_ZLIB_INFLATE_ERROR = 100; 75 | enum COMP_R_ZLIB_NOT_SUPPORTED = 101; 76 | -------------------------------------------------------------------------------- /source/deimos/openssl/ebcdic.di: -------------------------------------------------------------------------------- 1 | /* crypto/ebcdic.h */ 2 | 3 | module deimos.openssl.ebcdic; 4 | 5 | import deimos.openssl._d_util; 6 | 7 | /* Avoid name clashes with other applications */ 8 | alias _openssl_os_toascii os_toascii; 9 | alias _openssl_os_toebcdic os_toebcdic; 10 | alias _openssl_ebcdic2ascii ebcdic2ascii; 11 | alias _openssl_ascii2ebcdic ascii2ebcdic; 12 | 13 | extern const ubyte[256] _openssl_os_toascii; 14 | extern const ubyte[256] _openssl_os_toebcdic; 15 | void* _openssl_ebcdic2ascii(void* dest, const(void)* srce, size_t count); 16 | void* _openssl_ascii2ebcdic(void* dest, const(void)* srce, size_t count); 17 | -------------------------------------------------------------------------------- /source/deimos/openssl/ossl_typ.di: -------------------------------------------------------------------------------- 1 | /** 2 | * The original was renamed to 3 | * 4 | * Upstream provides a compatibility module, and so do we. 5 | * See PR https://github.com/openssl/openssl/pull/9333 6 | * 7 | * Copyright 2019 The OpenSSL Project Authors. All Rights Reserved. 8 | * 9 | * Licensed under the Apache License 2.0 (the "License"). You may not use 10 | * this file except in compliance with the License. You can obtain a copy 11 | * in the file LICENSE in the source distribution or at 12 | * https://www.openssl.org/source/license.html 13 | */ 14 | module deimos.openssl.ossl_typ; 15 | 16 | public import deimos.openssl.types; 17 | -------------------------------------------------------------------------------- /source/deimos/openssl/prov_ssl.di: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2021 The OpenSSL Project Authors. All Rights Reserved. 3 | * 4 | * Licensed under the Apache License 2.0 (the "License"). You may not use 5 | * this file except in compliance with the License. You can obtain a copy 6 | * in the file LICENSE in the source distribution or at 7 | * https://www.openssl.org/source/license.html 8 | */ 9 | 10 | module deimos.openssl.prov_ssl; 11 | 12 | import deimos.openssl.opensslv; 13 | 14 | static if (OPENSSL_VERSION_AT_LEAST(3, 0, 0)) 15 | { 16 | /* SSL/TLS related defines useful to providers */ 17 | 18 | enum SSL_MAX_MASTER_KEY_LENGTH = 48; 19 | 20 | enum SSL3_VERSION = 0x0300; 21 | enum TLS1_VERSION = 0x0301; 22 | enum TLS1_1_VERSION = 0x0302; 23 | enum TLS1_2_VERSION = 0x0303; 24 | enum TLS1_3_VERSION = 0x0304; 25 | enum DTLS1_VERSION = 0xFEFF; 26 | enum DTLS1_2_VERSION = 0xFEFD; 27 | enum DTLS1_BAD_VER = 0x0100; 28 | } 29 | -------------------------------------------------------------------------------- /source/deimos/openssl/whrlpool.di: -------------------------------------------------------------------------------- 1 | module deimos.openssl.whrlpool; 2 | 3 | import deimos.openssl._d_util; 4 | 5 | public import deimos.openssl.e_os2; 6 | import core.stdc.config; 7 | 8 | extern (C): 9 | nothrow: 10 | 11 | enum WHIRLPOOL_DIGEST_LENGTH = (512/8); 12 | enum WHIRLPOOL_BBLOCK = 512; 13 | enum WHIRLPOOL_COUNTER = (256/8); 14 | 15 | struct WHIRLPOOL_CTX { 16 | union H_ { 17 | ubyte[WHIRLPOOL_DIGEST_LENGTH] c; 18 | /* double q is here to ensure 64-bit alignment */ 19 | double[WHIRLPOOL_DIGEST_LENGTH/double.sizeof] q; 20 | } 21 | H_ H; 22 | ubyte[WHIRLPOOL_BBLOCK/8] data; 23 | uint bitoff; 24 | size_t[WHIRLPOOL_COUNTER/size_t.sizeof] bitlen; 25 | }; 26 | 27 | version(OPENSSL_NO_WHIRLPOOL) {} else { 28 | version(OPENSSL_FIPS) { 29 | int private_WHIRLPOOL_Init(WHIRLPOOL_CTX* c); 30 | } 31 | int WHIRLPOOL_Init (WHIRLPOOL_CTX* c); 32 | int WHIRLPOOL_Update (WHIRLPOOL_CTX* c,const(void)* inp,size_t bytes); 33 | void WHIRLPOOL_BitUpdate(WHIRLPOOL_CTX* c,const(void)* inp,size_t bits); 34 | int WHIRLPOOL_Final (ubyte* md,WHIRLPOOL_CTX* c); 35 | ubyte* WHIRLPOOL(const(void)* inp,size_t bytes,ubyte* md); 36 | } 37 | --------------------------------------------------------------------------------