From 957235cf19a691360c720f7913672adda4258ed0 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 7 Oct 2018 11:03:14 +0100 Subject: gentoo resync : 07.10.2018 --- dev-lua/lua-openssl/Manifest | 7 +- .../files/0001-fix-libressl-compat.patch | 433 +++++++++++++++++++++ dev-lua/lua-openssl/lua-openssl-0.7.3.ebuild | 60 +++ dev-lua/lua-openssl/metadata.xml | 9 +- 4 files changed, 507 insertions(+), 2 deletions(-) create mode 100644 dev-lua/lua-openssl/files/0001-fix-libressl-compat.patch create mode 100644 dev-lua/lua-openssl/lua-openssl-0.7.3.ebuild (limited to 'dev-lua/lua-openssl') diff --git a/dev-lua/lua-openssl/Manifest b/dev-lua/lua-openssl/Manifest index be21660b2886..f89040516b9f 100644 --- a/dev-lua/lua-openssl/Manifest +++ b/dev-lua/lua-openssl/Manifest @@ -1,4 +1,9 @@ +AUX 0001-fix-libressl-compat.patch 14675 BLAKE2B a90784a7925c5f3eca792d54e60f6b2d56e983f6f72c3a43cc9092242a6f7dac59c33e558d854600a107075c07b412e517ddfd45b902d426f4ec7d7ffafb2d0e SHA512 ebd92ba95304883950719a56466c2abc230b5d77fbf9c58925e52e840089517b5f2c745b27b327ff4fa81b5b3e8908d4cebbafdbf6ba641c2b0fc866f278f966 AUX lua-openssl-0.4.1-Makefile.patch 3494 BLAKE2B e007800b599eb7f979fa23ffed4a436f9804c82ec8e4c98307192cc6e25c8c4571bfcf803a99bc6dbf3ac4f05217b7639423e32ce4ac8c73a3a31f25daf73062 SHA512 bc5b4c2dfd95b82bcdef0e0f5467af9249365db73b39ee416795140be95a89c0cc968507d62f9b9424f3a492429a49153bed5f7706a2a878430e6af41be38505 DIST lua-openssl-0.4.1.tar.gz 363525 BLAKE2B cd2222241f742421c31eb4334a472bdd79b3b348210f02a5d4275163a3d57ea6c13adf894aa9aeb24266a8bedf839aadc3c3923bb65d075963b1810581629fb4 SHA512 c6deda86f77f9d6de1863611db9eb82506ea9789ec0425cb40cdb7d142d53aa633d53e1446b7eeb464636261385822d9cedc841bd35163931cc3758e7c3a308d +DIST lua-openssl-0.7.3.tar.gz 383743 BLAKE2B 2709eed607e6d752488cacd5b96ee4a845f1ec13948fc7e40e45af968f240579b5d96ab69380f87d7edfc8a55aa44b099e9a592891f78a7928d172f5abcbc9fb SHA512 00eea8d4d04e167456a7602ae111cb768db61f7bdf9e0056c424bdcd67618811cd304543f95ecb273c66c6b41779e2fe721cb43bc332765ce77effb6245edbe2 +DIST lua-openssl-aux-b56f6937096acea34ddf241ec7ea08ac52414d18.tar.gz 3684 BLAKE2B 78e92c6cc1c2a29b00a9179db71a9404aff40a0e844f2f092b7868bbf98b6f3fa9519c63a2c38304ce2928b007bd4c015c5afa66ca32b1646035ebb949b3c655 SHA512 ba1eaf7c6b58fde48f47146d6c773368484ea10a229d6a45f317bda8d8cc21829ceda68071685f1b071e150936362b934b90532344ebb266febcc0efa45904f4 +DIST lua-openssl-compat-daebe77a2f498817713df37f0bb316db1d82222f.tar.gz 51418 BLAKE2B 1d04684e6b6d850bdf6bd3165a90c6a08bd93b757d91e387da152bcb3fc4756db5c16f3cc12ecf33bcdd647742c7923cc2e72627beb5527c5e9dfbfd63c147ba SHA512 60ec9ecfc4e4ad47b6a8189ffb1e7c83fe8b9e9df13cb91bf33725905ab72bff3d3009e8ad04fb73fd7255facdbb8279f20bfd160aee89b12c25431786eaca14 EBUILD lua-openssl-0.4.1-r1.ebuild 1109 BLAKE2B 098681960488aa3c080eab0feebce74262ee90878dd0a0e04f55b80104c68212e2175deec6430c55a796e587c5265fce5831b66a359d5dd8e3465633d1d21548 SHA512 501e5d001021d0cf8ace8ba668f6e7b4880a0cb932573e6444ab0dba959c5116b51e700f48cfc08d3219821878a87b61720596ca2de99a387bc3fc8c9470a5dd -MISC metadata.xml 249 BLAKE2B 3ab35857c3c6e5cea39d8d6d3b54fdfefd9877895c470c3ca2cfbb50a298410842de32514bf22d823f789aa09b1bd06a8e35f7282359077324737ec01a7dda25 SHA512 4a88e5a29b58bf05ab0d5ba495f472d5642c757067e19ee24ba751e2e3df458b308714f3744f82b54004ab87289eb33d57b78d0785c99eb08f079e9d3f0f5608 +EBUILD lua-openssl-0.7.3.ebuild 1830 BLAKE2B 1ecfaaa56fd83dfa222fdd53a78c37674b3c3907af61d22707cbf55ab6dcb07b2f011852bc286f2bd1390fb01cf4677cac1a76bab8813916e16acc74ed65a3f9 SHA512 f05c8db1f70cb24e591d45a800da2503cc81488d11dfb88ed19703b6734cffbe5a42c0b87c8fbea12b07590b7b4f20db5faca70a79263ff29e722de99b4876de +MISC metadata.xml 450 BLAKE2B 6308bdf6f3938b3fef9178572471418882e1777bcb740c537023e03f007d46459bb4142783315376d4c9ae59d7884e138381c91e9517e07c5fb061152f11730e SHA512 9bd34c3cce2d9e9ec2ad4529afd569161416e6ae4e519c392957bd735e398ed4445a4ffaad8215bed2073481390d1f2a61b4ade3879de28152196db1107764e9 diff --git a/dev-lua/lua-openssl/files/0001-fix-libressl-compat.patch b/dev-lua/lua-openssl/files/0001-fix-libressl-compat.patch new file mode 100644 index 000000000000..19b0539c0820 --- /dev/null +++ b/dev-lua/lua-openssl/files/0001-fix-libressl-compat.patch @@ -0,0 +1,433 @@ +From 44d5360d0caed1f4f364691f789fe825fcd17a3e Mon Sep 17 00:00:00 2001 +From: crito +Date: Mon, 1 Oct 2018 20:10:05 +0200 +Subject: [PATCH] fix libressl compat + +add conditions to build with libressl and add missing functions. +backported from upstream repo. +--- + src/compat.c | 11 ++++++++--- + src/digest.c | 2 +- + src/ec.c | 2 +- + src/engine.c | 10 +++++----- + src/lhash.c | 7 ++++--- + src/openssl.c | 12 ++++++++++-- + src/ots.c | 5 +++++ + src/pkcs7.c | 24 ++++++++++++------------ + src/private.h | 7 ++++--- + src/sm2.c | 2 +- + src/srp.c | 3 ++- + src/x509.c | 2 +- + 12 files changed, 54 insertions(+), 33 deletions(-) + +diff --git a/src/compat.c b/src/compat.c +index cc4cc21..cc45845 100644 +--- a/src/compat.c ++++ b/src/compat.c +@@ -5,7 +5,7 @@ + #include "openssl.h" + #include "private.h" + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + int BIO_up_ref(BIO *b) + { + CRYPTO_add(&b->references, 1, CRYPTO_LOCK_BIO); +@@ -16,6 +16,11 @@ int X509_up_ref(X509 *x) + CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509); + return 1; + } ++int X509_CRL_up_ref(X509_CRL *x) ++{ ++ int refs = CRYPTO_add(&x->references, 1, CRYPTO_LOCK_X509_CRL); ++ return (refs > 1) ? 1 : 0; ++} + int X509_STORE_up_ref(X509_STORE *s) + { + CRYPTO_add(&s->references, 1, CRYPTO_LOCK_X509_STORE); +@@ -464,7 +469,7 @@ const ASN1_BIT_STRING *TS_STATUS_INFO_get0_failure_info(const TS_STATUS_INFO *a) + return a->failure_info; + } + +-#if OPENSSL_VERSION_NUMBER < 0x10002000L ++#if OPENSSL_VERSION_NUMBER < 0x10002000L || defined(LIBRESSL_VERSION_NUMBER) + int i2d_re_X509_tbs(X509 *x, unsigned char **pp) + { + x->cert_info->enc.modified = 1; +@@ -527,4 +532,4 @@ unsigned char *TS_VERIFY_CTX_set_imprint(TS_VERIFY_CTX *ctx, + return ctx->imprint; + } + +-#endif /* < 1.1.0 */ +\ No newline at end of file ++#endif /* < 1.1.0 */ +diff --git a/src/digest.c b/src/digest.c +index 02e8fe1..0dcf65b 100644 +--- a/src/digest.c ++++ b/src/digest.c +@@ -468,7 +468,7 @@ restore md data + static LUA_FUNCTION(openssl_digest_ctx_data) + { + EVP_MD_CTX *ctx = CHECK_OBJECT(1, EVP_MD_CTX, "openssl.evp_digest_ctx"); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + if (lua_isnone(L, 2)) + { + lua_pushlstring(L, ctx->md_data, ctx->digest->ctx_size); +diff --git a/src/ec.c b/src/ec.c +index f0d2b6b..5db32db 100644 +--- a/src/ec.c ++++ b/src/ec.c +@@ -611,7 +611,7 @@ static int openssl_ecdsa_set_method(lua_State *L) + { + EC_KEY *ec = CHECK_OBJECT(1, EC_KEY, "openssl.ec_key"); + ENGINE *e = CHECK_OBJECT(2, ENGINE, "openssl.engine"); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + const ECDSA_METHOD *m = ENGINE_get_ECDSA(e); + if (m) { + int r = ECDSA_set_method(ec, m); +diff --git a/src/engine.c b/src/engine.c +index 1a26d8b..f12ca53 100644 +--- a/src/engine.c ++++ b/src/engine.c +@@ -14,7 +14,7 @@ enum + { + TYPE_RSA, + TYPE_DSA, +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + TYPE_ECDH, + TYPE_ECDSA, + #else +@@ -24,7 +24,7 @@ enum + TYPE_RAND, + TYPE_CIPHERS, + TYPE_DIGESTS, +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + TYPE_STORE, + #else + TYPE_PKEY_METHODS, +@@ -150,7 +150,7 @@ static int openssl_engine_register(lua_State*L) + else + ENGINE_register_DSA(eng); + break; +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + case TYPE_ECDH: + if (unregister) + ENGINE_unregister_ECDH(eng); +@@ -183,7 +183,7 @@ static int openssl_engine_register(lua_State*L) + else + ENGINE_register_RAND(eng); + break; +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + case TYPE_STORE: + if (unregister) + ENGINE_unregister_STORE(eng); +@@ -392,7 +392,7 @@ static int openssl_engine_set_default(lua_State*L) + case TYPE_DSA: + ret = ENGINE_set_default_DSA(eng); + break; +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + case TYPE_ECDH: + ret = ENGINE_set_default_ECDH(eng); + break; +diff --git a/src/lhash.c b/src/lhash.c +index 564bb52..8057efb 100644 +--- a/src/lhash.c ++++ b/src/lhash.c +@@ -130,21 +130,22 @@ static void dump_value_doall_arg(CONF_VALUE *a, lua_State *L) + } + } + +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) + IMPLEMENT_LHASH_DOALL_ARG_CONST(CONF_VALUE, lua_State); + #elif OPENSSL_VERSION_NUMBER >= 0x10000002L + static IMPLEMENT_LHASH_DOALL_ARG_FN(dump_value, CONF_VALUE, lua_State) + #endif ++#if !defined(LIBRESSL_VERSION_NUMBER) + #define LHM_lh_doall_arg(type, lh, fn, arg_type, arg) \ + lh_doall_arg(CHECKED_LHASH_OF(type, lh), fn, CHECKED_PTR_OF(arg_type, arg)) +- ++#endif + + static LUA_FUNCTION(openssl_lhash_parse) + { + LHASH* lhash = CHECK_OBJECT(1, LHASH, "openssl.lhash"); + + lua_newtable(L); +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) + lh_CONF_VALUE_doall_lua_State(lhash, dump_value_doall_arg, L); + #elif OPENSSL_VERSION_NUMBER >= 0x10000002L + lh_CONF_VALUE_doall_arg(lhash, LHASH_DOALL_ARG_FN(dump_value), lua_State, L); +diff --git a/src/openssl.c b/src/openssl.c +index 994c22b..debea63 100644 +--- a/src/openssl.c ++++ b/src/openssl.c +@@ -338,6 +338,9 @@ get FIPS mode + */ + static int openssl_fips_mode(lua_State *L) + { ++#if defined(LIBRESSL_VERSION_NUMBER) ++ return 0; ++#else + int ret =0, on = 0; + if(lua_isnone(L, 1)) + { +@@ -353,6 +356,7 @@ static int openssl_fips_mode(lua_State *L) + else + ret = openssl_pushresult(L, ret); + return ret; ++#endif + } + + #ifndef OPENSSL_NO_CRYPTO_MDEBUG +@@ -405,7 +409,9 @@ void CRYPTO_thread_cleanup(void); + + static int luaclose_openssl(lua_State *L) + { ++#if !defined(LIBRESSL_VERSION_NUMBER) + FIPS_mode_set(0); ++#endif + #if defined(OPENSSL_THREADS) + CRYPTO_thread_cleanup(); + #endif +@@ -421,7 +427,7 @@ static int luaclose_openssl(lua_State *L) + CRYPTO_cleanup_all_ex_data(); + #ifndef OPENSSL_NO_CRYPTO_MDEBUG + #if !(defined(OPENSSL_NO_STDIO) || defined(OPENSSL_NO_FP_API)) +-#if OPENSSL_VERSION_NUMBER < 0x10101000L ++#if OPENSSL_VERSION_NUMBER < 0x10101000L || defined(LIBRESSL_VERSION_NUMBER) + CRYPTO_mem_leaks_fp(stderr); + #else + if(CRYPTO_mem_leaks_fp(stderr)!=1) +@@ -541,13 +547,15 @@ LUALIB_API int luaopen_openssl(lua_State*L) + luaopen_dh(L); + lua_setfield(L, -2, "dh"); + +-#if (OPENSSL_VERSION_NUMBER >= 0x10101007L) && !defined(OPENSSL_NO_SM2) ++#if (OPENSSL_VERSION_NUMBER >= 0x10101007L) && !defined(OPENSSL_NO_SM2) && !defined(LIBRESSL_VERSION_NUMBER) + luaopen_sm2(L); + lua_setfield(L, -2, "sm2"); + #endif + ++#if !defined(LIBRESSL_VERSION_NUMBER) + luaopen_srp(L); + lua_setfield(L, -2, "srp"); ++#endif + + #ifdef ENABLE_OPENSSL_GLOBAL + lua_pushvalue(L, -1); +diff --git a/src/ots.c b/src/ots.c +index 6b75946..762d17e 100644 +--- a/src/ots.c ++++ b/src/ots.c +@@ -1265,7 +1265,12 @@ static LUA_FUNCTION(openssl_ts_resp_ctx_set_time_cb) + arg->cb_arg = luaL_ref(L, LUA_REGISTRYINDEX); + + openssl_valueset(L, ctx, time_cb_key); ++#if defined(LIBRESSL_VERSION_NUMBER) ++ ctx->time_cb = openssl_time_cb; ++ ctx->time_cb_data = L; ++#else + TS_RESP_CTX_set_time_cb(ctx, openssl_time_cb, L); ++#endif + return 0; + } + +diff --git a/src/pkcs7.c b/src/pkcs7.c +index f043c86..f0e5221 100644 +--- a/src/pkcs7.c ++++ b/src/pkcs7.c +@@ -346,7 +346,7 @@ static int openssl_pkcs7_dataFinal(PKCS7 *p7, BIO *bio) + os = p7->d.signed_and_enveloped->enc_data->enc_data; + if (!os) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + os = M_ASN1_OCTET_STRING_new(); + #else + os = ASN1_OCTET_STRING_new(); +@@ -364,7 +364,7 @@ static int openssl_pkcs7_dataFinal(PKCS7 *p7, BIO *bio) + os = p7->d.enveloped->enc_data->enc_data; + if (!os) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + os = M_ASN1_OCTET_STRING_new(); + #else + os = ASN1_OCTET_STRING_new(); +@@ -383,7 +383,7 @@ static int openssl_pkcs7_dataFinal(PKCS7 *p7, BIO *bio) + /* If detached data then the content is excluded */ + if (PKCS7_type_is_data(p7->d.sign->contents) && p7->detached) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + M_ASN1_OCTET_STRING_free(os); + #else + ASN1_OCTET_STRING_free(os); +@@ -398,7 +398,7 @@ static int openssl_pkcs7_dataFinal(PKCS7 *p7, BIO *bio) + /* If detached data then the content is excluded */ + if (PKCS7_type_is_data(p7->d.digest->contents) && p7->detached) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + M_ASN1_OCTET_STRING_free(os); + #else + ASN1_OCTET_STRING_free(os); +@@ -474,7 +474,7 @@ static int openssl_pkcs7_dataFinal(PKCS7 *p7, BIO *bio) + goto err; + if (!EVP_DigestFinal_ex(mdc, md_data, &md_len)) + goto err; +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + M_ASN1_OCTET_STRING_set(p7->d.digest->digest, md_data, md_len); + #else + ASN1_OCTET_STRING_set(p7->d.digest->digest, md_data, md_len); +@@ -577,7 +577,7 @@ int PKCS7_signatureVerify_digest(PKCS7 *p7, PKCS7_SIGNER_INFO *si, X509 *x509, + + md_type = OBJ_obj2nid(si->digest_alg->algorithm); + md = EVP_get_digestbynid(md_type); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + if (!md || !data || (hash && len != (size_t) md->ctx_size) ) + goto err; + +@@ -1137,7 +1137,7 @@ static LUA_FUNCTION(openssl_pkcs7_sign_digest) + os = p7->d.signed_and_enveloped->enc_data->enc_data; + if (!os) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + os = M_ASN1_OCTET_STRING_new(); + #else + os = ASN1_OCTET_STRING_new(); +@@ -1155,7 +1155,7 @@ static LUA_FUNCTION(openssl_pkcs7_sign_digest) + os = p7->d.enveloped->enc_data->enc_data; + if (!os) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + os = M_ASN1_OCTET_STRING_new(); + #else + os = ASN1_OCTET_STRING_new(); +@@ -1174,7 +1174,7 @@ static LUA_FUNCTION(openssl_pkcs7_sign_digest) + /* If detached data then the content is excluded */ + if (PKCS7_type_is_data(p7->d.sign->contents) && p7->detached) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + M_ASN1_OCTET_STRING_free(os); + #else + ASN1_OCTET_STRING_free(os); +@@ -1189,7 +1189,7 @@ static LUA_FUNCTION(openssl_pkcs7_sign_digest) + /* If detached data then the content is excluded */ + if (PKCS7_type_is_data(p7->d.digest->contents) && p7->detached) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + M_ASN1_OCTET_STRING_free(os); + #else + ASN1_OCTET_STRING_free(os); +@@ -1217,7 +1217,7 @@ static LUA_FUNCTION(openssl_pkcs7_sign_digest) + + if (hash) + { +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + if (l == (size_t) mdc->digest->ctx_size) + { + memcpy(mdc->md_data, data, l); +@@ -1272,7 +1272,7 @@ static LUA_FUNCTION(openssl_pkcs7_sign_digest) + unsigned int md_len; + md = EVP_get_digestbynid(OBJ_obj2nid(p7->d.digest->md->algorithm)); + EVP_DigestInit_ex(mdc, md, NULL); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + if (l == (size_t) mdc->digest->ctx_size) + { + memcpy(mdc->md_data, data, l); +diff --git a/src/private.h b/src/private.h +index 8e9d5b8..7140cae 100644 +--- a/src/private.h ++++ b/src/private.h +@@ -46,9 +46,10 @@ extern "C" { + luaL_getmetatable(L,"openssl.bn"); \ + lua_setmetatable(L,-2) + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + int BIO_up_ref(BIO *b); + int X509_up_ref(X509 *x); ++int X509_CRL_up_ref(X509_CRL *x); + int X509_STORE_up_ref(X509_STORE *s); + int EVP_PKEY_up_ref(EVP_PKEY *pkey); + +@@ -124,12 +125,12 @@ STACK_OF(X509) *TS_VERIFY_CTS_set_certs(TS_VERIFY_CTX *ctx, + unsigned char *TS_VERIFY_CTX_set_imprint(TS_VERIFY_CTX *ctx, + unsigned char *hexstr, long len); + +-#if OPENSSL_VERSION_NUMBER < 0x10002000L ++#if OPENSSL_VERSION_NUMBER < 0x10002000L || defined(LIBRESSL_VERSION_NUMBER) + int i2d_re_X509_tbs(X509 *x, unsigned char **pp); ++#endif + void X509_get0_signature(ASN1_BIT_STRING **psig, X509_ALGOR **palg, + const X509 *x); + int X509_get_signature_nid(const X509 *x); +-#endif + + #endif + +diff --git a/src/sm2.c b/src/sm2.c +index 0655888..1db3198 100644 +--- a/src/sm2.c ++++ b/src/sm2.c +@@ -1,7 +1,7 @@ + #include "openssl.h" + #include "private.h" + +-#if (OPENSSL_VERSION_NUMBER >= 0x10101007L) && !defined(OPENSSL_NO_SM2) ++#if (OPENSSL_VERSION_NUMBER >= 0x10101007L) && !defined(OPENSSL_NO_SM2) && !defined(LIBRESSL_VERSION_NUMBER) + + # include + +diff --git a/src/srp.c b/src/srp.c +index 85626b5..6fb0a50 100644 +--- a/src/srp.c ++++ b/src/srp.c +@@ -1,6 +1,7 @@ + #include "openssl.h" + #include "private.h" + ++#if !defined(LIBRESSL_VERSION_NUMBER) + #include + #include + +@@ -198,4 +199,4 @@ int luaopen_srp(lua_State *L) + lua_settable(L, -3); + return 1; + } +- ++#endif +diff --git a/src/x509.c b/src/x509.c +index 94e9982..07adb54 100644 +--- a/src/x509.c ++++ b/src/x509.c +@@ -1196,7 +1196,7 @@ static int openssl_x509_extensions(lua_State* L) + else + { + STACK_OF(X509_EXTENSION) *others = (STACK_OF(X509_EXTENSION) *)openssl_sk_x509_extension_fromtable(L, 2); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + sk_X509_EXTENSION_pop_free(self->cert_info->extensions, X509_EXTENSION_free); + self->cert_info->extensions = others; + #else +-- +2.16.4 + diff --git a/dev-lua/lua-openssl/lua-openssl-0.7.3.ebuild b/dev-lua/lua-openssl/lua-openssl-0.7.3.ebuild new file mode 100644 index 000000000000..564518d7fb1a --- /dev/null +++ b/dev-lua/lua-openssl/lua-openssl-0.7.3.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs + +DESCRIPTION="OpenSSL binding for Lua" +HOMEPAGE="https://github.com/zhaozg/lua-openssl" +LUA_AUX_COMMIT="b56f6937096acea34ddf241ec7ea08ac52414d18" +LUA_COMPAT_COMMIT="daebe77a2f498817713df37f0bb316db1d82222f" +SRC_URI="https://github.com/zhaozg/lua-openssl/archive/${PV}.tar.gz -> ${P}.tar.gz + https://github.com/zhaozg/lua-auxiliar/archive/${LUA_AUX_COMMIT}.tar.gz -> ${PN}-aux-${LUA_AUX_COMMIT}.tar.gz + https://github.com/keplerproject/lua-compat-5.3/archive/${LUA_COMPAT_COMMIT}.tar.gz -> ${PN}-compat-${LUA_COMPAT_COMMIT}.tar.gz" + +LICENSE="MIT openssl PHP-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="libressl luajit" + +RDEPEND=" + luajit? ( dev-lang/luajit:2 ) + !luajit? ( >=dev-lang/lua-5.1:0 ) + libressl? ( /dev/null || die + unpack "${PN}-aux-${LUA_AUX_COMMIT}.tar.gz" + unpack "${PN}-compat-${LUA_COMPAT_COMMIT}.tar.gz" + rmdir auxiliar lua-compat || die + mv "lua-auxiliar-${LUA_AUX_COMMIT}" auxiliar || die + mv "lua-compat-5.3-${LUA_COMPAT_COMMIT}" lua-compat || die + popd > /dev/null || die +} + +src_configure() { + tc-export PKG_CONFIG + LUA_VERSION="$(${PKG_CONFIG} --variable=$(usex luajit abiver V) $(usex luajit luajit lua))" + LUA_CFLAGS="$(${PKG_CONFIG} $(usex luajit luajit lua) --cflags) ${CFLAGS}" + LUA_LIBS="$(${PKG_CONFIG} $(usex luajit luajit lua) --libs) ${LDFLAGS}" + + export LUA_VERSION LUA_CFLAGS LUA_LIBS +} + +src_compile() { + emake CC="$(tc-getCC)" +} + +src_install() { + emake PREFIX="${ED}/usr" install + einstalldocs +} diff --git a/dev-lua/lua-openssl/metadata.xml b/dev-lua/lua-openssl/metadata.xml index 5056b9e74ffb..731dad42e18a 100644 --- a/dev-lua/lua-openssl/metadata.xml +++ b/dev-lua/lua-openssl/metadata.xml @@ -1,7 +1,14 @@ - + + crito@fnordpipe.org + Matthias Hauber + + + proxy-maint@gentoo.org + Proxy Maintainers + zhaozg/lua-openssl -- cgit v1.2.3