Commit Graph

858 Commits

Author SHA1 Message Date
Anatol Belski
c01943bffc fix improper behavior
openssl_spki_export() is documented to return string, but it's
obviously not achieved writing it to stdout :)
2015-07-03 10:15:52 +02:00
Dmitry Stogov
4a2e40bb86 Use ZSTR_ API to access zend_string elements (this is just renaming without semantick changes). 2015-06-30 04:05:24 +03:00
Tjerk Meesters
03a670eaaa Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed #69882: OpenSSL error "key values mismatch" after openssl_pkcs12_read with extra certs
2015-06-26 06:03:29 +08:00
Tjerk Meesters
2ff3dafccf Fixed #69882: OpenSSL error "key values mismatch" after openssl_pkcs12_read with extra certs
Squashed commit of the following:

commit a64c1d9bc4
Author: Tomasz Sawicki <falundir@gmail.com>
Date:   Wed Jun 24 08:49:37 2015 +0200

    Fix #69882: OpenSSL error "key values mismatch" after openssl_pkcs12_read with extra certs

    The "key values mismatch" error is triggered in openssl_pkcs12_read by
    PKCS12_parse, because it uses X509_check_private_key to separate main
    certificate (which corresponds to private key) from extra certificates.
    Extra certificates usually comes first (p12 contents are reversed as
    stack) and X509_check_private_key triggers X509_R_KEY_VALUES_MISMATCH
    error.
    The fix pops "key values mismatch" error from OpenSSL error stack for
    each extra certificate if there are any.
2015-06-26 05:33:28 +08:00
Nikita Popov
8a83aed458 Drop duplicate object-to-type notices
We already generate a recoverable fatal for these earlier, no need
to throw an additional notice.
2015-06-22 16:25:32 +02:00
Nikita Popov
5d3cf577aa Make convert_to_* safe with rc>1
This only involves switching zval_dtor to zval_ptr_dtor for arrays
and making the convert_to_object for arrays a bit more generic.

All the other changes outside zend_operators.c just make use of
this new ability (use COPY instead of DUP).

What's still missing: Proper references handling. I've seen many
convert_to* calls that will break when a reference is used.

Also fixes bug #69788.
2015-06-11 23:23:57 +02:00
Radu Brănișcan
0c7634fcc7 Corrected line comment 5256
From the text "dectupt" to "decrypt"
2015-05-23 11:11:58 +02:00
Anatol Belski
c93a360661 fix _timezone usage for vc14 2015-05-10 18:17:24 +02:00
Rasmus Lerdorf
741382d968 Remove SSLv3 test dependencies
SSLv3 is going away. Debian8 already ships with an openssl
with no SSLv3 support which was causing these tests to fail.

Conflicts:
	ext/openssl/tests/session_meta_capture.phpt
2015-05-05 10:40:55 +02:00
Nikita Popov
2a87a42cd4 Dropped CN_match and SNI_server_name context options 2015-04-24 18:18:18 +02:00
Stanislav Malyshev
cb9f58d046 Merge branch 'pull-request/1203'
* pull-request/1203:
  Update openssl.c
2015-04-18 19:32:14 -07:00
Remi Collet
9340c5b347 Merge branch 'PHP-5.6'
* PHP-5.6:
  skip test when xml not available
2015-04-17 15:21:03 +02:00
Remi Collet
342acbe1c6 skip test when xml not available 2015-04-17 15:20:22 +02:00
Daniel Lowrey
4f07330e79 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix Bug #69402: Reading empty SSL stream hangs until timeout

Conflicts:
	ext/openssl/xp_ssl.c
2015-04-14 09:27:37 -06:00
Daniel Lowrey
81f356b4ae Fix Bug #69402: Reading empty SSL stream hangs until timeout 2015-04-14 09:25:11 -06:00
Kalle Sommer Nielsen
156ac232cb Fix test for systems where openssl's time_t have an offset set 2015-04-09 19:57:44 +02:00
Kalle Sommer Nielsen
8d3c4e5988 Fix test on systems where EOL isn't "\n", like Windows 2015-04-08 23:56:29 +02:00
Dmitry Stogov
5ba72e5f80 Fixed resource leak 2015-04-08 23:37:05 +03:00
Rasmus Lerdorf
32484e3f5f Remove SSLv3 test dependencies
SSLv3 is going away. Debian8 already ships with an openssl
with no SSLv3 support which was causing these tests to fail.
2015-04-08 09:55:55 -07:00
Eric F
321bafccde Update openssl.c
Adding additional checks for sslv3.
2015-03-30 01:30:09 +02:00
Leigh
456f4a78d2 Add RAND_egd check for compiling against LibreSSL 2015-03-27 13:33:22 +01:00
Leigh
a04ab4b54b Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Add RAND_egd check for compiling against LibreSSL
2015-03-27 13:26:48 +01:00
Leigh
1b2d58a364 Add RAND_egd check for compiling against LibreSSL 2015-03-27 13:24:36 +01:00
Anatol Belski
19360f386e cleanup mod version macros, round 3 2015-03-23 20:54:55 +01:00
Dmitry Stogov
8633685675 Use specialized macro for string zval creation 2015-03-12 16:53:51 +03:00
Daniel Lowrey
589374d027 Merge branch 'PHP-5.6'
* PHP-5.6:
  Don't block on crypto data inside stream_select()
2015-03-11 09:45:28 -06:00
Daniel Lowrey
c661121459 Don't block on crypto data inside stream_select() 2015-03-11 09:44:07 -06:00
Daniel Lowrey
4a336f5d0b Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug# 69215 (Crypto servers should send client CA list)

Conflicts:
	ext/openssl/xp_ssl.c
2015-03-10 18:18:19 -06:00
Daniel Lowrey
3f6b12795c Fix bug# 69215 (Crypto servers should send client CA list) 2015-03-10 18:13:10 -06:00
Daniel Lowrey
c5c4d22c10 Deprecate "session_meta_capture" SSL context option
Meta data about encrypted streams is now available as part of the
"crypto" key in the array returned by stream_get_meta_data(). This
update deprecates the use of the "session_meta_capture" ssl
context option in encrypted streams.
2015-03-09 23:15:57 -06:00
Daniel Lowrey
2dec21634c Revert "Add stream_socket_crypto_info() function"
This reverts commit 13acb7ec65.

With the added capability to negotiate application layer protocols
via the TLS ALPN extension userland needs a method to access the
negotiated protocol on a given stream. The reverted commit added
a new stream_socket_crypto_info() function for this purpose.

This original approach was discarded in favor of using the
already-existing stream_get_meta_data() API which specifically
exists for just such purposes and requires the addition of no new
functions.
2015-03-09 23:15:57 -06:00
Daniel Lowrey
676a5059b2 Add crypto info to stream_get_meta_data() result on encrypted streams
A "crypto" key is added to the output of stream_get_meta_data() calls
when invoked using a stream on which crypto is currently active. The
new key's associated array contains the following keys:

 - protocol (string e.g. TLSv1.2, TLSv1.1, etc)
 - cipher_name (string)
 - cipher_bits (int)
 - cipher_version (string)

If the TLS ALPN extension was used to successfully negotiate an
application protocol that protocol's identifier is stored in the
following key:

 - alpn_protocol

If no ALPN protocol was negotiated the "alpn_protocol" key is not
present in the crypto meta data array. More meta information
concerning the stream's active encryption state may be added in the
future.
2015-03-09 23:15:57 -06:00
Daniel Lowrey
748433e7bc Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix crypto stream timeout regressions

Conflicts:
	ext/openssl/xp_ssl.c
2015-03-09 16:02:04 -06:00
Daniel Lowrey
69691cc8ca Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix crypto stream timeout regressions
2015-03-09 15:55:33 -06:00
Daniel Lowrey
bbfd4a5e62 Fix crypto stream timeout regressions 2015-03-09 15:53:26 -06:00
Daniel Lowrey
00c35cb6a5 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #69197 (openssl_pkcs7_sign handles default value incorrectly)

Conflicts:
	ext/openssl/openssl.c
2015-03-06 11:31:04 -07:00
Daniel Lowrey
0928bad9ac Fixed bug #69197 (openssl_pkcs7_sign handles default value incorrectly) 2015-03-06 11:29:56 -07:00
Anatol Belski
be7371f9ff fix data type 2015-03-06 16:49:08 +01:00
Daniel Lowrey
eef261f0e4 Update test to run locally instead of remotely 2015-03-05 22:01:15 -07:00
Daniel Lowrey
e82878a200 Update test to run locally instead of remotely 2015-03-05 22:00:38 -07:00
Daniel Lowrey
88cfc6ccb6 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix stream_select() issue with OpenSSL buffer

Conflicts:
	main/streams/streams.c
2015-03-05 17:53:04 -07:00
Chris Wright
e7df9d710c Fix stream_select() issue with OpenSSL buffer
Ensure data from OpenSSL internal buffer has been
transfered to PHP stream buffer before a select()
emulation operation is performed

Addresses bug #65137
https://bugs.php.net/bug.php?id=65137

Conflicts:
	ext/openssl/xp_ssl.c
2015-03-05 17:18:14 -07:00
Daniel Lowrey
ca24d19a89 Really fix zts this time 2015-03-05 14:09:25 -07:00
Daniel Lowrey
927b137c1b Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix ZTS
  Fix ZTS build

Conflicts:
	ext/openssl/openssl.c
	ext/openssl/xp_ssl.c
2015-03-05 12:24:04 -07:00
Daniel Lowrey
c985ec737d Fix ZTS 2015-03-05 12:19:15 -07:00
Daniel Lowrey
010f17534f Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix ZTS build
2015-03-05 12:13:33 -07:00
Daniel Lowrey
e892f5382f Fix ZTS build 2015-03-05 12:12:55 -07:00
Daniel Lowrey
c34ee4b146 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fix bug #67403 (Add signatureType to openssl_x509_parse)
  5.5.24 now

Conflicts:
	ext/openssl/openssl.c
2015-03-05 10:27:11 -07:00
Daniel Lowrey
5939de35a8 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix bug #67403 (Add signatureType to openssl_x509_parse)
  5.5.24 now

Conflicts:
	configure.in
	main/php_version.h
2015-03-05 10:21:32 -07:00
Daniel Lowrey
94140afa69 Fix bug #67403 (Add signatureType to openssl_x509_parse) 2015-03-05 10:09:06 -07:00