Skip to content

Commit d227207

Browse files
committed
PHPC-703: Support system crypto policy for OpenSSL
This covers changes from CDRIVER-1231. For config.w32, we default to using the system profile for OpenSSL, as libmongoc does for Windows in CMakeLists.txt.
1 parent c5744e9 commit d227207

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

config.m4

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ PHP_ARG_ENABLE(mongodb, whether to enable mongodb support,
33
[ --enable-mongodb Enable mongodb support])
44
PHP_ARG_WITH(openssl-dir, OpenSSL dir for mongodb,
55
[ --with-openssl-dir[=DIR] openssl install prefix], yes, no)
6-
7-
6+
PHP_ARG_WITH(system-ciphers, whether to use system default cipher list instead of hardcoded value,
7+
[ --with-system-ciphers OPENSSL: Use system default cipher list instead of hardcoded value], no, no)
88

99
dnl borrowed from PHP acinclude.m4
1010
AC_DEFUN([PHP_BSON_BIGENDIAN],
@@ -397,6 +397,12 @@ PHP_ARG_WITH(libmongoc, whether to use system libmongoc,
397397
AC_SUBST(MONGOC_ENABLE_CRYPTO_LIBCRYPTO, 1)
398398
AC_SUBST(MONGOC_ENABLE_SSL_OPENSSL, 1)
399399

400+
if test "$PHP_SYSTEM_CIPHERS" != "no"; then
401+
AC_SUBST(MONGOC_ENABLE_CRYPTO_SYSTEM_PROFILE, 1)
402+
else
403+
AC_SUBST(MONGOC_ENABLE_CRYPTO_SYSTEM_PROFILE, 0)
404+
fi
405+
400406
dnl TODO: Support building with Secure Transport on OSX
401407
AC_SUBST(MONGOC_ENABLE_SSL_SECURE_TRANSPORT, 0)
402408
AC_SUBST(MONGOC_ENABLE_CRYPTO_COMMON_CRYPTO, 0)

config.w32

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,12 +44,14 @@ if (PHP_MONGODB != "no") {
4444
AC_DEFINE("MONGOC_ENABLE_CRYPTO_LIBCRYPTO", 1);
4545
AC_DEFINE("MONGOC_ENABLE_SSL", 1);
4646
AC_DEFINE("MONGOC_ENABLE_CRYPTO", 1);
47+
AC_DEFINE("MONGOC_ENABLE_CRYPTO_SYSTEM_PROFILE", 1);
4748
} else {
4849
WARNING("mongodb libopenssl support not enabled, libs not found");
4950
AC_DEFINE("MONGOC_ENABLE_SSL_OPENSSL", 0);
5051
AC_DEFINE("MONGOC_ENABLE_CRYPTO_LIBCRYPTO", 0);
5152
AC_DEFINE("MONGOC_ENABLE_SSL", 0);
5253
AC_DEFINE("MONGOC_ENABLE_CRYPTO", 0);
54+
AC_DEFINE("MONGOC_ENABLE_CRYPTO_SYSTEM_PROFILE", 0);
5355
}
5456

5557
// Secure Transport does not apply to Windows

0 commit comments

Comments
 (0)