diff options
author | William Pitcock <nenolod@dereferenced.org> | 2018-03-15 05:20:27 +0000 |
---|---|---|
committer | William Pitcock <nenolod@dereferenced.org> | 2018-03-15 05:20:27 +0000 |
commit | 242443d3ef2ab08a98f6af2c7328ddea34966990 (patch) | |
tree | bfbc84ad34f169da8267f26f5df5695a9d80fa2e | |
parent | a243b98556b3e833b16a3019d23910d0cee86720 (diff) | |
download | aports-242443d3ef2ab08a98f6af2c7328ddea34966990.tar.bz2 aports-242443d3ef2ab08a98f6af2c7328ddea34966990.tar.xz |
community/erlang: upgrade to 20.3
-rw-r--r-- | community/erlang/0011-fix-libressl-build.patch | 108 | ||||
-rw-r--r-- | community/erlang/APKBUILD | 12 |
2 files changed, 5 insertions, 115 deletions
diff --git a/community/erlang/0011-fix-libressl-build.patch b/community/erlang/0011-fix-libressl-build.patch deleted file mode 100644 index be81be395f..0000000000 --- a/community/erlang/0011-fix-libressl-build.patch +++ /dev/null @@ -1,108 +0,0 @@ -From b5b6c7695c5377b5aa474d8620df7c3e9a1ba629 Mon Sep 17 00:00:00 2001 -From: Hans Nilsson <hans@erlang.org> -Date: Thu, 11 Jan 2018 15:29:23 +0100 -Subject: [PATCH] crypto: Disable RSA sslv23 padding for LibreSSL >= 2.6.1 - -Not supported in newer LibreSSL. ---- - lib/crypto/c_src/crypto.c | 26 +++++++++++++++++++++++--- - 1 file changed, 23 insertions(+), 3 deletions(-) - -diff --git a/lib/crypto/c_src/crypto.c b/lib/crypto/c_src/crypto.c -index 6957d257747..9a3ea07c970 100644 ---- a/lib/crypto/c_src/crypto.c -+++ b/lib/crypto/c_src/crypto.c -@@ -179,6 +179,12 @@ - # define HAVE_ECB_IVEC_BUG - #endif - -+#define HAVE_RSA_SSLV23_PADDING -+#if defined(HAS_LIBRESSL) \ -+ && LIBRESSL_VERSION_NUMBER >= PACKED_OPENSSL_VERSION_PLAIN(2,6,1) -+# undef HAVE_RSA_SSLV23_PADDING -+#endif -+ - #if defined(HAVE_CMAC) - #include <openssl/cmac.h> - #endif -@@ -659,7 +665,9 @@ static ERL_NIF_TERM atom_rsa_oaep_md; - static ERL_NIF_TERM atom_rsa_pad; /* backwards compatibility */ - static ERL_NIF_TERM atom_rsa_padding; - static ERL_NIF_TERM atom_rsa_pkcs1_pss_padding; -+#ifdef HAVE_RSA_SSLV23_PADDING - static ERL_NIF_TERM atom_rsa_sslv23_padding; -+#endif - static ERL_NIF_TERM atom_rsa_x931_padding; - static ERL_NIF_TERM atom_rsa_pss_saltlen; - static ERL_NIF_TERM atom_sha224; -@@ -1064,7 +1072,9 @@ static int initialize(ErlNifEnv* env, ERL_NIF_TERM load_info) - atom_rsa_pad = enif_make_atom(env,"rsa_pad"); /* backwards compatibility */ - atom_rsa_padding = enif_make_atom(env,"rsa_padding"); - atom_rsa_pkcs1_pss_padding = enif_make_atom(env,"rsa_pkcs1_pss_padding"); -+#ifdef HAVE_RSA_SSLV23_PADDING - atom_rsa_sslv23_padding = enif_make_atom(env,"rsa_sslv23_padding"); -+#endif - atom_rsa_x931_padding = enif_make_atom(env,"rsa_x931_padding"); - atom_rsa_pss_saltlen = enif_make_atom(env,"rsa_pss_saltlen"); - atom_sha224 = enif_make_atom(env,"sha224"); -@@ -4449,8 +4459,10 @@ static int get_pkey_crypt_options(ErlNifEnv *env, ERL_NIF_TERM algorithm, ERL_NI - opt->rsa_padding = RSA_PKCS1_PADDING; - } else if (tpl_terms[1] == atom_rsa_pkcs1_oaep_padding) { - opt->rsa_padding = RSA_PKCS1_OAEP_PADDING; -+#ifdef HAVE_RSA_SSLV23_PADDING - } else if (tpl_terms[1] == atom_rsa_sslv23_padding) { - opt->rsa_padding = RSA_SSLV23_PADDING; -+#endif - } else if (tpl_terms[1] == atom_rsa_x931_padding) { - opt->rsa_padding = RSA_X931_PADDING; - } else if (tpl_terms[1] == atom_rsa_no_padding) { -@@ -4516,7 +4528,10 @@ static ERL_NIF_TERM pkey_crypt_nif(ErlNifEnv *env, int argc, const ERL_NIF_TERM - #endif - PKeyCryptOptions crypt_opt; - ErlNifBinary in_bin, out_bin, tmp_bin; -- size_t outlen, tmplen; -+ size_t outlen; -+#ifdef HAVE_RSA_SSLV23_PADDING -+ size_t tmplen; -+#endif - int is_private = (argv[4] == atom_true), - is_encrypt = (argv[5] == atom_true); - int algo_init = 0; -@@ -4596,6 +4611,7 @@ static ERL_NIF_TERM pkey_crypt_nif(ErlNifEnv *env, int argc, const ERL_NIF_TERM - if (crypt_opt.signature_md != NULL - && EVP_PKEY_CTX_set_signature_md(ctx, crypt_opt.signature_md) <= 0) - goto badarg; -+#ifdef HAVE_RSA_SSLV23_PADDING - if (crypt_opt.rsa_padding == RSA_SSLV23_PADDING) { - if (is_encrypt) { - RSA *rsa = EVP_PKEY_get1_RSA(pkey); -@@ -4607,9 +4623,11 @@ static ERL_NIF_TERM pkey_crypt_nif(ErlNifEnv *env, int argc, const ERL_NIF_TERM - in_bin = tmp_bin; - } - if (EVP_PKEY_CTX_set_rsa_padding(ctx, RSA_NO_PADDING) <= 0) goto badarg; -- } else { -+ } else -+#endif -+ { - if (EVP_PKEY_CTX_set_rsa_padding(ctx, crypt_opt.rsa_padding) <= 0) goto badarg; -- } -+ } - #ifdef HAVE_RSA_OAEP_MD - if (crypt_opt.rsa_padding == RSA_PKCS1_OAEP_PADDING) { - if (crypt_opt.rsa_oaep_md != NULL -@@ -4728,6 +4746,7 @@ static ERL_NIF_TERM pkey_crypt_nif(ErlNifEnv *env, int argc, const ERL_NIF_TERM - #endif - - if ((i > 0) && argv[0] == atom_rsa && !is_encrypt) { -+#ifdef HAVE_RSA_SSLV23_PADDING - if (crypt_opt.rsa_padding == RSA_SSLV23_PADDING) { - RSA *rsa = EVP_PKEY_get1_RSA(pkey); - unsigned char *p; -@@ -4745,6 +4764,7 @@ static ERL_NIF_TERM pkey_crypt_nif(ErlNifEnv *env, int argc, const ERL_NIF_TERM - i = 1; - } - } -+#endif - } - - if (tmp_bin.data != NULL) { diff --git a/community/erlang/APKBUILD b/community/erlang/APKBUILD index cf8c07498a..2248d30114 100644 --- a/community/erlang/APKBUILD +++ b/community/erlang/APKBUILD @@ -3,9 +3,9 @@ # Contributor: Marlus Saraiva <marlus.saraiva@gmail.com> # Maintainer: William Pitcock <nenolod@dereferenced.org> pkgname=erlang -pkgver=20.2.4 +pkgver=20.3 _srcver=$pkgver -pkgrel=6 +pkgrel=0 pkgdesc="General-purpose programming language and runtime environment" url="http://www.erlang.org/" license="Apache-2.0" @@ -63,8 +63,7 @@ subpackages="$pkgname-dev options="!check" source="https://github.com/erlang/otp/archive/OTP-$_srcver.tar.gz 0005-Do-not-install-nteventlog-and-related-doc-files-on-n.patch - 0010-fix-nteventlog-remove.patch - 0011-fix-libressl-build.patch" + 0010-fix-nteventlog-remove.patch" builddir="$srcdir/otp-OTP-$_srcver" @@ -193,7 +192,6 @@ dev() { } -sha512sums="0d4d95bed9c2aa315a0a51df158b15dbb3d1871606b4b23e27ed68b9e836a93aba271818c445a79bc065bc401b6c5023c8b9a2420a456427729d927899986975 OTP-20.2.4.tar.gz +sha512sums="1efb9b4e13a5dbabebc9db85bdeb34f0e8bcd72db56fed033e5063c64ba58c23af76e6fdecd00f2efddbce8a3db81c97f705c5247e54405d825fe5c7e8b02cf0 OTP-20.3.tar.gz 5d377faccd73382bc86c5aa3182767bc5d1639220c78c2f624135f597f3c823a6871ff13f6f8a109baa8a9ae5d215233b40193e5cfe07af275aa53f327e956de 0005-Do-not-install-nteventlog-and-related-doc-files-on-n.patch -bb4346dabe17115bc310837c5f0aeb367a745d8ba2159495084e599d0419fc57648d144c811306914ac48d0e087d6150a356f38640ba070642b4578acc5fe573 0010-fix-nteventlog-remove.patch -7af01ed80312621844a249fbcaff84955c8d4d0a2a25382242e7dbeffddc835b9d359c0d47b7fc649ac47644f972e4271adf820527dba34cb1a5abed03422de9 0011-fix-libressl-build.patch" +bb4346dabe17115bc310837c5f0aeb367a745d8ba2159495084e599d0419fc57648d144c811306914ac48d0e087d6150a356f38640ba070642b4578acc5fe573 0010-fix-nteventlog-remove.patch" |