Author: kotkov Date: Tue Apr 25 17:34:03 2023 New Revision: 1909408 URL: http://svn.apache.org/viewvc?rev=1909408&view=rev Log: On the '1.3.x-r1909252-group' branch: Merge r1909252, r1909385, r1909406 from trunk:
- r1909252: Do not use OpenSSL functions that operates with FILE to avoid potential CRT versions mismatch. - r1909385: Define OPENSSL_NO_STDIO to prevent using _fp() API from OpenSSL. - r1909406: Do not include openssl/applink.c in tests. Resolve the conflicts and adjust the change to the state of the 1.3.x branch. Modified: serf/branches/1.3.x-r1909252-group/ (props changed) serf/branches/1.3.x-r1909252-group/SConstruct serf/branches/1.3.x-r1909252-group/buckets/ssl_buckets.c serf/branches/1.3.x-r1909252-group/test/server/test_sslserver.c serf/branches/1.3.x-r1909252-group/test/test_ssl.c Propchange: serf/branches/1.3.x-r1909252-group/ ------------------------------------------------------------------------------ Merged /serf/trunk:r1909252,1909385,1909406 Modified: serf/branches/1.3.x-r1909252-group/SConstruct URL: http://svn.apache.org/viewvc/serf/branches/1.3.x-r1909252-group/SConstruct?rev=1909408&r1=1909407&r2=1909408&view=diff ============================================================================== --- serf/branches/1.3.x-r1909252-group/SConstruct (original) +++ serf/branches/1.3.x-r1909252-group/SConstruct Tue Apr 25 17:34:03 2023 @@ -292,6 +292,9 @@ SOURCES = Glob('*.c') + Glob('buckets/*. lib_static = env.StaticLibrary(LIBNAMESTATIC, SOURCES) lib_shared = env.SharedLibrary(LIBNAME, SOURCES + SHARED_SOURCES) +# Define OPENSSL_NO_STDIO to prevent using _fp() API. +env.Append(CPPDEFINES=['OPENSSL_NO_STDIO']) + if aprstatic: env.Append(CPPDEFINES=['APR_DECLARE_STATIC', 'APU_DECLARE_STATIC']) Modified: serf/branches/1.3.x-r1909252-group/buckets/ssl_buckets.c URL: http://svn.apache.org/viewvc/serf/branches/1.3.x-r1909252-group/buckets/ssl_buckets.c?rev=1909408&r1=1909407&r2=1909408&view=diff ============================================================================== --- serf/branches/1.3.x-r1909252-group/buckets/ssl_buckets.c (original) +++ serf/branches/1.3.x-r1909252-group/buckets/ssl_buckets.c Tue Apr 25 17:34:03 2023 @@ -1521,11 +1521,11 @@ apr_status_t serf_ssl_load_cert_file( const char *file_path, apr_pool_t *pool) { - FILE *fp = fopen(file_path, "r"); + BIO *bio = BIO_new_file(file_path, "r"); - if (fp) { - X509 *ssl_cert = PEM_read_X509(fp, NULL, NULL, NULL); - fclose(fp); + if (bio) { + X509 *ssl_cert = PEM_read_bio_X509(bio, NULL, NULL, NULL); + BIO_free(bio); if (ssl_cert) { *cert = apr_palloc(pool, sizeof(serf_ssl_certificate_t)); Modified: serf/branches/1.3.x-r1909252-group/test/server/test_sslserver.c URL: http://svn.apache.org/viewvc/serf/branches/1.3.x-r1909252-group/test/server/test_sslserver.c?rev=1909408&r1=1909407&r2=1909408&view=diff ============================================================================== --- serf/branches/1.3.x-r1909252-group/test/server/test_sslserver.c (original) +++ serf/branches/1.3.x-r1909252-group/test/server/test_sslserver.c Tue Apr 25 17:34:03 2023 @@ -269,10 +269,10 @@ init_ssl_context(serv_ctx_t *serv_ctx, store = SSL_CTX_get_cert_store(ssl_ctx->ctx); while(certfile) { - FILE *fp = fopen(certfile, "r"); - if (fp) { - X509 *ssl_cert = PEM_read_X509(fp, NULL, NULL, NULL); - fclose(fp); + BIO *bio = BIO_new_file(certfile, "r"); + if (bio) { + X509 *ssl_cert = PEM_read_bio_X509(bio, NULL, NULL, NULL); + BIO_free(bio); SSL_CTX_add_extra_chain_cert(ssl_ctx->ctx, ssl_cert); Modified: serf/branches/1.3.x-r1909252-group/test/test_ssl.c URL: http://svn.apache.org/viewvc/serf/branches/1.3.x-r1909252-group/test/test_ssl.c?rev=1909408&r1=1909407&r2=1909408&view=diff ============================================================================== --- serf/branches/1.3.x-r1909252-group/test/test_ssl.c (original) +++ serf/branches/1.3.x-r1909252-group/test/test_ssl.c Tue Apr 25 17:34:03 2023 @@ -28,12 +28,6 @@ #include "test_serf.h" -#if defined(WIN32) && defined(_DEBUG) -/* Include this file to allow running a Debug build of serf with a Release - build of OpenSSL. */ -#include <openssl/applink.c> -#endif - /* Test setting up the openssl library. */ static void test_ssl_init(CuTest *tc) {