[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysqlnd/mysqlnd.c branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h trunk/ext/mysqlnd/mysqlnd.c trunk/ext/mysqlnd/mysqlnd_structs.h

2010-08-06 Thread David Soria Parra
dsp  Fri, 06 Aug 2010 19:47:03 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=301937

Log:
make ssl_set return value in mysqlnd compatible with libmysqli return value

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
U   php/php-src/trunk/ext/mysqlnd/mysqlnd.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2010-08-06 19:11:34 UTC 
(rev 301936)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2010-08-06 19:47:03 UTC 
(rev 301937)
@@ -1293,14 +1293,14 @@
 /* }}} */

 /* {{{ mysqlnd_conn::ssl_set */
-void
+static enum_func_status
 MYSQLND_METHOD(mysqlnd_conn, ssl_set)(MYSQLND * const conn, const char * key, 
const char * const cert, const char * const ca, const char * const capath, 
const char * const cipher TSRMLS_DC)
 {
-   conn-net-m.set_client_option(conn-net, MYSQLND_OPT_SSL_KEY, key 
TSRMLS_CC);
-   conn-net-m.set_client_option(conn-net, MYSQLND_OPT_SSL_CERT, cert 
TSRMLS_CC);
-   conn-net-m.set_client_option(conn-net, MYSQLND_OPT_SSL_CA, ca 
TSRMLS_CC);
-   conn-net-m.set_client_option(conn-net, MYSQLND_OPT_SSL_CAPATH, 
capath TSRMLS_CC);
-   conn-net-m.set_client_option(conn-net, MYSQLND_OPT_SSL_CIPHER, 
cipher TSRMLS_CC);
+   return (PASS == conn-net-m.set_client_option(conn-net, 
MYSQLND_OPT_SSL_KEY, key TSRMLS_CC) 
+   PASS == conn-net-m.set_client_option(conn-net, 
MYSQLND_OPT_SSL_CERT, cert TSRMLS_CC) 
+   PASS == conn-net-m.set_client_option(conn-net, 
MYSQLND_OPT_SSL_CA, ca TSRMLS_CC) 
+   PASS == conn-net-m.set_client_option(conn-net, 
MYSQLND_OPT_SSL_CAPATH, capath TSRMLS_CC) 
+   PASS == conn-net-m.set_client_option(conn-net, 
MYSQLND_OPT_SSL_CIPHER, cipher TSRMLS_CC)) ? PASS : FAIL;
 }
 /* }}} */


Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2010-08-06 
19:11:34 UTC (rev 301936)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2010-08-06 
19:47:03 UTC (rev 301937)
@@ -400,7 +400,7 @@
 typedef enum_func_status   (*func_mysqlnd_conn__end_psession)(MYSQLND 
*conn TSRMLS_DC);
 typedef enum_func_status   (*func_mysqlnd_conn__send_close)(MYSQLND * conn 
TSRMLS_DC);

-typedef void   (*func_mysqlnd_conn__ssl_set)(MYSQLND * 
const conn, const char * key, const char * const cert, const char * const ca, 
const char * const capath, const char * const cipher TSRMLS_DC);
+typedef enum_func_status(*func_mysqlnd_conn__ssl_set)(MYSQLND * const 
conn, const char * key, const char * const cert, const char * const ca, const 
char * const capath, const char * const cipher TSRMLS_DC);

 typedef MYSQLND_RES *  (*func_mysqlnd_conn__result_init)(unsigned int 
field_count, zend_bool persistent TSRMLS_DC);


Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2010-08-06 19:11:34 UTC (rev 
301936)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2010-08-06 19:47:03 UTC (rev 
301937)
@@ -1293,14 +1293,14 @@
 /* }}} */

 /* {{{ mysqlnd_conn::ssl_set */
-void
+static enum_func_status
 MYSQLND_METHOD(mysqlnd_conn, ssl_set)(MYSQLND * const conn, const char * key, 
const char * const cert, const char * const ca, const char * const capath, 
const char * const cipher TSRMLS_DC)
 {
-   conn-net-m.set_client_option(conn-net, MYSQLND_OPT_SSL_KEY, key 
TSRMLS_CC);
-   conn-net-m.set_client_option(conn-net, MYSQLND_OPT_SSL_CERT, cert 
TSRMLS_CC);
-   conn-net-m.set_client_option(conn-net, MYSQLND_OPT_SSL_CA, ca 
TSRMLS_CC);
-   conn-net-m.set_client_option(conn-net, MYSQLND_OPT_SSL_CAPATH, 
capath TSRMLS_CC);
-   conn-net-m.set_client_option(conn-net, MYSQLND_OPT_SSL_CIPHER, 
cipher TSRMLS_CC);
+   return (PASS == conn-net-m.set_client_option(conn-net, 
MYSQLND_OPT_SSL_KEY, key TSRMLS_CC) 
+   PASS == conn-net-m.set_client_option(conn-net, 
MYSQLND_OPT_SSL_CERT, cert TSRMLS_CC) 
+   PASS == conn-net-m.set_client_option(conn-net, 
MYSQLND_OPT_SSL_CA, ca TSRMLS_CC) 
+   PASS == conn-net-m.set_client_option(conn-net, 
MYSQLND_OPT_SSL_CAPATH, capath TSRMLS_CC) 
+   PASS == conn-net-m.set_client_option(conn-net, 
MYSQLND_OPT_SSL_CIPHER, cipher TSRMLS_CC)) ? PASS : FAIL;
 }
 /* }}} */


Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h 2010-08-06 19:11:34 UTC 
(rev 301936)
+++ 

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysqlnd/mysqlnd.c branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h trunk/ext/mysqlnd/mysqlnd.c trunk/ext/mysqlnd/mysqlnd_structs.h

2010-05-25 Thread Andrey Hristov
andrey   Tue, 25 May 2010 22:40:47 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=299761

Log:
Init should return status value because initialization can fail.
In this case mysqlnd_init() should return NULL to the end-user.

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
U   php/php-src/trunk/ext/mysqlnd/mysqlnd.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2010-05-25 22:38:11 UTC 
(rev 299760)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2010-05-25 22:40:47 UTC 
(rev 299761)
@@ -2140,7 +2140,7 @@


 MYSQLND_STMT * _mysqlnd_stmt_init(MYSQLND * const conn TSRMLS_DC);
-static void MYSQLND_METHOD(mysqlnd_conn, init)(MYSQLND * conn TSRMLS_DC);
+static enum_func_status MYSQLND_METHOD(mysqlnd_conn, init)(MYSQLND * conn 
TSRMLS_DC);

 static
 MYSQLND_CLASS_METHODS_START(mysqlnd_conn)
@@ -2217,17 +2217,17 @@


 /* {{{ mysqlnd_conn::init */
-static void
+static enum_func_status
 MYSQLND_METHOD(mysqlnd_conn, init)(MYSQLND * conn TSRMLS_DC)
 {
DBG_ENTER(mysqlnd_conn::init);
+   mysqlnd_stats_init(conn-stats, STAT_LAST);
+   SET_ERROR_AFF_ROWS(conn);
+
conn-net = mysqlnd_net_init(conn-persistent TSRMLS_CC);
conn-protocol = mysqlnd_protocol_init(conn-persistent TSRMLS_CC);
-   mysqlnd_stats_init(conn-stats, STAT_LAST);

-   SET_ERROR_AFF_ROWS(conn);
-
-   DBG_VOID_RETURN;
+   DBG_RETURN(conn-net  conn-protocol? PASS:FAIL);
 }
 /* }}} */

@@ -2249,7 +2249,10 @@
CONN_SET_STATE(ret, CONN_ALLOCED);
ret-m-get_reference(ret TSRMLS_CC);

-   ret-m-init(ret TSRMLS_CC);
+   if (PASS != ret-m-init(ret TSRMLS_CC)) {
+   ret-m-dtor(ret TSRMLS_CC);
+   ret = NULL;
+   }

DBG_RETURN(ret);
 }

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2010-05-25 
22:38:11 UTC (rev 299760)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2010-05-25 
22:40:47 UTC (rev 299761)
@@ -334,7 +334,7 @@



-typedef void   (*func_mysqlnd_conn__init)(MYSQLND * 
conn TSRMLS_DC);
+typedef enum_func_status   (*func_mysqlnd_conn__init)(MYSQLND * conn 
TSRMLS_DC);
 typedef enum_func_status   (*func_mysqlnd_conn__connect)(MYSQLND *conn, 
const char *host, const char * user, const char * passwd, unsigned int 
passwd_len, const char * db, unsigned int db_len, unsigned int port, const char 
* socket, unsigned int mysql_flags TSRMLS_DC);
 typedef ulong  
(*func_mysqlnd_conn__escape_string)(const MYSQLND * const conn, char *newstr, 
const char *escapestr, size_t escapestr_len TSRMLS_DC);
 typedef enum_func_status   (*func_mysqlnd_conn__set_charset)(MYSQLND * 
const conn, const char * const charset TSRMLS_DC);

Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2010-05-25 22:38:11 UTC (rev 
299760)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2010-05-25 22:40:47 UTC (rev 
299761)
@@ -2140,7 +2140,7 @@


 MYSQLND_STMT * _mysqlnd_stmt_init(MYSQLND * const conn TSRMLS_DC);
-static void MYSQLND_METHOD(mysqlnd_conn, init)(MYSQLND * conn TSRMLS_DC);
+static enum_func_status MYSQLND_METHOD(mysqlnd_conn, init)(MYSQLND * conn 
TSRMLS_DC);

 static
 MYSQLND_CLASS_METHODS_START(mysqlnd_conn)
@@ -2217,17 +2217,17 @@


 /* {{{ mysqlnd_conn::init */
-static void
+static enum_func_status
 MYSQLND_METHOD(mysqlnd_conn, init)(MYSQLND * conn TSRMLS_DC)
 {
DBG_ENTER(mysqlnd_conn::init);
+   mysqlnd_stats_init(conn-stats, STAT_LAST);
+   SET_ERROR_AFF_ROWS(conn);
+
conn-net = mysqlnd_net_init(conn-persistent TSRMLS_CC);
conn-protocol = mysqlnd_protocol_init(conn-persistent TSRMLS_CC);
-   mysqlnd_stats_init(conn-stats, STAT_LAST);

-   SET_ERROR_AFF_ROWS(conn);
-
-   DBG_VOID_RETURN;
+   DBG_RETURN(conn-net  conn-protocol? PASS:FAIL);
 }
 /* }}} */

@@ -2249,7 +2249,10 @@
CONN_SET_STATE(ret, CONN_ALLOCED);
ret-m-get_reference(ret TSRMLS_CC);

-   ret-m-init(ret TSRMLS_CC);
+   if (PASS != ret-m-init(ret TSRMLS_CC)) {
+   ret-m-dtor(ret TSRMLS_CC);
+   ret = NULL;
+   }

DBG_RETURN(ret);
 }

Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h 2010-05-25 22:38:11 UTC 
(rev 299760)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h 2010-05-25 22:40:47 UTC 

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysqlnd/mysqlnd.c branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h trunk/ext/mysqlnd/mysqlnd.c trunk/ext/mysqlnd/mysqlnd_structs.h

2010-02-09 Thread Andrey Hristov
andrey   Tue, 09 Feb 2010 19:05:40 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=294819

Log:
make send_close a hook, too

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
U   php/php-src/trunk/ext/mysqlnd/mysqlnd.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2010-02-09 18:58:35 UTC 
(rev 294818)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2010-02-09 19:05:40 UTC 
(rev 294819)
@@ -64,8 +64,6 @@
 PHPAPI MYSQLND_STATS *mysqlnd_global_stats = NULL;
 static zend_bool mysqlnd_library_initted = FALSE;

-static enum_func_status mysqlnd_send_close(MYSQLND * conn TSRMLS_DC);
-
 static struct st_mysqlnd_conn_methods *mysqlnd_conn_methods;

 /* {{{ mysqlnd_library_end */
@@ -491,7 +489,7 @@
if (CONN_GET_STATE(conn)  CONN_QUIT_SENT) {
MYSQLND_INC_CONN_STATISTIC(conn-stats, 
STAT_CLOSE_IMPLICIT);
reconnect = TRUE;
-   mysqlnd_send_close(conn TSRMLS_CC);
+   conn-m-send_close(conn TSRMLS_CC);
}

conn-m-free_contents(conn TSRMLS_CC);
@@ -1378,7 +1376,7 @@

 /* {{{ mysqlnd_send_close */
 static enum_func_status
-mysqlnd_send_close(MYSQLND * conn TSRMLS_DC)
+MYSQLND_METHOD(mysqlnd_conn, send_close)(MYSQLND * const conn TSRMLS_DC)
 {
enum_func_status ret = PASS;

@@ -1458,7 +1456,7 @@
  Close now, free_reference will try,
  if we are last, but that's not a problem.
*/
-   ret = mysqlnd_send_close(conn TSRMLS_CC);
+   ret = conn-m-send_close(conn TSRMLS_CC);

ret = conn-m-free_reference(conn TSRMLS_CC);

@@ -1492,7 +1490,7 @@
  This will free the object too, of course because references 
has
  reached zero.
*/
-   ret = mysqlnd_send_close(conn TSRMLS_CC);
+   ret = conn-m-send_close(conn TSRMLS_CC);
conn-m-dtor(conn TSRMLS_CC);
}
DBG_RETURN(ret);
@@ -2099,7 +2097,8 @@
MYSQLND_METHOD(mysqlnd_conn, simple_command),
MYSQLND_METHOD(mysqlnd_conn, simple_command_handle_response),
MYSQLND_METHOD(mysqlnd_conn, restart_psession),
-   MYSQLND_METHOD(mysqlnd_conn, end_psession)
+   MYSQLND_METHOD(mysqlnd_conn, end_psession),
+   MYSQLND_METHOD(mysqlnd_conn, send_close)
 MYSQLND_CLASS_METHODS_END;



Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2010-02-09 
18:58:35 UTC (rev 294818)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2010-02-09 
19:05:40 UTC (rev 294819)
@@ -346,6 +346,7 @@

enum_func_status(*restart_psession)(MYSQLND *conn TSRMLS_DC);
enum_func_status(*end_psession)(MYSQLND *conn TSRMLS_DC);
+   enum_func_status(*send_close)(MYSQLND * conn TSRMLS_DC);
 };



Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2010-02-09 18:58:35 UTC (rev 
294818)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2010-02-09 19:05:40 UTC (rev 
294819)
@@ -64,8 +64,6 @@
 PHPAPI MYSQLND_STATS *mysqlnd_global_stats = NULL;
 static zend_bool mysqlnd_library_initted = FALSE;

-static enum_func_status mysqlnd_send_close(MYSQLND * conn TSRMLS_DC);
-
 static struct st_mysqlnd_conn_methods *mysqlnd_conn_methods;

 /* {{{ mysqlnd_library_end */
@@ -491,7 +489,7 @@
if (CONN_GET_STATE(conn)  CONN_QUIT_SENT) {
MYSQLND_INC_CONN_STATISTIC(conn-stats, 
STAT_CLOSE_IMPLICIT);
reconnect = TRUE;
-   mysqlnd_send_close(conn TSRMLS_CC);
+   conn-m-send_close(conn TSRMLS_CC);
}

conn-m-free_contents(conn TSRMLS_CC);
@@ -1378,7 +1376,7 @@

 /* {{{ mysqlnd_send_close */
 static enum_func_status
-mysqlnd_send_close(MYSQLND * conn TSRMLS_DC)
+MYSQLND_METHOD(mysqlnd_conn, send_close)(MYSQLND * const conn TSRMLS_DC)
 {
enum_func_status ret = PASS;

@@ -1458,7 +1456,7 @@
  Close now, free_reference will try,
  if we are last, but that's not a problem.
*/
-   ret = mysqlnd_send_close(conn TSRMLS_CC);
+   ret = conn-m-send_close(conn TSRMLS_CC);

ret = conn-m-free_reference(conn TSRMLS_CC);

@@ -1492,7 +1490,7 @@
  This will free the object too, of course because references 
has
  reached zero.
*/
-   ret = mysqlnd_send_close(conn TSRMLS_CC);
+ 

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysqlnd/mysqlnd.c branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h trunk/ext/mysqlnd/mysqlnd.c trunk/ext/mysqlnd/mysqlnd_structs.h

2009-12-28 Thread Andrey Hristov
andrey   Mon, 28 Dec 2009 11:17:10 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=292714

Log:
move network creation to the init hook

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
U   php/php-src/trunk/ext/mysqlnd/mysqlnd.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2009-12-28 10:07:42 UTC 
(rev 292713)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2009-12-28 11:17:10 UTC 
(rev 292714)
@@ -2019,8 +2019,11 @@


 MYSQLND_STMT * _mysqlnd_stmt_init(MYSQLND * const conn TSRMLS_DC);
+static void MYSQLND_METHOD(mysqlnd_conn, init)(MYSQLND * conn TSRMLS_DC);

+
 MYSQLND_CLASS_METHODS_START(mysqlnd_conn)
+   MYSQLND_METHOD(mysqlnd_conn, init),
MYSQLND_METHOD(mysqlnd_conn, connect),

MYSQLND_METHOD(mysqlnd_conn, escape_string),
@@ -2086,6 +2089,20 @@
 MYSQLND_CLASS_METHODS_END;


+/* {{{ mysqlnd_conn::init */
+static void
+MYSQLND_METHOD(mysqlnd_conn, init)(MYSQLND * conn TSRMLS_DC)
+{
+   DBG_ENTER(mysqlnd_conn::init);
+   conn-net = mysqlnd_net_init(conn-persistent TSRMLS_CC);
+
+   SET_ERROR_AFF_ROWS(conn);
+
+   DBG_VOID_RETURN;
+}
+/* }}} */
+
+
 /* {{{ mysqlnd_init */
 PHPAPI MYSQLND *_mysqlnd_init(zend_bool persistent TSRMLS_DC)
 {
@@ -2095,20 +2112,18 @@
DBG_ENTER(mysqlnd_init);
DBG_INF_FMT(persistent=%d, persistent);

-   SET_ERROR_AFF_ROWS(ret);
ret-persistent = persistent;
-
ret-m = mysqlnd_conn_methods;
+   CONN_SET_STATE(ret, CONN_ALLOCED);
ret-m-get_reference(ret TSRMLS_CC);

-   ret-net = mysqlnd_net_init(persistent TSRMLS_CC);
+   ret-m-init(ret TSRMLS_CC);

-   CONN_SET_STATE(ret, CONN_ALLOCED);
-
DBG_RETURN(ret);
 }
 /* }}} */

+
 /* {{{ mysqlnd_library_init */
 void mysqlnd_library_init(TSRMLS_D)
 {

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2009-12-28 
10:07:42 UTC (rev 292713)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2009-12-28 
11:17:10 UTC (rev 292714)
@@ -245,6 +245,7 @@

 struct st_mysqlnd_conn_methods
 {
+   void(*init)(MYSQLND * conn TSRMLS_DC);
enum_func_status(*connect)(MYSQLND *conn, const char *host, 
const char * user, const char * passwd, unsigned int passwd_len, const char * 
db, unsigned int db_len, unsigned int port, const char * socket, unsigned int 
mysql_flags TSRMLS_DC);
ulong   (*escape_string)(const MYSQLND * const 
conn, char *newstr, const char *escapestr, size_t escapestr_len TSRMLS_DC);
enum_func_status(*set_charset)(MYSQLND * const conn, const char 
* const charset TSRMLS_DC);

Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2009-12-28 10:07:42 UTC (rev 
292713)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2009-12-28 11:17:10 UTC (rev 
292714)
@@ -2019,8 +2019,11 @@


 MYSQLND_STMT * _mysqlnd_stmt_init(MYSQLND * const conn TSRMLS_DC);
+static void MYSQLND_METHOD(mysqlnd_conn, init)(MYSQLND * conn TSRMLS_DC);

+
 MYSQLND_CLASS_METHODS_START(mysqlnd_conn)
+   MYSQLND_METHOD(mysqlnd_conn, init),
MYSQLND_METHOD(mysqlnd_conn, connect),

MYSQLND_METHOD(mysqlnd_conn, escape_string),
@@ -2086,6 +2089,20 @@
 MYSQLND_CLASS_METHODS_END;


+/* {{{ mysqlnd_conn::init */
+static void
+MYSQLND_METHOD(mysqlnd_conn, init)(MYSQLND * conn TSRMLS_DC)
+{
+   DBG_ENTER(mysqlnd_conn::init);
+   conn-net = mysqlnd_net_init(conn-persistent TSRMLS_CC);
+
+   SET_ERROR_AFF_ROWS(conn);
+
+   DBG_VOID_RETURN;
+}
+/* }}} */
+
+
 /* {{{ mysqlnd_init */
 PHPAPI MYSQLND *_mysqlnd_init(zend_bool persistent TSRMLS_DC)
 {
@@ -2095,20 +2112,18 @@
DBG_ENTER(mysqlnd_init);
DBG_INF_FMT(persistent=%d, persistent);

-   SET_ERROR_AFF_ROWS(ret);
ret-persistent = persistent;
-
ret-m = mysqlnd_conn_methods;
+   CONN_SET_STATE(ret, CONN_ALLOCED);
ret-m-get_reference(ret TSRMLS_CC);

-   ret-net = mysqlnd_net_init(persistent TSRMLS_CC);
+   ret-m-init(ret TSRMLS_CC);

-   CONN_SET_STATE(ret, CONN_ALLOCED);
-
DBG_RETURN(ret);
 }
 /* }}} */

+
 /* {{{ mysqlnd_library_init */
 void mysqlnd_library_init(TSRMLS_D)
 {

Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h 2009-12-28 10:07:42 UTC 
(rev 292713)
+++ 

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysqlnd/mysqlnd.c branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h trunk/ext/mysqlnd/mysqlnd.c trunk/ext/mysqlnd/mysqlnd_structs.h

2009-10-22 Thread Andrey Hristov
andrey   Thu, 22 Oct 2009 17:07:55 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=289858

Log:
Have the lengths also to skip many calls to strlen

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
U   php/php-src/trunk/ext/mysqlnd/mysqlnd.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2009-10-22 16:17:41 UTC 
(rev 289857)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2009-10-22 17:07:55 UTC 
(rev 289858)
@@ -174,6 +174,11 @@
mnd_pefree(conn-passwd, pers);
conn-passwd = NULL;
}
+   if (conn-connect_or_select_db) {
+   DBG_INF(Freeing connect_or_select_db);
+   mnd_pefree(conn-connect_or_select_db, pers);
+   conn-connect_or_select_db = NULL;
+   }
if (conn-unix_socket) {
DBG_INF(Freeing unix_socket);
mnd_pefree(conn-unix_socket, pers);
@@ -588,6 +593,7 @@
} else {
conn-scheme = transport;
}
+   conn-scheme_len = strlen(conn-scheme);
DBG_INF(conn-scheme);
conn-net.stream = php_stream_xport_create(conn-scheme, transport_len, 
streams_options, streams_flags,

   hashed_details,
@@ -726,13 +732,18 @@
CONN_SET_STATE(conn, CONN_READY);

conn-user  = pestrdup(user, 
conn-persistent);
+   conn-user_len  = strlen(conn-user);
conn-passwd= pestrndup(passwd, passwd_len, 
conn-persistent);
+   conn-passwd_len= passwd_len;
conn-port  = port;
+   conn-connect_or_select_db = pestrndup(db, db_len, 
conn-persistent);
+   conn-connect_or_select_db_len = db_len;

if (!unix_socket) {
char *p;

conn-host = pestrdup(host, conn-persistent);
+   conn-host_len = strlen(conn-host);
spprintf(p, 0, %s via TCP/IP, conn-host);
if (conn-persistent) {
conn-host_info = pestrdup(p, 1);
@@ -742,6 +753,7 @@
}
} else {
conn-unix_socket   = pestrdup(socket, 
conn-persistent);
+   conn-unix_socket_len = strlen(conn-unix_socket);
conn-host_info = pestrdup(Localhost via UNIX 
socket, conn-persistent);
}
conn-client_flag   = auth_packet-client_flags;
@@ -1282,7 +1294,12 @@
  a protocol of giving back -1. Thus we have to follow it :(
*/
SET_ERROR_AFF_ROWS(conn);
-
+   if (ret == PASS) {
+   if (conn-connect_or_select_db) {
+   pefree(conn-connect_or_select_db, conn-persistent);
+   }
+   conn-connect_or_select_db = pestrndup(db, db_len, 
conn-persistent);
+   }
DBG_RETURN(ret);
 }
 /* }}} */

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2009-10-22 
16:17:41 UTC (rev 289857)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2009-10-22 
17:07:55 UTC (rev 289858)
@@ -393,17 +393,23 @@

 /* Information related */
char*host;
+   unsigned inthost_len;
char*unix_socket;
+   unsigned intunix_socket_len;
char*user;
+   unsigned intuser_len;
char*passwd;
-   unsigned int*passwd_len;
+   unsigned intpasswd_len;
char*scheme;
+   unsigned intscheme_len;
uint64_tthread_id;
char*server_version;
char*host_info;
unsigned char   *scramble;
const MYSQLND_CHARSET *charset;
const MYSQLND_CHARSET *greet_charset;
+   char*connect_or_select_db;
+   unsigned intconnect_or_select_db_len;
MYSQLND_INFILE  infile;
unsigned intprotocol_version;
unsigned long   max_packet_size;

Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2009-10-22 16:17:41 UTC (rev 
289857)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd.c 

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysqlnd/mysqlnd.c branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h trunk/ext/mysqlnd/mysqlnd.c trunk/ext/mysqlnd/mysqlnd_structs.h

2009-10-06 Thread Andrey Hristov
andrey   Tue, 06 Oct 2009 10:33:23 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=289247

Log:
count the queries

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
U   php/php-src/trunk/ext/mysqlnd/mysqlnd.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2009-10-06 10:08:50 UTC 
(rev 289246)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2009-10-06 10:33:23 UTC 
(rev 289247)
@@ -399,6 +399,10 @@
SET_ERROR_AFF_ROWS(conn);
SET_EMPTY_ERROR(conn-error_info);

+   if (command == COM_QUERY) {
+   ++conn-query_counter;
+   }
+
PACKET_INIT_ALLOCA(cmd_packet, PROT_CMD_PACKET);
cmd_packet.command = command;
if (arg  arg_len) {

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2009-10-06 
10:08:50 UTC (rev 289246)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2009-10-06 
10:33:23 UTC (rev 289247)
@@ -425,6 +425,7 @@
*/
enum mysqlnd_connection_state   state;
enum_mysqlnd_query_type last_query_type;
+   uint32_tquery_counter;
/* Temporary storage between query and (use|store)_result() call */
MYSQLND_RES *current_result;


Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2009-10-06 10:08:50 UTC (rev 
289246)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2009-10-06 10:33:23 UTC (rev 
289247)
@@ -399,6 +399,10 @@
SET_ERROR_AFF_ROWS(conn);
SET_EMPTY_ERROR(conn-error_info);

+   if (command == COM_QUERY) {
+   ++conn-query_counter;
+   }
+
PACKET_INIT_ALLOCA(cmd_packet, PROT_CMD_PACKET);
cmd_packet.command = command;
if (arg  arg_len) {

Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h 2009-10-06 10:08:50 UTC 
(rev 289246)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h 2009-10-06 10:33:23 UTC 
(rev 289247)
@@ -425,6 +425,7 @@
*/
enum mysqlnd_connection_state   state;
enum_mysqlnd_query_type last_query_type;
+   uint32_tquery_counter;
/* Temporary storage between query and (use|store)_result() call */
MYSQLND_RES *current_result;


-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

[PHP-CVS] svn: /php/php-src/ branches/PHP_5_3/ext/mysqlnd/mysqlnd.c branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h trunk/ext/mysqlnd/mysqlnd.c trunk/ext/mysqlnd/mysqlnd_structs.h

2009-10-06 Thread Andrey Hristov
andrey   Tue, 06 Oct 2009 12:53:01 +

Revision: http://svn.php.net/viewvc?view=revisionrevision=289249

Log:
revert the last change

Changed paths:
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
U   php/php-src/trunk/ext/mysqlnd/mysqlnd.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2009-10-06 12:52:32 UTC 
(rev 289248)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c  2009-10-06 12:53:01 UTC 
(rev 289249)
@@ -399,10 +399,6 @@
SET_ERROR_AFF_ROWS(conn);
SET_EMPTY_ERROR(conn-error_info);

-   if (command == COM_QUERY) {
-   ++conn-query_counter;
-   }
-
PACKET_INIT_ALLOCA(cmd_packet, PROT_CMD_PACKET);
cmd_packet.command = command;
if (arg  arg_len) {

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2009-10-06 
12:52:32 UTC (rev 289248)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h  2009-10-06 
12:53:01 UTC (rev 289249)
@@ -425,7 +425,6 @@
*/
enum mysqlnd_connection_state   state;
enum_mysqlnd_query_type last_query_type;
-   uint32_tquery_counter;
/* Temporary storage between query and (use|store)_result() call */
MYSQLND_RES *current_result;


Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2009-10-06 12:52:32 UTC (rev 
289248)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd.c 2009-10-06 12:53:01 UTC (rev 
289249)
@@ -399,10 +399,6 @@
SET_ERROR_AFF_ROWS(conn);
SET_EMPTY_ERROR(conn-error_info);

-   if (command == COM_QUERY) {
-   ++conn-query_counter;
-   }
-
PACKET_INIT_ALLOCA(cmd_packet, PROT_CMD_PACKET);
cmd_packet.command = command;
if (arg  arg_len) {

Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h 2009-10-06 12:52:32 UTC 
(rev 289248)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h 2009-10-06 12:53:01 UTC 
(rev 289249)
@@ -425,7 +425,6 @@
*/
enum mysqlnd_connection_state   state;
enum_mysqlnd_query_type last_query_type;
-   uint32_tquery_counter;
/* Temporary storage between query and (use|store)_result() call */
MYSQLND_RES *current_result;


-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php