[openssl/openssl] fdc464: err: fix crash in ERR_load_strings() when configur...

mspncp noreply at reply.github.openssl.org
Sat Apr 9 21:10:32 UTC 2022


  Branch: refs/heads/OpenSSL_1_1_1-stable
  Home:   https://github.openssl.org/openssl/openssl
  Commit: fdc4646d5eb03e9e3d14ed496bf655671240193a
      https://github.openssl.org/openssl/openssl/commit/fdc4646d5eb03e9e3d14ed496bf655671240193a
  Author: Dr. Matthias St. Pierre <matthias.st.pierre at ncp-e.com>
  Date:   2022-04-09 (Sat, 09 Apr 2022)

  Changed paths:
    M crypto/err/err.c

  Log Message:
  -----------
  err: fix crash in ERR_load_strings() when configured with no-err

This commit removes the entire initialization and cleanup of the
error string hash table (`int_error_hash`) if `no-err` is configured.
The only operative function remaining is `ERR_get_next_error_library()`.
That is the reason why the `err_string_lock` and hence the
`do_err_strings_init()` function can't be removed entirely.

Fixes #17971

Reviewed-by: Tomas Mraz <tomas at openssl.org>
Reviewed-by: Paul Dale <pauli at openssl.org>
(Merged from https://github.com/openssl/openssl/pull/17975)


  Commit: 2b6617511e424e5a0e8b841918ad2cae864e2699
      https://github.openssl.org/openssl/openssl/commit/2b6617511e424e5a0e8b841918ad2cae864e2699
  Author: Dr. Matthias St. Pierre <matthias.st.pierre at ncp-e.com>
  Date:   2022-04-09 (Sat, 09 Apr 2022)

  Changed paths:
    M crypto/err/err.c

  Log Message:
  -----------
  err: fix indentation of preprocessor directive

Reviewed-by: Tomas Mraz <tomas at openssl.org>
Reviewed-by: Paul Dale <pauli at openssl.org>
(Merged from https://github.com/openssl/openssl/pull/17975)


  Commit: c1c7004e7fcddcbb767c47f8dc1831c4637d1b74
      https://github.openssl.org/openssl/openssl/commit/c1c7004e7fcddcbb767c47f8dc1831c4637d1b74
  Author: Dr. Matthias St. Pierre <matthias.st.pierre at ncp-e.com>
  Date:   2022-04-09 (Sat, 09 Apr 2022)

  Changed paths:
    M crypto/err/err.c
    M crypto/init.c
    M ssl/ssl_init.c

  Log Message:
  -----------
  err: get rid of err_free_strings_int()

Even though the function is not part of the public api, it is not
entirely removed, in order to minimize the chance of breakage,
because it is exported from libcrypto. Instead, we keep a dummy
implementation.

Reviewed-by: Tomas Mraz <tomas at openssl.org>
Reviewed-by: Paul Dale <pauli at openssl.org>
(Merged from https://github.com/openssl/openssl/pull/17975)


Compare: https://github.openssl.org/openssl/openssl/compare/93ac3b8dd1cc...c1c7004e7fcd


More information about the openssl-commits mailing list