From 381666772048adff9197cd0e583cfc30712e90dd Mon Sep 17 00:00:00 2001 From: Hakase Date: Fri, 20 Sep 2019 20:34:40 +0900 Subject: [PATCH] Latest update. (not tested.) --- openssl-3.0.0-dev-chacha_draft.patch | 16 ++++++++-------- openssl-equal-1.1.1d.patch | 18 ++++++------------ openssl-equal-1.1.1d_ciphers.patch | 18 ++++++------------ openssl-equal-3.0.0-dev.patch | 26 ++++++++++---------------- openssl-equal-3.0.0-dev_ciphers.patch | 26 ++++++++++---------------- 5 files changed, 40 insertions(+), 64 deletions(-) diff --git a/openssl-3.0.0-dev-chacha_draft.patch b/openssl-3.0.0-dev-chacha_draft.patch index 7fe9d84..0590574 100644 --- a/openssl-3.0.0-dev-chacha_draft.patch +++ b/openssl-3.0.0-dev-chacha_draft.patch @@ -291,10 +291,10 @@ index 47cf2f183d..660bcd8521 100644 ISO-US 10046 2 1 : dhpublicnumber : X9.42 DH diff --git a/include/openssl/evp.h b/include/openssl/evp.h -index 69d70e5e9c..d451c574c0 100644 +index bbdc2b75c1..0c4b51d6c5 100644 --- a/include/openssl/evp.h +++ b/include/openssl/evp.h -@@ -957,6 +957,7 @@ const EVP_CIPHER *EVP_camellia_256_ctr(void); +@@ -959,6 +959,7 @@ const EVP_CIPHER *EVP_camellia_256_ctr(void); const EVP_CIPHER *EVP_chacha20(void); # ifndef OPENSSL_NO_POLY1305 const EVP_CIPHER *EVP_chacha20_poly1305(void); @@ -499,11 +499,11 @@ index b66979b4da..195267cb5e 100644 # define SSL_ARIA (SSL_ARIAGCM) diff --git a/util/libcrypto.num b/util/libcrypto.num -index e5c869af44..e50f80c2d1 100644 +index 1b14b440dc..0c27ed1138 100644 --- a/util/libcrypto.num +++ b/util/libcrypto.num -@@ -4752,3 +4752,4 @@ EVP_PKEY_CTX_get_signature_md 4868 3_0_0 EXIST::FUNCTION: - EVP_PKEY_CTX_get_params 4869 3_0_0 EXIST::FUNCTION: - EVP_PKEY_CTX_gettable_params 4870 3_0_0 EXIST::FUNCTION: - EVP_PKEY_CTX_settable_params 4871 3_0_0 EXIST::FUNCTION: -+EVP_chacha20_poly1305_draft 4872 3_0_0 EXIST::FUNCTION:CHACHA,POLY1305 +@@ -4764,3 +4764,4 @@ ERR_peek_last_error_data 4880 3_0_0 EXIST::FUNCTION: + ERR_peek_last_error_all 4881 3_0_0 EXIST::FUNCTION: + EVP_CIPHER_is_a 4882 3_0_0 EXIST::FUNCTION: + EVP_MAC_is_a 4883 3_0_0 EXIST::FUNCTION: ++EVP_chacha20_poly1305_draft 4884 3_0_0 EXIST::FUNCTION:CHACHA,POLY1305 diff --git a/openssl-equal-1.1.1d.patch b/openssl-equal-1.1.1d.patch index 812036e..2b4ac0d 100644 --- a/openssl-equal-1.1.1d.patch +++ b/openssl-equal-1.1.1d.patch @@ -315,7 +315,7 @@ index 066bf47221..517eda6630 100644 } diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c -index 27a1b2ec68..dffc0623b6 100644 +index 27a1b2ec68..9880a0b363 100644 --- a/ssl/ssl_ciph.c +++ b/ssl/ssl_ciph.c @@ -192,6 +192,7 @@ typedef struct cipher_order_st { @@ -501,30 +501,24 @@ index 27a1b2ec68..dffc0623b6 100644 return retval; } -@@ -1377,8 +1435,8 @@ int SSL_CTX_set_ciphersuites(SSL_CTX *ctx, const char *str) - { +@@ -1378,7 +1436,7 @@ int SSL_CTX_set_ciphersuites(SSL_CTX *ctx, const char *str) int ret = set_ciphersuites(&(ctx->tls13_ciphersuites), str); -- if (ret && ctx->cipher_list != NULL) + if (ret && ctx->cipher_list != NULL) - return update_cipher_list(&ctx->cipher_list, &ctx->cipher_list_by_id, -+ if (ret && ctx->cipher_list->ciphers != NULL) + return update_cipher_list(&ctx->cipher_list->ciphers, &ctx->cipher_list_by_id, ctx->tls13_ciphersuites); return ret; -@@ -1389,12 +1447,12 @@ int SSL_set_ciphersuites(SSL *s, const char *str) - STACK_OF(SSL_CIPHER) *cipher_list; - int ret = set_ciphersuites(&(s->tls13_ciphersuites), str); +@@ -1391,10 +1449,10 @@ int SSL_set_ciphersuites(SSL *s, const char *str) -- if (s->cipher_list == NULL) { -+ if (s->cipher_list->ciphers == NULL) { + if (s->cipher_list == NULL) { if ((cipher_list = SSL_get_ciphers(s)) != NULL) - s->cipher_list = sk_SSL_CIPHER_dup(cipher_list); + s->cipher_list->ciphers = sk_SSL_CIPHER_dup(cipher_list); } -- if (ret && s->cipher_list != NULL) + if (ret && s->cipher_list != NULL) - return update_cipher_list(&s->cipher_list, &s->cipher_list_by_id, -+ if (ret && s->cipher_list->ciphers != NULL) + return update_cipher_list(&s->cipher_list->ciphers, &s->cipher_list_by_id, s->tls13_ciphersuites); diff --git a/openssl-equal-1.1.1d_ciphers.patch b/openssl-equal-1.1.1d_ciphers.patch index 3acc109..f10ab6d 100644 --- a/openssl-equal-1.1.1d_ciphers.patch +++ b/openssl-equal-1.1.1d_ciphers.patch @@ -391,7 +391,7 @@ index 066bf47221..28d8887f97 100644 } diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c -index 27a1b2ec68..dffc0623b6 100644 +index 27a1b2ec68..9880a0b363 100644 --- a/ssl/ssl_ciph.c +++ b/ssl/ssl_ciph.c @@ -192,6 +192,7 @@ typedef struct cipher_order_st { @@ -577,30 +577,24 @@ index 27a1b2ec68..dffc0623b6 100644 return retval; } -@@ -1377,8 +1435,8 @@ int SSL_CTX_set_ciphersuites(SSL_CTX *ctx, const char *str) - { +@@ -1378,7 +1436,7 @@ int SSL_CTX_set_ciphersuites(SSL_CTX *ctx, const char *str) int ret = set_ciphersuites(&(ctx->tls13_ciphersuites), str); -- if (ret && ctx->cipher_list != NULL) + if (ret && ctx->cipher_list != NULL) - return update_cipher_list(&ctx->cipher_list, &ctx->cipher_list_by_id, -+ if (ret && ctx->cipher_list->ciphers != NULL) + return update_cipher_list(&ctx->cipher_list->ciphers, &ctx->cipher_list_by_id, ctx->tls13_ciphersuites); return ret; -@@ -1389,12 +1447,12 @@ int SSL_set_ciphersuites(SSL *s, const char *str) - STACK_OF(SSL_CIPHER) *cipher_list; - int ret = set_ciphersuites(&(s->tls13_ciphersuites), str); +@@ -1391,10 +1449,10 @@ int SSL_set_ciphersuites(SSL *s, const char *str) -- if (s->cipher_list == NULL) { -+ if (s->cipher_list->ciphers == NULL) { + if (s->cipher_list == NULL) { if ((cipher_list = SSL_get_ciphers(s)) != NULL) - s->cipher_list = sk_SSL_CIPHER_dup(cipher_list); + s->cipher_list->ciphers = sk_SSL_CIPHER_dup(cipher_list); } -- if (ret && s->cipher_list != NULL) + if (ret && s->cipher_list != NULL) - return update_cipher_list(&s->cipher_list, &s->cipher_list_by_id, -+ if (ret && s->cipher_list->ciphers != NULL) + return update_cipher_list(&s->cipher_list->ciphers, &s->cipher_list_by_id, s->tls13_ciphersuites); diff --git a/openssl-equal-3.0.0-dev.patch b/openssl-equal-3.0.0-dev.patch index 2d76f14..6a87206 100644 --- a/openssl-equal-3.0.0-dev.patch +++ b/openssl-equal-3.0.0-dev.patch @@ -1,8 +1,8 @@ diff --git a/crypto/err/openssl.txt b/crypto/err/openssl.txt -index f74659c599..159fcea0b1 100644 +index 700f1da20f..fc9001fb76 100644 --- a/crypto/err/openssl.txt +++ b/crypto/err/openssl.txt -@@ -2998,6 +2998,8 @@ SSL_R_MISSING_TMP_DH_KEY:171:missing tmp dh key +@@ -3000,6 +3000,8 @@ SSL_R_MISSING_TMP_DH_KEY:171:missing tmp dh key SSL_R_MISSING_TMP_ECDH_KEY:311:missing tmp ecdh key SSL_R_MIXED_HANDSHAKE_AND_NON_HANDSHAKE_DATA:293:\ mixed handshake and non handshake data @@ -11,7 +11,7 @@ index f74659c599..159fcea0b1 100644 SSL_R_NOT_ON_RECORD_BOUNDARY:182:not on record boundary SSL_R_NOT_REPLACING_CERTIFICATE:289:not replacing certificate SSL_R_NOT_SERVER:284:not server -@@ -3104,7 +3106,9 @@ SSL_R_UNABLE_TO_LOAD_SSL3_MD5_ROUTINES:242:unable to load ssl3 md5 routines +@@ -3106,7 +3108,9 @@ SSL_R_UNABLE_TO_LOAD_SSL3_MD5_ROUTINES:242:unable to load ssl3 md5 routines SSL_R_UNABLE_TO_LOAD_SSL3_SHA1_ROUTINES:243:unable to load ssl3 sha1 routines SSL_R_UNEXPECTED_CCS_MESSAGE:262:unexpected ccs message SSL_R_UNEXPECTED_END_OF_EARLY_DATA:178:unexpected end of early data @@ -315,7 +315,7 @@ index d23f932ce9..8ec4166c6d 100644 } diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c -index e427c407fc..f3eb8a6b9f 100644 +index e427c407fc..7b6c78fbe8 100644 --- a/ssl/ssl_ciph.c +++ b/ssl/ssl_ciph.c @@ -193,6 +193,7 @@ typedef struct cipher_order_st { @@ -518,30 +518,24 @@ index e427c407fc..f3eb8a6b9f 100644 return retval; } -@@ -1380,8 +1439,8 @@ int SSL_CTX_set_ciphersuites(SSL_CTX *ctx, const char *str) - { +@@ -1381,7 +1440,7 @@ int SSL_CTX_set_ciphersuites(SSL_CTX *ctx, const char *str) int ret = set_ciphersuites(&(ctx->tls13_ciphersuites), str); -- if (ret && ctx->cipher_list != NULL) + if (ret && ctx->cipher_list != NULL) - return update_cipher_list(&ctx->cipher_list, &ctx->cipher_list_by_id, -+ if (ret && ctx->cipher_list->ciphers != NULL) + return update_cipher_list(&ctx->cipher_list->ciphers, &ctx->cipher_list_by_id, ctx->tls13_ciphersuites); return ret; -@@ -1392,12 +1451,12 @@ int SSL_set_ciphersuites(SSL *s, const char *str) - STACK_OF(SSL_CIPHER) *cipher_list; - int ret = set_ciphersuites(&(s->tls13_ciphersuites), str); +@@ -1394,10 +1453,10 @@ int SSL_set_ciphersuites(SSL *s, const char *str) -- if (s->cipher_list == NULL) { -+ if (s->cipher_list->ciphers == NULL) { + if (s->cipher_list == NULL) { if ((cipher_list = SSL_get_ciphers(s)) != NULL) - s->cipher_list = sk_SSL_CIPHER_dup(cipher_list); + s->cipher_list->ciphers = sk_SSL_CIPHER_dup(cipher_list); } -- if (ret && s->cipher_list != NULL) + if (ret && s->cipher_list != NULL) - return update_cipher_list(&s->cipher_list, &s->cipher_list_by_id, -+ if (ret && s->cipher_list->ciphers != NULL) + return update_cipher_list(&s->cipher_list->ciphers, &s->cipher_list_by_id, s->tls13_ciphersuites); @@ -773,7 +767,7 @@ index e427c407fc..f3eb8a6b9f 100644 char *SSL_CIPHER_description(const SSL_CIPHER *cipher, char *buf, int len) diff --git a/ssl/ssl_err.c b/ssl/ssl_err.c -index ef9b95a0c9..29a36730cc 100644 +index fc81948815..b703f8c8ad 100644 --- a/ssl/ssl_err.c +++ b/ssl/ssl_err.c @@ -255,6 +255,9 @@ static const ERR_STRING_DATA SSL_str_reasons[] = { diff --git a/openssl-equal-3.0.0-dev_ciphers.patch b/openssl-equal-3.0.0-dev_ciphers.patch index e6538a7..3a73477 100644 --- a/openssl-equal-3.0.0-dev_ciphers.patch +++ b/openssl-equal-3.0.0-dev_ciphers.patch @@ -1,8 +1,8 @@ diff --git a/crypto/err/openssl.txt b/crypto/err/openssl.txt -index f74659c599..159fcea0b1 100644 +index 700f1da20f..fc9001fb76 100644 --- a/crypto/err/openssl.txt +++ b/crypto/err/openssl.txt -@@ -2998,6 +2998,8 @@ SSL_R_MISSING_TMP_DH_KEY:171:missing tmp dh key +@@ -3000,6 +3000,8 @@ SSL_R_MISSING_TMP_DH_KEY:171:missing tmp dh key SSL_R_MISSING_TMP_ECDH_KEY:311:missing tmp ecdh key SSL_R_MIXED_HANDSHAKE_AND_NON_HANDSHAKE_DATA:293:\ mixed handshake and non handshake data @@ -11,7 +11,7 @@ index f74659c599..159fcea0b1 100644 SSL_R_NOT_ON_RECORD_BOUNDARY:182:not on record boundary SSL_R_NOT_REPLACING_CERTIFICATE:289:not replacing certificate SSL_R_NOT_SERVER:284:not server -@@ -3104,7 +3106,9 @@ SSL_R_UNABLE_TO_LOAD_SSL3_MD5_ROUTINES:242:unable to load ssl3 md5 routines +@@ -3106,7 +3108,9 @@ SSL_R_UNABLE_TO_LOAD_SSL3_MD5_ROUTINES:242:unable to load ssl3 md5 routines SSL_R_UNABLE_TO_LOAD_SSL3_SHA1_ROUTINES:243:unable to load ssl3 sha1 routines SSL_R_UNEXPECTED_CCS_MESSAGE:262:unexpected ccs message SSL_R_UNEXPECTED_END_OF_EARLY_DATA:178:unexpected end of early data @@ -391,7 +391,7 @@ index d23f932ce9..16240d337b 100644 } diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c -index e427c407fc..f3eb8a6b9f 100644 +index e427c407fc..7b6c78fbe8 100644 --- a/ssl/ssl_ciph.c +++ b/ssl/ssl_ciph.c @@ -193,6 +193,7 @@ typedef struct cipher_order_st { @@ -594,30 +594,24 @@ index e427c407fc..f3eb8a6b9f 100644 return retval; } -@@ -1380,8 +1439,8 @@ int SSL_CTX_set_ciphersuites(SSL_CTX *ctx, const char *str) - { +@@ -1381,7 +1440,7 @@ int SSL_CTX_set_ciphersuites(SSL_CTX *ctx, const char *str) int ret = set_ciphersuites(&(ctx->tls13_ciphersuites), str); -- if (ret && ctx->cipher_list != NULL) + if (ret && ctx->cipher_list != NULL) - return update_cipher_list(&ctx->cipher_list, &ctx->cipher_list_by_id, -+ if (ret && ctx->cipher_list->ciphers != NULL) + return update_cipher_list(&ctx->cipher_list->ciphers, &ctx->cipher_list_by_id, ctx->tls13_ciphersuites); return ret; -@@ -1392,12 +1451,12 @@ int SSL_set_ciphersuites(SSL *s, const char *str) - STACK_OF(SSL_CIPHER) *cipher_list; - int ret = set_ciphersuites(&(s->tls13_ciphersuites), str); +@@ -1394,10 +1453,10 @@ int SSL_set_ciphersuites(SSL *s, const char *str) -- if (s->cipher_list == NULL) { -+ if (s->cipher_list->ciphers == NULL) { + if (s->cipher_list == NULL) { if ((cipher_list = SSL_get_ciphers(s)) != NULL) - s->cipher_list = sk_SSL_CIPHER_dup(cipher_list); + s->cipher_list->ciphers = sk_SSL_CIPHER_dup(cipher_list); } -- if (ret && s->cipher_list != NULL) + if (ret && s->cipher_list != NULL) - return update_cipher_list(&s->cipher_list, &s->cipher_list_by_id, -+ if (ret && s->cipher_list->ciphers != NULL) + return update_cipher_list(&s->cipher_list->ciphers, &s->cipher_list_by_id, s->tls13_ciphersuites); @@ -849,7 +843,7 @@ index e427c407fc..f3eb8a6b9f 100644 char *SSL_CIPHER_description(const SSL_CIPHER *cipher, char *buf, int len) diff --git a/ssl/ssl_err.c b/ssl/ssl_err.c -index ef9b95a0c9..29a36730cc 100644 +index fc81948815..b703f8c8ad 100644 --- a/ssl/ssl_err.c +++ b/ssl/ssl_err.c @@ -255,6 +255,9 @@ static const ERR_STRING_DATA SSL_str_reasons[] = {