svn: /php/php-src/branches/PHP_5_3/ NEWS ext/openssl/xp_ssl.c
| From: | Adam Harvey | Date: | Mon, 13 Dec 2010 08:29:44 +0000 |
| Subject: | svn: /php/php-src/branches/PHP_5_3/ NEWS ext/openssl/xp_ssl.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-64116@lists.php.net to get a copy of this message | ||
aharvey Mon, 13 Dec 2010 08:29:44 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=306335
Log:
MFH: implement FR #53447 (Cannot disable SessionTicket extension for servers
that do not support it). Includes Tony's subsequent commit to fix a segfault.
Bug: http://bugs.php.net/53447 (Suspended) Cannot disable
SessionTicket extension for servers that do not support it
Changed paths:
U php/php-src/branches/PHP_5_3/NEWS
U php/php-src/branches/PHP_5_3/ext/openssl/xp_ssl.c
Modified: php/php-src/branches/PHP_5_3/NEWS
===================================================================
--- php/php-src/branches/PHP_5_3/NEWS 2010-12-13 07:54:58 UTC (rev 306334)
+++ php/php-src/branches/PHP_5_3/NEWS 2010-12-13 08:29:44 UTC (rev 306335)
@@ -27,6 +27,11 @@
. Fixed bug #53425 (mysqli_real_connect() ignores client flags when built to
call libmysql). (Kalle, tre-php-net at crushedhat dot com)
+- OpenSSL extension:
+ . Implemented FR #53447 (Cannot disable SessionTicket extension for servers
+ that do not support it) by adding a no_ticket SSL context option. (Adam,
+ Tony)
+
- PDO Oracle driver:
. Fixed bug #39199 (Cannot load Lob data with more than 4000 bytes on
ORACLE 10). (spatar at mail dot nnov dot ru)
Modified: php/php-src/branches/PHP_5_3/ext/openssl/xp_ssl.c
===================================================================
--- php/php-src/branches/PHP_5_3/ext/openssl/xp_ssl.c 2010-12-13 07:54:58 UTC (rev 306334)
+++ php/php-src/branches/PHP_5_3/ext/openssl/xp_ssl.c 2010-12-13 08:29:44 UTC (rev 306335)
@@ -369,6 +369,18 @@
SSL_CTX_set_options(sslsock->ctx, SSL_OP_ALL);
+#if OPENSSL_VERSION_NUMBER >= 0x0090806fL
+ {
+ zval **val;
+
+ if (stream->context && SUCCESS == php_stream_context_get_option(
+ stream->context, "ssl", "no_ticket", &val) &&
+ zval_is_true(*val)) {
+ SSL_CTX_set_options(sslsock->ctx, SSL_OP_NO_TICKET);
+ }
+ }
+#endif
+
sslsock->ssl_handle = php_SSL_new_from_context(sslsock->ctx, stream TSRMLS_CC);
if (sslsock->ssl_handle == NULL) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "failed to create an SSL handle");