mirror of
https://github.com/php/php-src.git
synced 2024-11-29 12:53:37 +08:00
Newer versions of libmonetra broke compatability with one function. Make workaround that detects version, and works with both.
This commit is contained in:
parent
c861ce463d
commit
ab6faef7ee
@ -51,6 +51,20 @@ yes
|
|||||||
],[
|
],[
|
||||||
AC_MSG_ERROR([libmcve 3.2.2 or greater required.])
|
AC_MSG_ERROR([libmcve 3.2.2 or greater required.])
|
||||||
])
|
])
|
||||||
|
|
||||||
|
AC_MSG_CHECKING([for correct libmonetra 4.2 or higher])
|
||||||
|
AC_EGREP_CPP(yes,[
|
||||||
|
#include "$MCVE_DIR/include/mcve.h"
|
||||||
|
#ifdef MCVE_SetSSL_CAfile
|
||||||
|
yes
|
||||||
|
#endif
|
||||||
|
],[
|
||||||
|
AC_MSG_RESULT([yes])
|
||||||
|
],[
|
||||||
|
AC_DEFINE([LIBMONETRA_BELOW_4_2], 1, [Whether or not we're using libmonetra 4.2 or higher ])
|
||||||
|
AC_MSG_ERROR([no])
|
||||||
|
])
|
||||||
|
|
||||||
CPPFLAGS=$saved_CPPFLAGS
|
CPPFLAGS=$saved_CPPFLAGS
|
||||||
|
|
||||||
PHP_ADD_INCLUDE($MCVE_DIR/include)
|
PHP_ADD_INCLUDE($MCVE_DIR/include)
|
||||||
|
@ -25,6 +25,14 @@
|
|||||||
|
|
||||||
#include "php.h"
|
#include "php.h"
|
||||||
|
|
||||||
|
#if PHP_WIN32
|
||||||
|
#include "config.w32.h"
|
||||||
|
#elif defined NETWARE
|
||||||
|
#include "config.nw.h"
|
||||||
|
#else
|
||||||
|
#include "php_config.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#if HAVE_MCVE
|
#if HAVE_MCVE
|
||||||
|
|
||||||
/* standard php include(s) */
|
/* standard php include(s) */
|
||||||
@ -719,23 +727,34 @@ PHP_FUNCTION(m_setssl)
|
|||||||
}
|
}
|
||||||
/* }}} */
|
/* }}} */
|
||||||
|
|
||||||
/* {{{ proto int m_setssl_files(string sslkeyfile, string sslcertfile)
|
/* {{{ proto int m_setssl_files(resource conn, string sslkeyfile, string sslcertfile)
|
||||||
Set certificate key files and certificates if server requires client certificate
|
Set certificate key files and certificates if server requires client certificate
|
||||||
verification
|
verification
|
||||||
*/
|
*/
|
||||||
PHP_FUNCTION(m_setssl_files)
|
PHP_FUNCTION(m_setssl_files)
|
||||||
{
|
{
|
||||||
|
MCVE_CONN *conn;
|
||||||
int retval;
|
int retval;
|
||||||
zval **arg1, **arg2;
|
zval **arg1, **arg2, **arg3;
|
||||||
|
|
||||||
|
#ifndef LIBMONETRA_BELOW_4_2
|
||||||
|
if (ZEND_NUM_ARGS() != 3 || zend_get_parameters_ex(3, &arg1, &arg2, &arg3) == FAILURE)
|
||||||
|
WRONG_PARAM_COUNT;
|
||||||
|
ZEND_FETCH_RESOURCE(conn, MCVE_CONN *, arg1, -1, "mcve connection", le_conn);
|
||||||
|
#else
|
||||||
if (ZEND_NUM_ARGS() != 2 || zend_get_parameters_ex(2, &arg1, &arg2) == FAILURE)
|
if (ZEND_NUM_ARGS() != 2 || zend_get_parameters_ex(2, &arg1, &arg2) == FAILURE)
|
||||||
WRONG_PARAM_COUNT;
|
WRONG_PARAM_COUNT;
|
||||||
|
#endif
|
||||||
|
|
||||||
convert_to_string_ex(arg1);
|
|
||||||
convert_to_string_ex(arg2);
|
convert_to_string_ex(arg2);
|
||||||
|
|
||||||
|
#ifndef LIBMONETRA_BELOW_4_2
|
||||||
|
convert_to_string_ex(arg3);
|
||||||
|
retval = MCVE_SetSSL_Files(conn, Z_STRVAL_PP(arg2), Z_STRVAL_PP(arg3));
|
||||||
|
#else
|
||||||
|
convert_to_string_ex(arg1);
|
||||||
retval = MCVE_SetSSL_Files(Z_STRVAL_PP(arg1), Z_STRVAL_PP(arg2));
|
retval = MCVE_SetSSL_Files(Z_STRVAL_PP(arg1), Z_STRVAL_PP(arg2));
|
||||||
|
#endif
|
||||||
RETURN_LONG(retval);
|
RETURN_LONG(retval);
|
||||||
}
|
}
|
||||||
/* }}} */
|
/* }}} */
|
||||||
|
Loading…
Reference in New Issue
Block a user