openssl: bump to 1.1.1s
Changes between 1.1.1r and 1.1.1s [1 Nov 2022]
  *) Fixed a regression introduced in 1.1.1r version not refreshing the
     certificate data to be signed before signing the certificate.
     [Gibeom Gwon]
 Changes between 1.1.1q and 1.1.1r [11 Oct 2022]
  *) Fixed the linux-mips64 Configure target which was missing the
     SIXTY_FOUR_BIT bn_ops flag. This was causing heap corruption on that
     platform.
     [Adam Joseph]
  *) Fixed a strict aliasing problem in bn_nist. Clang-14 optimisation was
     causing incorrect results in some cases as a result.
     [Paul Dale]
  *) Fixed SSL_pending() and SSL_has_pending() with DTLS which were failing to
     report correct results in some cases
     [Matt Caswell]
  *) Fixed a regression introduced in 1.1.1o for re-signing certificates with
     different key sizes
     [Todd Short]
  *) Added the loongarch64 target
     [Shi Pujin]
  *) Fixed a DRBG seed propagation thread safety issue
     [Bernd Edlinger]
  *) Fixed a memory leak in tls13_generate_secret
     [Bernd Edlinger]
  *) Fixed reported performance degradation on aarch64. Restored the
     implementation prior to commit 2621751 ("aes/asm/aesv8-armx.pl: avoid
     32-bit lane assignment in CTR mode") for 64bit targets only, since it is
     reportedly 2-17% slower and the silicon errata only affects 32bit targets.
     The new algorithm is still used for 32 bit targets.
     [Bernd Edlinger]
  *) Added a missing header for memcmp that caused compilation failure on some
     platforms
     [Gregor Jasny]
Build system: x86_64
Build-tested: bcm2711/RPi4B
Run-tested: bcm2711/RPi4B
Signed-off-by: John Audia <therealgraysky@proton.me>
			
			
This commit is contained in:
		| @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk | ||||
|  | ||||
| PKG_NAME:=openssl | ||||
| PKG_BASE:=1.1.1 | ||||
| PKG_BUGFIX:=q | ||||
| PKG_BUGFIX:=s | ||||
| PKG_VERSION:=$(PKG_BASE)$(PKG_BUGFIX) | ||||
| PKG_RELEASE:=$(AUTORELEASE) | ||||
| PKG_USE_MIPS16:=0 | ||||
| @@ -25,7 +25,7 @@ PKG_SOURCE_URL:= \ | ||||
| 	ftp://ftp.pca.dfn.de/pub/tools/net/openssl/source/ \ | ||||
| 	ftp://ftp.pca.dfn.de/pub/tools/net/openssl/source/old/$(PKG_BASE)/ | ||||
|  | ||||
| PKG_HASH:=d7939ce614029cdff0b6c20f0e2e5703158a489a72b2507b8bd51bf8c8fd10ca | ||||
| PKG_HASH:=c5ac01e760ee6ff0dab61d6b2bbd30146724d063eb322180c6f18a6f74e4b6aa | ||||
|  | ||||
| PKG_LICENSE:=OpenSSL | ||||
| PKG_LICENSE_FILES:=LICENSE | ||||
|   | ||||
| @@ -15,7 +15,6 @@ Reviewed-by: Paul Dale <paul.dale@oracle.com> | ||||
| Reviewed-by: Richard Levitte <levitte@openssl.org> | ||||
| (Merged from https://github.com/openssl/openssl/pull/8883) | ||||
|  | ||||
| diff --git a/crypto/perlasm/ppc-xlate.pl b/crypto/perlasm/ppc-xlate.pl | ||||
| --- a/crypto/perlasm/ppc-xlate.pl | ||||
| +++ b/crypto/perlasm/ppc-xlate.pl | ||||
| @@ -49,7 +49,7 @@ my $globl = sub { | ||||
|   | ||||
| @@ -8,10 +8,9 @@ version to disable building the AFALG engine on openwrt targets. | ||||
|  | ||||
| Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com> | ||||
|  | ||||
| diff --git a/Configure b/Configure | ||||
| --- a/Configure | ||||
| +++ b/Configure | ||||
| @@ -1548,7 +1548,9 @@ unless ($disabled{"crypto-mdebug-backtrace"}) | ||||
| @@ -1548,7 +1548,9 @@ unless ($disabled{"crypto-mdebug-backtra | ||||
|   | ||||
|  unless ($disabled{afalgeng}) { | ||||
|      $config{afalgeng}=""; | ||||
|   | ||||
| @@ -7,8 +7,6 @@ Targets are named: linux-$(CONFIG_ARCH)-openwrt | ||||
|  | ||||
| Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com> | ||||
|  | ||||
| diff --git a/Configurations/25-openwrt.conf b/Configurations/25-openwrt.conf | ||||
| new file mode 100644 | ||||
| --- /dev/null | ||||
| +++ b/Configurations/25-openwrt.conf | ||||
| @@ -0,0 +1,52 @@ | ||||
|   | ||||
| @@ -8,10 +8,9 @@ OpenSSL_version(OPENSSL_CFLAGS), or running openssl version -a | ||||
|  | ||||
| Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com> | ||||
|  | ||||
| diff --git a/crypto/build.info b/crypto/build.info | ||||
| --- a/crypto/build.info | ||||
| +++ b/crypto/build.info | ||||
| @@ -10,7 +10,7 @@ EXTRA=  ../ms/uplink-x86.pl ../ms/uplink.c ../ms/applink.c \ | ||||
| @@ -10,7 +10,7 @@ EXTRA=  ../ms/uplink-x86.pl ../ms/uplink | ||||
|          ppccpuid.pl pariscid.pl alphacpuid.pl arm64cpuid.pl armv4cpuid.pl | ||||
|   | ||||
|  DEPEND[cversion.o]=buildinf.h | ||||
|   | ||||
| @@ -7,10 +7,9 @@ This shortens build time. | ||||
|  | ||||
| Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com> | ||||
|  | ||||
| diff --git a/Configure b/Configure | ||||
| --- a/Configure | ||||
| +++ b/Configure | ||||
| @@ -318,7 +318,7 @@ my $auto_threads=1;    # enable threads automatically? true by default | ||||
| @@ -318,7 +318,7 @@ my $auto_threads=1;    # enable threads | ||||
|  my $default_ranlib; | ||||
|   | ||||
|  # Top level directories to build | ||||
|   | ||||
| @@ -14,7 +14,6 @@ when the client has it on top of its ciphersuite preference. | ||||
|  | ||||
| Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com> | ||||
|  | ||||
| diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h | ||||
| --- a/include/openssl/ssl.h | ||||
| +++ b/include/openssl/ssl.h | ||||
| @@ -173,9 +173,15 @@ extern "C" { | ||||
| @@ -36,10 +35,9 @@ diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h | ||||
|  # else | ||||
|  #  define TLS_DEFAULT_CIPHERSUITES "TLS_AES_256_GCM_SHA384:" \ | ||||
|                                     "TLS_AES_128_GCM_SHA256" | ||||
| diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c | ||||
| --- a/ssl/ssl_ciph.c | ||||
| +++ b/ssl/ssl_ciph.c | ||||
| @@ -1467,11 +1467,29 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, | ||||
| @@ -1465,11 +1465,29 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_ | ||||
|      ssl_cipher_apply_rule(0, SSL_kECDHE, 0, 0, 0, 0, 0, CIPHER_DEL, -1, &head, | ||||
|                            &tail); | ||||
|   | ||||
| @@ -69,7 +67,7 @@ diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c | ||||
|   | ||||
|      /* | ||||
|       * ...and generally, our preferred cipher is AES. | ||||
| @@ -1527,7 +1545,7 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method, | ||||
| @@ -1525,7 +1543,7 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_ | ||||
|       * Within each group, ciphers remain sorted by strength and previous | ||||
|       * preference, i.e., | ||||
|       * 1) ECDHE > DHE | ||||
|   | ||||
| @@ -8,7 +8,6 @@ This adds configuration options for engines, loading all cnf files under | ||||
|  | ||||
| Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com> | ||||
|  | ||||
| diff --git a/apps/openssl.cnf b/apps/openssl.cnf | ||||
| --- a/apps/openssl.cnf | ||||
| +++ b/apps/openssl.cnf | ||||
| @@ -22,6 +22,16 @@ oid_section		= new_oids | ||||
|   | ||||
| @@ -14,7 +14,6 @@ Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> | ||||
| Reviewed-by: Richard Levitte <levitte@openssl.org> | ||||
| (Merged from https://github.com/openssl/openssl/pull/7585) | ||||
|  | ||||
| diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
| --- a/crypto/engine/eng_devcrypto.c | ||||
| +++ b/crypto/engine/eng_devcrypto.c | ||||
| @@ -461,6 +461,7 @@ struct digest_ctx { | ||||
| @@ -25,7 +24,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|  }; | ||||
|   | ||||
|  static const struct digest_data_st { | ||||
| @@ -564,12 +565,15 @@ static int digest_update(EVP_MD_CTX *ctx, const void *data, size_t count) | ||||
| @@ -564,12 +565,15 @@ static int digest_update(EVP_MD_CTX *ctx | ||||
|      if (digest_ctx == NULL) | ||||
|          return 0; | ||||
|   | ||||
| @@ -45,7 +44,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|  } | ||||
|   | ||||
|  static int digest_final(EVP_MD_CTX *ctx, unsigned char *md) | ||||
| @@ -579,7 +583,10 @@ static int digest_final(EVP_MD_CTX *ctx, unsigned char *md) | ||||
| @@ -579,7 +583,10 @@ static int digest_final(EVP_MD_CTX *ctx, | ||||
|   | ||||
|      if (md == NULL || digest_ctx == NULL) | ||||
|          return 0; | ||||
|   | ||||
| @@ -13,7 +13,6 @@ Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> | ||||
| Reviewed-by: Richard Levitte <levitte@openssl.org> | ||||
| (Merged from https://github.com/openssl/openssl/pull/7585) | ||||
|  | ||||
| diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
| --- a/crypto/engine/eng_devcrypto.c | ||||
| +++ b/crypto/engine/eng_devcrypto.c | ||||
| @@ -16,6 +16,7 @@ | ||||
| @@ -79,7 +78,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|   | ||||
|      /* | ||||
|       * Code further down must make sure that only NIDs in the table above | ||||
| @@ -333,19 +367,40 @@ static int cipher_cleanup(EVP_CIPHER_CTX *ctx) | ||||
| @@ -333,19 +367,40 @@ static int cipher_cleanup(EVP_CIPHER_CTX | ||||
|  } | ||||
|   | ||||
|  /* | ||||
| @@ -185,7 +184,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|  static const EVP_CIPHER *get_cipher_method(int nid) | ||||
|  { | ||||
|      size_t i = get_cipher_data_index(nid); | ||||
| @@ -438,6 +520,36 @@ static int devcrypto_ciphers(ENGINE *e, const EVP_CIPHER **cipher, | ||||
| @@ -438,6 +520,36 @@ static int devcrypto_ciphers(ENGINE *e, | ||||
|      return *cipher != NULL; | ||||
|  } | ||||
|   | ||||
| @@ -246,7 +245,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|   | ||||
|      /* | ||||
|       * Code further down must make sure that only NIDs in the table above | ||||
| @@ -516,8 +637,8 @@ static const struct digest_data_st *get_digest_data(int nid) | ||||
| @@ -516,8 +637,8 @@ static const struct digest_data_st *get_ | ||||
|  } | ||||
|   | ||||
|  /* | ||||
| @@ -257,7 +256,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|   */ | ||||
|   | ||||
|  static int digest_init(EVP_MD_CTX *ctx) | ||||
| @@ -630,52 +751,94 @@ static int digest_cleanup(EVP_MD_CTX *ctx) | ||||
| @@ -630,52 +751,94 @@ static int digest_cleanup(EVP_MD_CTX *ct | ||||
|      return clean_devcrypto_session(&digest_ctx->sess); | ||||
|  } | ||||
|   | ||||
| @@ -402,7 +401,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|      } | ||||
|  } | ||||
|   | ||||
| @@ -739,8 +909,154 @@ static int devcrypto_digests(ENGINE *e, const EVP_MD **digest, | ||||
| @@ -739,7 +909,153 @@ static int devcrypto_digests(ENGINE *e, | ||||
|      return *digest != NULL; | ||||
|  } | ||||
|   | ||||
| @@ -478,8 +477,8 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
| +    "DIGESTS", | ||||
| +    "either ALL, NONE, or a comma-separated list of digests to enable [default=ALL]", | ||||
| +    ENGINE_CMD_FLAG_STRING}, | ||||
|  #endif | ||||
|   | ||||
| +#endif | ||||
| + | ||||
| +   {0, NULL, NULL, 0} | ||||
| +}; | ||||
| + | ||||
| @@ -503,7 +502,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
| +        use_softdrivers = i; | ||||
| +#ifdef IMPLEMENT_DIGEST | ||||
| +        rebuild_known_digest_nids(e); | ||||
| +#endif | ||||
|  #endif | ||||
| +        rebuild_known_cipher_nids(e); | ||||
| +        return 1; | ||||
| +#endif /* CIOCGSESSINFO */ | ||||
| @@ -553,10 +552,9 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
| +    } | ||||
| +    return 0; | ||||
| +} | ||||
| + | ||||
|   | ||||
|  /****************************************************************************** | ||||
|   * | ||||
|   * LOAD / UNLOAD | ||||
| @@ -806,6 +1122,8 @@ void engine_load_devcrypto_int() | ||||
|   | ||||
|      if (!ENGINE_set_id(e, "devcrypto") | ||||
|   | ||||
| @@ -11,10 +11,9 @@ Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> | ||||
| Reviewed-by: Richard Levitte <levitte@openssl.org> | ||||
| (Merged from https://github.com/openssl/openssl/pull/7585) | ||||
|  | ||||
| diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
| --- a/crypto/engine/eng_devcrypto.c | ||||
| +++ b/crypto/engine/eng_devcrypto.c | ||||
| @@ -50,16 +50,20 @@ static int use_softdrivers = DEVCRYPTO_DEFAULT_USE_SOFDTRIVERS; | ||||
| @@ -50,16 +50,20 @@ static int use_softdrivers = DEVCRYPTO_D | ||||
|   */ | ||||
|  struct driver_info_st { | ||||
|      enum devcrypto_status_t { | ||||
| @@ -81,7 +80,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|  #endif /* CIOCGSESSINFO */ | ||||
|          } | ||||
|          ioctl(cfd, CIOCFSESSION, &sess.ses); | ||||
| @@ -505,8 +514,11 @@ static void destroy_all_cipher_methods(void) | ||||
| @@ -505,8 +514,11 @@ static void destroy_all_cipher_methods(v | ||||
|  { | ||||
|      size_t i; | ||||
|   | ||||
| @@ -94,7 +93,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|  } | ||||
|   | ||||
|  static int devcrypto_ciphers(ENGINE *e, const EVP_CIPHER **cipher, | ||||
| @@ -550,6 +562,40 @@ static int cryptodev_select_cipher_cb(const char *str, int len, void *usr) | ||||
| @@ -550,6 +562,40 @@ static int cryptodev_select_cipher_cb(co | ||||
|      return 1; | ||||
|  } | ||||
|   | ||||
| @@ -189,7 +188,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|              EVP_MD_meth_free(known_digest_methods[i]); | ||||
|              known_digest_methods[i] = NULL; | ||||
|              goto finish; | ||||
| @@ -894,8 +945,11 @@ static void destroy_all_digest_methods(void) | ||||
| @@ -894,8 +945,11 @@ static void destroy_all_digest_methods(v | ||||
|  { | ||||
|      size_t i; | ||||
|   | ||||
| @@ -202,7 +201,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|  } | ||||
|   | ||||
|  static int devcrypto_digests(ENGINE *e, const EVP_MD **digest, | ||||
| @@ -939,6 +993,43 @@ static int cryptodev_select_digest_cb(const char *str, int len, void *usr) | ||||
| @@ -939,6 +993,43 @@ static int cryptodev_select_digest_cb(co | ||||
|      return 1; | ||||
|  } | ||||
|   | ||||
| @@ -246,7 +245,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|  #endif | ||||
|   | ||||
|  /****************************************************************************** | ||||
| @@ -983,6 +1074,11 @@ static const ENGINE_CMD_DEFN devcrypto_cmds[] = { | ||||
| @@ -983,6 +1074,11 @@ static const ENGINE_CMD_DEFN devcrypto_c | ||||
|      ENGINE_CMD_FLAG_STRING}, | ||||
|  #endif | ||||
|   | ||||
| @@ -258,7 +257,7 @@ diff --git a/crypto/engine/eng_devcrypto.c b/crypto/engine/eng_devcrypto.c | ||||
|     {0, NULL, NULL, 0} | ||||
|  }; | ||||
|   | ||||
| @@ -1051,6 +1147,13 @@ static int devcrypto_ctrl(ENGINE *e, int cmd, long i, void *p, void (*f) (void)) | ||||
| @@ -1051,6 +1147,13 @@ static int devcrypto_ctrl(ENGINE *e, int | ||||
|          return 1; | ||||
|  #endif /* IMPLEMENT_DIGEST */ | ||||
|   | ||||
|   | ||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -19,7 +19,6 @@ turn them on if it is safe and fast enough. | ||||
|  | ||||
| Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com> | ||||
|  | ||||
| diff --git a/engines/e_devcrypto.c b/engines/e_devcrypto.c | ||||
| --- a/engines/e_devcrypto.c | ||||
| +++ b/engines/e_devcrypto.c | ||||
| @@ -852,7 +852,7 @@ static void prepare_digest_methods(void) | ||||
| @@ -31,7 +30,7 @@ diff --git a/engines/e_devcrypto.c b/engines/e_devcrypto.c | ||||
|   | ||||
|          /* | ||||
|           * Check that the digest is usable | ||||
| @@ -1072,7 +1072,7 @@ static const ENGINE_CMD_DEFN devcrypto_cmds[] = { | ||||
| @@ -1072,7 +1072,7 @@ static const ENGINE_CMD_DEFN devcrypto_c | ||||
|  #ifdef IMPLEMENT_DIGEST | ||||
|     {DEVCRYPTO_CMD_DIGESTS, | ||||
|      "DIGESTS", | ||||
|   | ||||
| @@ -8,10 +8,9 @@ session.  It may have been closed by another process after a fork. | ||||
|  | ||||
| Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com> | ||||
|  | ||||
| diff --git a/engines/e_devcrypto.c b/engines/e_devcrypto.c | ||||
| --- a/engines/e_devcrypto.c | ||||
| +++ b/engines/e_devcrypto.c | ||||
| @@ -195,9 +195,8 @@ static int cipher_init(EVP_CIPHER_CTX *ctx, const unsigned char *key, | ||||
| @@ -195,9 +195,8 @@ static int cipher_init(EVP_CIPHER_CTX *c | ||||
|          get_cipher_data(EVP_CIPHER_CTX_nid(ctx)); | ||||
|   | ||||
|      /* cleanup a previous session */ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 John Audia
					John Audia