Ticket #1999 (closed enhancement: fixed)

Opened 8 months ago

Last modified 3 months ago

Linking errors with OpenSSL 1.1.0 when backward compatibility settings turned off

Reported by: nanang Owned by: bennylp
Priority: normal Milestone: release-2.7
Component: pjlib Version: trunk
Keywords: Cc:
Backport to 1.x milestone: Backported: no

Description

OpenSSL 1.1.0 seems to deprecate quite a lot of APIs and backward compatibilities are mostly maintained when using default settings (e.g: OPENSSL_API_COMPAT==OPENSSL_MIN_API==0). In #1932, PJLIB SSL socket does not handle the deprecated APIs when backward compatibility settings are turned off, so there will be linking errors such as:

"_SSL_library_init", referenced from:
      _init_openssl in libpj-armv7-apple-darwin_ios.a(ssl_sock_ossl.o)
  "_SSL_load_error_strings", referenced from:
      _init_openssl in libpj-armv7-apple-darwin_ios.a(ssl_sock_ossl.o)
  "_TLSv1_method", referenced from:
      _create_ssl in libpj-armv7-apple-darwin_ios.a(ssl_sock_ossl.o)
  "_TLSv1_server_method", referenced from:
      _init_openssl in libpj-armv7-apple-darwin_ios.a(ssl_sock_ossl.o)
  "_X509_get_notAfter", referenced from:
      _get_cert_info in libpj-armv7-apple-darwin_ios.a(ssl_sock_ossl.o)
  "_X509_get_notBefore", referenced from:
      _get_cert_info in libpj-armv7-apple-darwin_ios.a(ssl_sock_ossl.o)

Thanks Arslan Pervaiz for the report.

Change History

comment:1 Changed 3 months ago by nanang

  • Status changed from new to closed
  • Resolution set to fixed

In 5623:

Close #1999: Support OpenSSL 1.1.0 with backward compatibility setting turned of (no deprecated APIs).

Note: See TracTickets for help on using tickets.