Skip to content

Commit f859b8d

Browse files
committed
Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
# By Michael Wallner (2) and others # Via Michael Wallner (3) and Stanley Sufficool (1) * 'PHP-5.5' of https://git.php.net/repository/php-src: C89 compatibility Fixed segfault when built with OpenSSL >= 1.0.1 consolidate NEWS with 5.4 fixing a minor typo in CODING_STANDARDS document FIX BUG #65219 - Typo correction FIX BUG #65219 - USE DB not being sent for FreeTDS version < 0.92 FreeTDS <0.92 does not support DBSETLDBNAME option and therefore will not work with SQL Azure. Fallback to dbuse command in letter versions.
2 parents fe650a4 + 3b3c57e commit f859b8d

File tree

3 files changed

+58
-18
lines changed

3 files changed

+58
-18
lines changed

CODING_STANDARDS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ Naming Conventions
151151

152152
7. Classes should be given descriptive names. Avoid using abbreviations where
153153
possible. Each word in the class name should start with a capital letter,
154-
without underscore delimiters (CampelCaps starting with a capital letter).
154+
without underscore delimiters (CamelCaps starting with a capital letter).
155155
The class name should be prefixed with the name of the 'parent set' (e.g.
156156
the name of the extension)::
157157

NEWS

Lines changed: 41 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,23 @@ PHP NEWS
22
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
33
?? ??? 2013, PHP 5.5.5
44

5-
- Buildsystem:
6-
. Fixed bug #51076 (race condition in shtool's mkdir -p implementation).
7-
(Mike, Raphael Geissert)
8-
95
- Core:
106
. Fixed bug #64979 (Wrong behavior of static variables in closure generators).
117
(Nikita)
8+
. Fixed bug #65322 (compile time errors won't trigger auto loading). (Nikita)
129
. Fixed bug #65821 (By-ref foreach on property access of string offset
1310
segfaults). (Nikita)
1411

1512
- CLI server:
1613
. Fixed bug #65633 (built-in server treat some http headers as
1714
case-sensitive). (Adam)
15+
. Fixed bug #65818 (Segfault with built-in webserver and chunked transfer
16+
encoding). (Felipe)
1817
. Added application/pdf to PHP CLI Web Server mime types (Chris Jones)
1918

2019
- Datetime:
20+
. Fixed bug #64157 (DateTime::createFromFormat() reports confusing error
21+
message). (Boro Sitnikovski)
2122
. Fixed bug #65502 (DateTimeImmutable::createFromFormat returns DateTime).
2223
(Boro Sitnikovski)
2324
. Fixed bug #65548 (Comparison for DateTimeImmutable doesn't work).
@@ -27,6 +28,14 @@ PHP NEWS
2728
. Fixed bug #65708 (dba functions cast $key param to string in-place,
2829
bypassing copy on write). (Adam)
2930

31+
- Filter:
32+
. Add RFC 6598 IPs to reserved addresses. (Sebastian Nohn)
33+
. Fixed bug #64441 (FILTER_VALIDATE_URL rejects fully qualified domain names).
34+
(Syra)
35+
36+
- FTP:
37+
. Fixed bug #65667 (ftp_nb_continue produces segfault). (Philip Hofstetter)
38+
3039
- GD
3140
. Ensure that the defined interpolation method is used with the generic
3241
scaling methods. (Pierre)
@@ -45,10 +54,29 @@ PHP NEWS
4554
. Fixed issue #135 (segfault in interned strings if initial memory is too
4655
low). (Julien)
4756

57+
- Sockets:
58+
. Fixed bug #65808 (the socket_connect() won't work with IPv6 address).
59+
(Mike)
60+
4861
- SPL:
4962
. Fix bug #64782 (SplFileObject constructor make $context optional / give it
5063
a default value). (Nikita)
5164

65+
- Standard:
66+
. Fixed bug #61548 (content-type must appear at the end of headers for 201
67+
Location to work in http). (Mike)
68+
69+
- XMLReader:
70+
. Fixed bug #51936 (Crash with clone XMLReader). (Mike)
71+
. Fixed bug #64230 (XMLReader does not suppress errors). (Mike)
72+
73+
- Build system:
74+
. Fixed bug #51076 (race condition in shtool's mkdir -p implementation).
75+
(Mike, Raphael Geissert)
76+
. Fixed bug #62396 ('make test' crashes starting with 5.3.14 (missing
77+
gzencode())). (Mike)
78+
79+
5280
19 Sep 2013, PHP 5.5.4
5381

5482
- Core:
@@ -59,6 +87,7 @@ PHP NEWS
5987
DTRACE_FUNCTION_*). (Chris Jones)
6088
. Fixed bug #65483 (quoted-printable encode stream filter incorrectly encoding
6189
spaces). (Michael M Slusarz)
90+
. Fixed bug #65481 (shutdown segfault due to serialize) (Mike)
6291
. Fixed bug #65470 (Segmentation fault in zend_error() with
6392
--enable-dtrace). (Chris Jones, Kris Van Hees)
6493
. Fixed bug #65225 (PHP_BINARY incorrectly set). (Patrick Allaert)
@@ -85,6 +114,10 @@ PHP NEWS
85114
. Fixed bug #64802 (openssl_x509_parse fails to parse subject properly in
86115
some cases). (Mark Jones)
87116

117+
- PDO:
118+
. Fixed bug #64953 (Postgres prepared statement positional parameter
119+
casting). (Mike)
120+
88121
- Session:
89122
. Fixed bug #65475 (Session ID is not initialized properly when strict session
90123
is enabled). (Yasuo)
@@ -95,6 +128,10 @@ PHP NEWS
95128
. Fix issue with return types of password API helper functions. Found via
96129
static analysis by cjones. (Anthony Ferrara)
97130

131+
- Zlib:
132+
. Fixed bug #65391 (Unable to send vary header user-agent when
133+
ob_start('ob_gzhandler') is called) (Mike)
134+
98135
22 Aug 2013, PHP 5.5.3
99136

100137
- Openssl:

ext/openssl/openssl.c

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4676,9 +4676,6 @@ SSL *php_SSL_new_from_context(SSL_CTX *ctx, php_stream *stream TSRMLS_DC) /* {{{
46764676

46774677
GET_VER_OPT_STRING("local_cert", certfile);
46784678
if (certfile) {
4679-
X509 *cert = NULL;
4680-
EVP_PKEY *key = NULL;
4681-
SSL *tmpssl;
46824679
char resolved_path_buff[MAXPATHLEN];
46834680
const char * private_key = NULL;
46844681

@@ -4705,16 +4702,22 @@ SSL *php_SSL_new_from_context(SSL_CTX *ctx, php_stream *stream TSRMLS_DC) /* {{{
47054702
}
47064703
}
47074704

4708-
tmpssl = SSL_new(ctx);
4709-
cert = SSL_get_certificate(tmpssl);
4710-
4711-
if (cert) {
4712-
key = X509_get_pubkey(cert);
4713-
EVP_PKEY_copy_parameters(key, SSL_get_privatekey(tmpssl));
4714-
EVP_PKEY_free(key);
4715-
}
4716-
SSL_free(tmpssl);
4717-
4705+
#if OPENSSL_VERSION_NUMBER < 0x10001001L
4706+
do {
4707+
/* Unnecessary as of OpenSSLv1.0.1 (will segfault if used with >= 10001001 ) */
4708+
X509 *cert = NULL;
4709+
EVP_PKEY *key = NULL;
4710+
SSL *tmpssl = SSL_new(ctx);
4711+
cert = SSL_get_certificate(tmpssl);
4712+
4713+
if (cert) {
4714+
key = X509_get_pubkey(cert);
4715+
EVP_PKEY_copy_parameters(key, SSL_get_privatekey(tmpssl));
4716+
EVP_PKEY_free(key);
4717+
}
4718+
SSL_free(tmpssl);
4719+
} while (0);
4720+
#endif
47184721
if (!SSL_CTX_check_private_key(ctx)) {
47194722
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Private key does not match certificate!");
47204723
}

0 commit comments

Comments
 (0)