]> granicus.if.org Git - php/commitdiff
sync missing functions from libmonetra-5
authorBrad House <bradmssw@php.net>
Mon, 18 Jul 2005 20:10:07 +0000 (20:10 +0000)
committerBrad House <bradmssw@php.net>
Mon, 18 Jul 2005 20:10:07 +0000 (20:10 +0000)
ext/mcve/mcve.c
ext/mcve/php_mcve.h

index c2d446bcbcd97c26332bbe550320c06b9a73258b..f3f8e8f8b9245b9880df0b42ac671cc32be97276 100644 (file)
@@ -60,6 +60,10 @@ function_entry mcve_functions[] = {
        PHP_FE(m_setdropfile,                   NULL)
        PHP_FE(m_setip,                         NULL)
        PHP_FE(m_setssl,                        NULL)
+#if LIBMONETRA_VERSION >= 050000
+       PHP_FE(m_setssl_cafile,                 NULL)
+       PHP_FE(m_responsekeys,                  NULL)
+#endif
        PHP_FE(m_setssl_files,                  NULL)
        PHP_FE(m_settimeout,                    NULL)
        PHP_FE(m_setblocking,                   NULL)
@@ -734,6 +738,31 @@ PHP_FUNCTION(m_setssl)
 }
 /* }}} */
 
+#if LIBMONETRA_VERSION >= 050000
+/* {{{ proto int m_setssl_cafile(resource conn, string cafile)
+   Set SSL CA (Certificate Authority) file for verification of server
+   certificate
+*/
+PHP_FUNCTION(m_setssl_cafile)
+{
+       MCVE_CONN *conn;
+       int retval;
+       zval **arg1, **arg2;
+
+       if (ZEND_NUM_ARGS() != 2 || zend_get_parameters_ex(2, &arg1, &arg2) == FAILURE)
+               WRONG_PARAM_COUNT;
+
+
+       ZEND_FETCH_RESOURCE(conn, MCVE_CONN *, arg1, -1, "mcve connection", le_conn);
+       convert_to_string_ex(arg2);
+
+       retval = M_SetSSL_CAfile(conn, Z_STRVAL_PP(arg2));
+
+       RETURN_LONG(retval);
+}
+/* }}} */
+#endif
+
 /* {{{ proto int m_setssl_files(resource conn, string sslkeyfile, string sslcertfile)
    Set certificate key files and certificates if server requires client certificate
    verification
@@ -1150,6 +1179,36 @@ PHP_FUNCTION(m_responseparam)
 }
 /* }}} */
 
+#if LIBMONETRA_VERSION >= 050000
+/* {{{ proto array m_responsekeys(resource conn, long identifier)
+   Returns array of strings which represents the keys that can be used
+   for response parameters on this transaction
+*/
+PHP_FUNCTION(m_responsekeys)
+{
+       MCVE_CONN *conn;
+       char **retval;
+       int num_keys, i;
+       zval **arg1, **arg2;
+       
+       if (ZEND_NUM_ARGS() != 2 || zend_get_parameters_ex(2, &arg1, &arg2) == FAILURE)
+               WRONG_PARAM_COUNT;
+
+       ZEND_FETCH_RESOURCE(conn, MCVE_CONN *, arg1, -1, "mcve connection", le_conn);
+       convert_to_long_ex(arg2);
+       
+       array_init(return_value);
+               
+       retval=M_ResponseKeys(conn, Z_LVAL_PP(arg2), &num_keys);
+       if (retval != NULL) {
+               for (i=0; i<num_keys; i++) 
+                       add_next_index_string(return_value, retval[i], 1);
+               M_FreeResponseKeys(retval, num_keys);
+       }
+}
+/* }}} */
+#endif
+
 /* {{{ proto string m_getuserparam(resource conn, long identifier, int key)
    Get a user response parameter */
 PHP_FUNCTION(m_getuserparam)
index 531891ca87618d542e8425d4210559f38ff35034..dbce848425e3cc930f73e0d7b10d90d1ec7d2656 100644 (file)
@@ -51,6 +51,10 @@ PHP_FUNCTION(m_destroyconn);
 PHP_FUNCTION(m_setdropfile);
 PHP_FUNCTION(m_setip);
 PHP_FUNCTION(m_setssl);
+#if LIBMONETRA_VERSION >= 050000
+PHP_FUNCTION(m_setssl_cafile);
+PHP_FUNCTION(m_responsekeys);
+#endif
 PHP_FUNCTION(m_setssl_files);
 PHP_FUNCTION(m_setblocking);
 PHP_FUNCTION(m_settimeout);