[PHP-CVS] svn: /php/php-src/ branches/PHP_5_2/NEWS branches/PHP_5_2/ext/standard/lcg.c branches/PHP_5_3/NEWS branches/PHP_5_3/ext/standard/lcg.c trunk/ext/standard/lcg.c

2010-01-08 Thread Rasmus Lerdorf
rasmus   Fri, 08 Jan 2010 09:43:14 +

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

Log:
Worked with Samy Kamkar to improve LCG entropy.

Changed paths:
U   php/php-src/branches/PHP_5_2/NEWS
U   php/php-src/branches/PHP_5_2/ext/standard/lcg.c
U   php/php-src/branches/PHP_5_3/NEWS
U   php/php-src/branches/PHP_5_3/ext/standard/lcg.c
U   php/php-src/trunk/ext/standard/lcg.c

Modified: php/php-src/branches/PHP_5_2/NEWS
===
--- php/php-src/branches/PHP_5_2/NEWS   2010-01-08 09:32:23 UTC (rev 293252)
+++ php/php-src/branches/PHP_5_2/NEWS   2010-01-08 09:43:14 UTC (rev 293253)
@@ -11,6 +11,8 @@

 - Fixed build of mysqli with MySQL 5.5.0-m2. (Andrey)

+- Improved LCG entropy (Rasmus, Samy Kamkar)
+
 - Fixed bug #50680 (strtotime() does not support eighth ordinal number).
   (Ilia)
 - Fixed bug #50661 (DOMDocument::loadXML does not allow UTF-16). (Rob)

Modified: php/php-src/branches/PHP_5_2/ext/standard/lcg.c
===
--- php/php-src/branches/PHP_5_2/ext/standard/lcg.c 2010-01-08 09:32:23 UTC 
(rev 293252)
+++ php/php-src/branches/PHP_5_2/ext/standard/lcg.c 2010-01-08 09:43:14 UTC 
(rev 293253)
@@ -78,7 +78,7 @@
struct timeval tv;

if (gettimeofday(tv, NULL) == 0) {
-   LCG(s1) = tv.tv_sec ^ (~tv.tv_usec);
+   LCG(s1) = tv.tv_sec ^ (tv.tv_usec11);
} else {
LCG(s1) = 1;
}
@@ -88,6 +88,11 @@
LCG(s2) = (long) getpid();
 #endif

+   /* Add entropy to s2 by calling gettimeofday() again */
+   if (gettimeofday(tv, NULL) == 0) {
+   LCG(s2) ^= (tv.tv_usec11);
+   }
+
LCG(seeded) = 1;
 }


Modified: php/php-src/branches/PHP_5_3/NEWS
===
--- php/php-src/branches/PHP_5_3/NEWS   2010-01-08 09:32:23 UTC (rev 293252)
+++ php/php-src/branches/PHP_5_3/NEWS   2010-01-08 09:43:14 UTC (rev 293253)
@@ -7,6 +7,7 @@
 - Added missing host validation for HTTP urls inside FILTER_VALIDATE_URL.
   (Ilia)
 - Added stream_resolve_include_path(). (Mikko)
+- Improved LCG entropy (Rasmus, Samy Kamkar)

 - Fixed bug #50680 (strtotime() does not support eighth ordinal number).
   (Ilia)

Modified: php/php-src/branches/PHP_5_3/ext/standard/lcg.c
===
--- php/php-src/branches/PHP_5_3/ext/standard/lcg.c 2010-01-08 09:32:23 UTC 
(rev 293252)
+++ php/php-src/branches/PHP_5_3/ext/standard/lcg.c 2010-01-08 09:43:14 UTC 
(rev 293253)
@@ -78,7 +78,7 @@
struct timeval tv;

if (gettimeofday(tv, NULL) == 0) {
-   LCG(s1) = tv.tv_sec ^ (~tv.tv_usec);
+   LCG(s1) = tv.tv_sec ^ (tv.tv_usec11);
} else {
LCG(s1) = 1;
}
@@ -88,6 +88,11 @@
LCG(s2) = (long) getpid();
 #endif

+   /* Add entropy to s2 by calling gettimeofday() again */
+   if (gettimeofday(tv, NULL) == 0) {
+   LCG(s2) ^= (tv.tv_usec11);
+   }
+
LCG(seeded) = 1;
 }
 /* }}} */

Modified: php/php-src/trunk/ext/standard/lcg.c
===
--- php/php-src/trunk/ext/standard/lcg.c2010-01-08 09:32:23 UTC (rev 
293252)
+++ php/php-src/trunk/ext/standard/lcg.c2010-01-08 09:43:14 UTC (rev 
293253)
@@ -78,7 +78,7 @@
struct timeval tv;

if (gettimeofday(tv, NULL) == 0) {
-   LCG(s1) = tv.tv_sec ^ (~tv.tv_usec);
+   LCG(s1) = tv.tv_sec ^ (tv.tv_usec11);
} else {
LCG(s1) = 1;
}
@@ -88,6 +88,11 @@
LCG(s2) = (long) getpid();
 #endif

+   /* Add entropy to s2 by calling gettimeofday() again */
+   if (gettimeofday(tv, NULL) == 0) {
+   LCG(s2) ^= (tv.tv_usec11);
+   }
+
LCG(seeded) = 1;
 }
 /* }}} */

-- 
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_2/NEWS PHP_5_3/NEWS

2010-01-08 Thread Jani Taskinen
jani Fri, 08 Jan 2010 09:56:38 +

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

Log:
fix news

Changed paths:
U   php/php-src/branches/PHP_5_2/NEWS
U   php/php-src/branches/PHP_5_3/NEWS

Modified: php/php-src/branches/PHP_5_2/NEWS
===
--- php/php-src/branches/PHP_5_2/NEWS   2010-01-08 09:43:14 UTC (rev 293253)
+++ php/php-src/branches/PHP_5_2/NEWS   2010-01-08 09:56:38 UTC (rev 293254)
@@ -9,10 +9,10 @@
 - Added missing host validation for HTTP urls inside FILTER_VALIDATE_URL.
   (Ilia)

+- Improved LCG entropy. (Rasmus, Samy Kamkar)
+
 - Fixed build of mysqli with MySQL 5.5.0-m2. (Andrey)

-- Improved LCG entropy (Rasmus, Samy Kamkar)
-
 - Fixed bug #50680 (strtotime() does not support eighth ordinal number).
   (Ilia)
 - Fixed bug #50661 (DOMDocument::loadXML does not allow UTF-16). (Rob)

Modified: php/php-src/branches/PHP_5_3/NEWS
===
--- php/php-src/branches/PHP_5_3/NEWS   2010-01-08 09:43:14 UTC (rev 293253)
+++ php/php-src/branches/PHP_5_3/NEWS   2010-01-08 09:56:38 UTC (rev 293254)
@@ -3,11 +3,12 @@
 ?? ??? 20??, PHP 5.3.3
 - Upgraded bundled libmagic to version 5.03. (Mikko)

+- Improved LCG entropy. (Rasmus, Samy Kamkar)
+
 - Added support for DISABLE_AUTHENTICATOR for imap_open. (Pierre)
 - Added missing host validation for HTTP urls inside FILTER_VALIDATE_URL.
   (Ilia)
 - Added stream_resolve_include_path(). (Mikko)
-- Improved LCG entropy (Rasmus, Samy Kamkar)

 - Fixed bug #50680 (strtotime() does not support eighth ordinal number).
   (Ilia)

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

[PHP-CVS] svn: /SVNROOT/ global_avail

2010-01-08 Thread Derick Rethans
derick   Fri, 08 Jan 2010 10:41:17 +

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

Log:
- Give Paul pecl/apm access.

Changed paths:
U   SVNROOT/global_avail

Modified: SVNROOT/global_avail
===
--- SVNROOT/global_avail2010-01-08 10:35:06 UTC (rev 293258)
+++ SVNROOT/global_avail2010-01-08 10:41:17 UTC (rev 293259)
@@ -313,7 +313,7 @@
 avail|pierrick|pecl/stomp,phpdoc
 avail|cataphract|pecl/rar,phpdoc
 avail|cyberspice|pecl/dio,phpdoc
-avail|dmendolia,patrickallaert|pecl/apm,phpdoc
+avail|dmendolia,patrickallaert,dr4goonis|pecl/apm,phpdoc
 avail|fat|php/php-src/*/sapi/fpm

 # Objective-C bridge

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

[PHP-CVS] svn: /SVNROOT/ global_avail

2010-01-08 Thread Derick Rethans
derick   Fri, 08 Jan 2010 10:54:18 +

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

Log:
- Accountname change

Changed paths:
U   SVNROOT/global_avail

Modified: SVNROOT/global_avail
===
--- SVNROOT/global_avail2010-01-08 10:47:55 UTC (rev 293262)
+++ SVNROOT/global_avail2010-01-08 10:54:18 UTC (rev 293263)
@@ -313,7 +313,7 @@
 avail|pierrick|pecl/stomp,phpdoc
 avail|cataphract|pecl/rar,phpdoc
 avail|cyberspice|pecl/dio,phpdoc
-avail|dmendolia,patrickallaert,dr4goonis|pecl/apm,phpdoc
+avail|dmendolia,patrickallaert,dragoonis|pecl/apm,phpdoc
 avail|fat|php/php-src/*/sapi/fpm

 # Objective-C bridge

-- 
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_2/NEWS branches/PHP_5_2/ext/gd/libgd/gdft.c branches/PHP_5_2/ext/gd/tests/bug49600.phpt branches/PHP_5_3/NEWS branches/PHP_5_3/ext/gd/libgd/gdft.c branches/

2010-01-08 Thread Takeshi Abe
tabe Fri, 08 Jan 2010 12:18:52 +

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

Log:
Bug #49600 (imageTTFText text shifted right)
- fix difference of horizontal position between imagettftext() and 
imagettfbbox()

Bug: http://bugs.php.net/49600 (Assigned) imageTTFText text shifted right
  
Changed paths:
U   php/php-src/branches/PHP_5_2/NEWS
U   php/php-src/branches/PHP_5_2/ext/gd/libgd/gdft.c
A   php/php-src/branches/PHP_5_2/ext/gd/tests/bug49600.phpt
U   php/php-src/branches/PHP_5_3/NEWS
U   php/php-src/branches/PHP_5_3/ext/gd/libgd/gdft.c
A   php/php-src/branches/PHP_5_3/ext/gd/tests/bug49600.phpt
U   php/php-src/trunk/ext/gd/libgd/gdft.c
A   php/php-src/trunk/ext/gd/tests/bug49600.phpt

Modified: php/php-src/branches/PHP_5_2/NEWS
===
--- php/php-src/branches/PHP_5_2/NEWS   2010-01-08 12:07:52 UTC (rev 293267)
+++ php/php-src/branches/PHP_5_2/NEWS   2010-01-08 12:18:52 UTC (rev 293268)
@@ -135,6 +135,7 @@
 - Fixed bug #49630 (imap_listscan() function missing). (Felipe)
 - Fixed bug #49627 (error_log to specified file does not log time according to
   date.timezone). (Dmitry)
+- Fixed bug #49600 (imageTTFText text shifted right). (Takeshi Abe)
 - Fixed bug #49578 (make install-pear fails). (Hannes)
 - Fixed bug #49536 (mb_detect_encoding() returns incorrect results when
   mbstring.strict_mode is turned on). (Moriyoshi)

Modified: php/php-src/branches/PHP_5_2/ext/gd/libgd/gdft.c
===
--- php/php-src/branches/PHP_5_2/ext/gd/libgd/gdft.c2010-01-08 12:07:52 UTC 
(rev 293267)
+++ php/php-src/branches/PHP_5_2/ext/gd/libgd/gdft.c2010-01-08 12:18:52 UTC 
(rev 293268)
@@ -1101,7 +1101,7 @@

/* now, draw to our target surface */
bm = (FT_BitmapGlyph) image;
-   gdft_draw_bitmap(tc_cache, im, fg, bm-bitmap, x + x1 + 
((pen.x + 31)  6) + bm-left, y + y1 + ((pen.y + 31)  6) - bm-top);
+   gdft_draw_bitmap(tc_cache, im, fg, bm-bitmap, x + x1 + 
((pen.x + 31)  6), y + y1 + ((pen.y + 31)  6) - bm-top);
}

/* record current glyph index for kerning */

Added: php/php-src/branches/PHP_5_2/ext/gd/tests/bug49600.phpt
===
--- php/php-src/branches/PHP_5_2/ext/gd/tests/bug49600.phpt 
(rev 0)
+++ php/php-src/branches/PHP_5_2/ext/gd/tests/bug49600.phpt 2010-01-08 
12:18:52 UTC (rev 293268)
@@ -0,0 +1,32 @@
+--TEST--
+Bug #49600 (imageTTFText text shifted right)
+--SKIPIF--
+?php
+   if(!extension_loaded('gd')){ die('skip gd extension not available'); }
+   if(!function_exists('imagettftext')) die('skip imagettftext() not 
available');
+   if(!function_exists('imagettfbbox')) die('skip imagettfbbox() not 
available');
+?
+--FILE--
+?php
+$cwd = dirname(__FILE__);
+$font = $cwd/Tuffy.ttf;
+$image = imagecreatetruecolor(50, 50);
+$color = imagecolorallocate($image, 255, 255, 255);
+foreach (array(E, I, P, g, i, q) as $c)
+{
+$x = imagettftext($image, 32, 0, 0, 0, $color, $font, $c);
+   $y = imagettfbbox(32, 0, $cwd/Tuffy.ttf, $c);
+if ( abs($x[0] - $y[0])  1
+  || abs($x[2] - $y[2])  1
+  || abs($x[4] - $y[4])  1
+  || abs($x[6] - $y[6])  1 ) {
+  echo FAILED: \n;
+  var_dump($x);
+  var_dump($y);
+  exit;
+}
+}
+echo 'OK';
+?
+--EXPECTF--
+OK
\ No newline at end of file

Modified: php/php-src/branches/PHP_5_3/NEWS
===
--- php/php-src/branches/PHP_5_3/NEWS   2010-01-08 12:07:52 UTC (rev 293267)
+++ php/php-src/branches/PHP_5_3/NEWS   2010-01-08 12:18:52 UTC (rev 293268)
@@ -163,6 +163,7 @@
   ini variables). (Jani)
 - Fixed bug #49660 (libxml 2.7.3+ limits text nodes to 10MB). (Felipe)
 - Fixed bug #49647 (DOMUserData does not exist). (Rob)
+- Fixed bug #49600 (imageTTFText text shifted right). (Takeshi Abe)
 - Fixed bug #49521 (PDO fetchObject sets values before calling constructor).
   (Pierrick)
 - Fixed bug #49472 (Constants defined in Interfaces can be overridden).

Modified: php/php-src/branches/PHP_5_3/ext/gd/libgd/gdft.c
===
--- php/php-src/branches/PHP_5_3/ext/gd/libgd/gdft.c2010-01-08 12:07:52 UTC 
(rev 293267)
+++ php/php-src/branches/PHP_5_3/ext/gd/libgd/gdft.c2010-01-08 12:18:52 UTC 
(rev 293268)
@@ -1101,7 +1101,7 @@

/* now, draw to our target surface */
bm = (FT_BitmapGlyph) image;
-   gdft_draw_bitmap(tc_cache, im, fg, bm-bitmap, x + x1 + 
((pen.x + 31)  6) + bm-left, y + y1 + ((pen.y + 31)  6) - bm-top);
+   gdft_draw_bitmap(tc_cache, im, fg, bm-bitmap, x + x1 + 
((pen.x + 31)  6), y + y1 + ((pen.y 

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

2010-01-08 Thread Andrey Hristov
andrey   Fri, 08 Jan 2010 13:47:03 +

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

Log:
add restart_psession and end_psession hooks

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.h
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_net.c
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_structs.h
U   php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_wireprotocol.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd.h
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_net.c
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h
U   php/php-src/trunk/ext/mysqlnd/mysqlnd_wireprotocol.c

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c	2010-01-08 13:26:58 UTC (rev 293272)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c	2010-01-08 13:47:03 UTC (rev 293273)
@@ -411,26 +411,43 @@
 PHPAPI void _mysqlnd_restart_psession(MYSQLND *conn TSRMLS_DC)
 {
 	DBG_ENTER(_mysqlnd_restart_psession);
+	conn-m-restart_psession(conn TSRMLS_CC);
+	DBG_VOID_RETURN;
+}
+/* }}} */
+
+
+/* {{{ _mysqlnd_end_psession */
+PHPAPI void _mysqlnd_end_psession(MYSQLND *conn TSRMLS_DC)
+{
+	DBG_ENTER(_mysqlnd_end_psession);
+	conn-m-end_psession(conn TSRMLS_CC);
+	DBG_VOID_RETURN;
+}
+/* }}} */
+
+/* {{{ mysqlnd_conn::restart_psession */
+static enum_func_status
+MYSQLND_METHOD(mysqlnd_conn, restart_psession)(MYSQLND * conn TSRMLS_DC)
+{
+	DBG_ENTER(mysqlnd_conn::restart_psession);
 	MYSQLND_INC_CONN_STATISTIC(conn-stats, STAT_CONNECT_REUSED);
 	/* Free here what should not be seen by the next script */
 	if (conn-last_message) {
 		mnd_pefree(conn-last_message, conn-persistent);
 		conn-last_message = NULL;
 	}
-	/*
-	  The thd zval cache is always freed on request shutdown, so this has happened already.
-	  Don't touch the old value! Get new reference
-	*/
-	DBG_VOID_RETURN;
+	DBG_RETURN(PASS);
 }
 /* }}} */


-/* {{{ _mysqlnd_end_psession */
-PHPAPI void _mysqlnd_end_psession(MYSQLND *conn TSRMLS_DC)
+/* {{{ mysqlnd_conn::end_psession */
+static enum_func_status
+MYSQLND_METHOD(mysqlnd_conn, end_psession)(MYSQLND * conn TSRMLS_DC)
 {
-	DBG_ENTER(_mysqlnd_end_psession);
-	DBG_VOID_RETURN;
+	DBG_ENTER(mysqlnd_conn::end_psession);
+	DBG_RETURN(PASS);
 }
 /* }}} */

@@ -2081,7 +2098,9 @@
 	MYSQLND_METHOD_PRIVATE(mysqlnd_conn, set_state),

 	MYSQLND_METHOD(mysqlnd_conn, simple_command),
-	MYSQLND_METHOD(mysqlnd_conn, simple_command_handle_response)
+	MYSQLND_METHOD(mysqlnd_conn, simple_command_handle_response),
+	MYSQLND_METHOD(mysqlnd_conn, restart_psession),
+	MYSQLND_METHOD(mysqlnd_conn, end_psession)
 MYSQLND_CLASS_METHODS_END;



Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.h
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.h	2010-01-08 13:26:58 UTC (rev 293272)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.h	2010-01-08 13:47:03 UTC (rev 293273)
@@ -74,7 +74,10 @@
 PHPAPI void ** _mysqlnd_plugin_get_plugin_stmt_data(const MYSQLND_STMT * stmt, unsigned int plugin_id TSRMLS_DC);
 #define mysqlnd_plugin_get_plugin_stmt_data(s, p_id) _mysqlnd_plugin_get_plugin_stmt_data((s), (p_id) TSRMLS_CC)

+PHPAPI void ** _mysqlnd_plugin_get_plugin_protocol_data(const MYSQLND_PROTOCOL * protocol, unsigned int plugin_id TSRMLS_DC);
+#define mysqlnd_plugin_get_plugin_protocol_data(p, p_id) _mysqlnd_plugin_get_plugin_protocol_data((p), (p_id) TSRMLS_CC)

+
 PHPAPI struct st_mysqlnd_conn_methods * mysqlnd_conn_get_methods();
 PHPAPI void mysqlnd_conn_set_methods(struct st_mysqlnd_conn_methods *methods);


Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_net.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_net.c	2010-01-08 13:26:58 UTC (rev 293272)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_net.c	2010-01-08 13:47:03 UTC (rev 293273)
@@ -661,7 +661,8 @@
 MYSQLND_NET *
 mysqlnd_net_init(zend_bool persistent TSRMLS_DC)
 {
-	MYSQLND_NET * net = mnd_pecalloc(1, sizeof(MYSQLND_NET), persistent);
+	size_t alloc_size = sizeof(MYSQLND_NET) + mysqlnd_plugin_count() * sizeof(void *);
+	MYSQLND_NET * net = mnd_pecalloc(1, alloc_size, persistent);

 	DBG_ENTER(mysqlnd_net_init);
 	DBG_INF_FMT(persistent=%d, persistent);
@@ -719,6 +720,20 @@
 /* }}} */


+/* {{{ _mysqlnd_plugin_get_plugin_net_data */
+PHPAPI void ** _mysqlnd_plugin_get_plugin_net_data(const MYSQLND_NET * net, unsigned int plugin_id TSRMLS_DC)
+{
+	DBG_ENTER(_mysqlnd_plugin_get_plugin_net_data);
+	DBG_INF_FMT(plugin_id=%u, plugin_id);
+	if (!net || plugin_id = mysqlnd_plugin_count()) {
+		return NULL;
+	}
+	DBG_RETURN((void *)((char *)net + sizeof(MYSQLND_NET) + plugin_id * sizeof(void *)));

[PHP-CVS] svn: /SVNROOT/ global_avail

2010-01-08 Thread Derick Rethans
derick   Fri, 08 Jan 2010 15:28:59 +

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

Log:
- Give Mario González access to the spanish translation as per Yago's request.

Changed paths:
U   SVNROOT/global_avail

Modified: SVNROOT/global_avail
===
--- SVNROOT/global_avail2010-01-08 15:11:03 UTC (rev 293277)
+++ SVNROOT/global_avail2010-01-08 15:28:59 UTC (rev 293278)
@@ -71,7 +71,7 @@
 avail|mkoula|phpdoc/cs
 avail|penguin,tkxs|phpdoc/da
 avail|kore,thorstenr,lapistano|phpdoc/de
-avail|ianasa,gustavo,soywiz,ladderalice,ideados,fcaroberga,dulasoft,benjamin,argosback,seros,tatai|phpdoc/es
+avail|mgonzalezle,ianasa,gustavo,soywiz,ladderalice,ideados,fcaroberga,dulasoft,benjamin,argosback,seros,tatai|phpdoc/es
 avail|parstic|phpdoc/fa
 avail|magidev,mikaelkael|phpdoc/fr
 avail|xdanger,jiania,haohappy|phpdoc/zh,phpdoc/hk,phpdoc/tw

-- 
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_net.c branches/PHP_5_3/ext/mysqlnd/mysqlnd_net.h branches/PHP_5_3/ext/mysqlnd/mysqlnd_statistics.c branches/PHP_5_3/ext/mysqlnd/mysqln

2010-01-08 Thread Andrey Hristov
andrey   Fri, 08 Jan 2010 18:52:08 +

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

Log:
export some calls to init/deinit code outside of the module

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

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_net.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_net.c  2010-01-08 
17:35:20 UTC (rev 293286)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_net.c  2010-01-08 
18:52:08 UTC (rev 293287)
@@ -658,7 +658,7 @@


 /* {{{ mysqlnd_net_init */
-MYSQLND_NET *
+PHPAPI MYSQLND_NET *
 mysqlnd_net_init(zend_bool persistent TSRMLS_DC)
 {
size_t alloc_size = sizeof(MYSQLND_NET) + mysqlnd_plugin_count() * 
sizeof(void *);
@@ -689,7 +689,7 @@


 /* {{{ mysqlnd_net_free */
-void
+PHPAPI void
 mysqlnd_net_free(MYSQLND_NET * const net TSRMLS_DC)
 {
zend_bool pers = net-persistent;

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_net.h
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_net.h  2010-01-08 
17:35:20 UTC (rev 293286)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_net.h  2010-01-08 
18:52:08 UTC (rev 293287)
@@ -23,8 +23,8 @@
 #ifndef MYSQLND_NET_H
 #define MYSQLND_NET_H

-MYSQLND_NET * mysqlnd_net_init(zend_bool persistent TSRMLS_DC);
-void mysqlnd_net_free(MYSQLND_NET * const net TSRMLS_DC);
+PHPAPI MYSQLND_NET * mysqlnd_net_init(zend_bool persistent TSRMLS_DC);
+PHPAPI void mysqlnd_net_free(MYSQLND_NET * const net TSRMLS_DC);

 #endif /* MYSQLND_NET_H */


Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_statistics.c
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_statistics.c   
2010-01-08 17:35:20 UTC (rev 293286)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_statistics.c   
2010-01-08 18:52:08 UTC (rev 293287)
@@ -236,7 +236,7 @@


 /* {{{ mysqlnd_stats_init */
-void
+PHPAPI void
 mysqlnd_stats_init(MYSQLND_STATS ** stats)
 {
*stats = calloc(1, sizeof(MYSQLND_STATS));
@@ -250,7 +250,7 @@


 /* {{{ mysqlnd_stats_end */
-void
+PHPAPI void
 mysqlnd_stats_end(MYSQLND_STATS * stats)
 {
 #ifdef ZTS

Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_statistics.h
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_statistics.h   
2010-01-08 17:35:20 UTC (rev 293286)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_statistics.h   
2010-01-08 18:52:08 UTC (rev 293287)
@@ -220,8 +220,8 @@
 TSRMLS_DC 
ZEND_FILE_LINE_DC);


-void mysqlnd_stats_init(MYSQLND_STATS ** stats);
-void mysqlnd_stats_end(MYSQLND_STATS * stats);
+PHPAPI void mysqlnd_stats_init(MYSQLND_STATS ** stats);
+PHPAPI void mysqlnd_stats_end(MYSQLND_STATS * stats);

 #endif /* MYSQLND_STATISTICS_H */


Modified: php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_wireprotocol.h
===
--- php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_wireprotocol.h 
2010-01-08 17:35:20 UTC (rev 293286)
+++ php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd_wireprotocol.h 
2010-01-08 18:52:08 UTC (rev 293287)
@@ -270,8 +270,8 @@

 MYSQLND_STATS * stats TSRMLS_DC);


-MYSQLND_PROTOCOL * mysqlnd_protocol_init(zend_bool persistent TSRMLS_DC);
-void mysqlnd_protocol_free(MYSQLND_PROTOCOL * net TSRMLS_DC);
+PHPAPI MYSQLND_PROTOCOL * mysqlnd_protocol_init(zend_bool persistent 
TSRMLS_DC);
+PHPAPI void mysqlnd_protocol_free(MYSQLND_PROTOCOL * net TSRMLS_DC);


 #endif /* MYSQLND_WIREPROTOCOL_H */

Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd_net.c
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd_net.c 2010-01-08 17:35:20 UTC (rev 
293286)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd_net.c 2010-01-08 18:52:08 UTC (rev 
293287)
@@ -658,7 +658,7 @@


 /* {{{ mysqlnd_net_init */
-MYSQLND_NET *
+PHPAPI MYSQLND_NET *
 mysqlnd_net_init(zend_bool persistent TSRMLS_DC)
 {
size_t alloc_size = sizeof(MYSQLND_NET) + mysqlnd_plugin_count() * 

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

2010-01-08 Thread Andrey Hristov
andrey   Fri, 08 Jan 2010 19:14:06 +

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

Log:
Add the remaining code for statistics triggers

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

Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd_statistics.c
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd_statistics.c  2010-01-08 18:52:41 UTC 
(rev 293288)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd_statistics.c  2010-01-08 19:14:06 UTC 
(rev 293289)
@@ -240,7 +240,8 @@
 mysqlnd_stats_init(MYSQLND_STATS ** stats)
 {
*stats = calloc(1, sizeof(MYSQLND_STATS));
-   (*stats)-handlers = calloc(STAT_LAST, sizeof(mysqlnd_stat_handler));
+   (*stats)-triggers = calloc(STAT_LAST, sizeof(mysqlnd_stat_trigger));
+   (*stats)-in_trigger = FALSE;
 #ifdef ZTS
(*stats)-LOCK_access = tsrm_mutex_alloc();
 #endif
@@ -256,13 +257,46 @@
 #ifdef ZTS
tsrm_mutex_free(stats-LOCK_access);
 #endif
-   free(stats-handlers);
+   free(stats-triggers);
/* mnd_free will reference LOCK_access and crash...*/
free(stats);
 }
 /* }}} */


+/* {{{ mysqlnd_stats_set_trigger */
+PHPAPI mysqlnd_stat_trigger
+mysqlnd_stats_set_trigger(MYSQLND_STATS * const stats, 
enum_mysqlnd_collected_stats stat, mysqlnd_stat_trigger trigger TSRMLS_DC)
+{
+   mysqlnd_stat_trigger ret = NULL;
+   DBG_ENTER(mysqlnd_stats_set_trigger);
+   if (stats) {
+   MYSQLND_STATS_LOCK(stats);
+   ret = stats-triggers[stat];
+   stats-triggers[stat] = trigger;
+   MYSQLND_STATS_UNLOCK(stats);
+   }
+   DBG_RETURN(ret);
+}
+/* }}} */
+
+
+/* {{{ mysqlnd_stats_set_handler */
+PHPAPI mysqlnd_stat_trigger
+mysqlnd_stats_reset_triggers(MYSQLND_STATS * const stats TSRMLS_DC)
+{
+   mysqlnd_stat_trigger ret = NULL;
+   DBG_ENTER(mysqlnd_stats_reset_trigger);
+   if (stats) {
+   MYSQLND_STATS_LOCK(stats);
+   memset(stats-triggers, 0, STAT_LAST * 
sizeof(mysqlnd_stat_trigger));
+   MYSQLND_STATS_UNLOCK(stats);
+   }
+   DBG_RETURN(ret);
+}
+/* }}} */
+
+
 /*
  * Local variables:
  * tab-width: 4

Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd_statistics.h
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd_statistics.h  2010-01-08 18:52:41 UTC 
(rev 293288)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd_statistics.h  2010-01-08 19:14:06 UTC 
(rev 293289)
@@ -43,10 +43,10 @@
 #endif

 #define MYSQLND_CHECK_AND_CALL_HANDLER(stats, statistic, value) \
-   if ((stats)-handlers[(statistic)]  
(stats)-in_handler == FALSE) { \
-   (stats)-in_handler = TRUE; \
-   (stats)-handlers[(statistic)]((stats), 
(statistic), (value) TSRMLS_CC); \
-   (stats)-in_handler = FALSE; \
+   if ((stats)-triggers[(statistic)]  
(stats)-in_trigger == FALSE) { \
+   (stats)-in_trigger = TRUE; \
+   (stats)-triggers[(statistic)]((stats), 
(statistic), (value) TSRMLS_CC); \
+   (stats)-in_trigger = FALSE; \
} \


@@ -222,6 +222,8 @@

 PHPAPI void mysqlnd_stats_init(MYSQLND_STATS ** stats);
 PHPAPI void mysqlnd_stats_end(MYSQLND_STATS * stats);
+PHPAPI mysqlnd_stat_trigger mysqlnd_stats_set_trigger(MYSQLND_STATS * const 
stats, enum_mysqlnd_collected_stats stat, mysqlnd_stat_trigger trigger 
TSRMLS_DC);
+PHPAPI mysqlnd_stat_trigger mysqlnd_stats_reset_triggers(MYSQLND_STATS * const 
stats TSRMLS_DC);

 #endif /* MYSQLND_STATISTICS_H */


Modified: php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h
===
--- php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h 2010-01-08 18:52:41 UTC 
(rev 293288)
+++ php/php-src/trunk/ext/mysqlnd/mysqlnd_structs.h 2010-01-08 19:14:06 UTC 
(rev 293289)
@@ -210,13 +210,13 @@

 typedef struct st_mysqlnd_stats MYSQLND_STATS;

-typedef void (*mysqlnd_stat_handler)(MYSQLND_STATS * stats, 
enum_mysqlnd_collected_stats stat, int64_t change TSRMLS_DC);
+typedef void (*mysqlnd_stat_trigger)(MYSQLND_STATS * stats, 
enum_mysqlnd_collected_stats stat, int64_t change TSRMLS_DC);

 struct st_mysqlnd_stats
 {
uint64_tvalues[STAT_LAST];
-   mysqlnd_stat_handler*handlers;
-   zend_bool   in_handler;
+   mysqlnd_stat_trigger*triggers;
+   zend_bool   in_trigger;
 #ifdef ZTS
MUTEX_T LOCK_access;
 #endif

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