Commit graph

861 commits

Author SHA1 Message Date
Jakub Zelenka
2ecce94756 Use opaque RSA, DSA and DH 2016-07-17 20:24:34 +01:00
Jakub Zelenka
329f74a11d Add missing creating of md_ctx in openssl_digest 2016-07-17 20:01:37 +01:00
Jakub Zelenka
e5780c8cd0 Add missing break in php_openssl_is_private_key 2016-07-17 17:46:14 +01:00
Jakub Zelenka
0afa0b1f83 The DSS1 is not available in OpenSSL 1.1 2016-07-17 17:46:13 +01:00
Jakub Zelenka
d73735a750 Move and use opaque pkey in openssl_dh_compute_key 2016-07-17 17:43:34 +01:00
Jakub Zelenka
1a4e910e8d Use opaque pkey in openssl_pkey_get_details 2016-07-17 17:43:34 +01:00
Jakub Zelenka
f08660bb58 Use EVP_PKEY_base_id where possible 2016-07-17 17:33:42 +01:00
Jakub Zelenka
f1de72293e Use opaque EVP_PKEY in php_openssl_is_private_key 2016-07-17 17:33:42 +01:00
Jakub Zelenka
0598a8da2b Do not use X509 props directly in openssl_x509_parse 2016-07-17 17:33:42 +01:00
Jakub Zelenka
e138b51dad Do not use X509_EXTENSION data directly as it is opaque 2016-07-17 17:33:42 +01:00
Jakub Zelenka
84a291d4da Wrap pkey id and rsa getters 2016-07-17 17:33:42 +01:00
Jakub Zelenka
fd9142a647 Use opaque md ctx in openssl_sign and openssl_verify 2016-07-17 17:33:42 +01:00
Jakub Zelenka
b8164673eb Use opaque cipher ctx in openssl_seal and openssl_open 2016-07-17 17:33:42 +01:00
Jakub Zelenka
3a8531e767 Use opaque EVP_MD_CTX in openssl_digest 2016-07-17 17:33:41 +01:00
Jakub Zelenka
5f569cc03e Bump minimal OpenSSL version to 1.0.1 2016-07-17 17:21:07 +01:00
Remi Collet
642aee1deb Cleanup all SSLv2 code, whatever OpenSSL version is 2016-07-17 16:41:47 +01:00
Dmitry Stogov
0cfb47651c Fixed compilation warnings 2016-06-28 11:37:51 +03:00
Jakub Zelenka
e8a09ddc07 Improve openssl ecc keypair support implementation 2016-06-26 16:55:51 +01:00
Dominic Luechinger
9688138d38 Adds initial support to generate and work with ECC public key pair
New features:
- openssl_get_curve_names => list ECC curve names
- generate a ECC public key pair
- generate an CSR with an ECC key
- export x,y,d params of ECC public/private key

Thanks to @bukka for the review and feedback
2016-06-26 16:15:25 +01:00
Dmitry Stogov
323b2733f6 Fixed compilation warnings 2016-06-22 00:40:50 +03:00
Dmitry Stogov
1616038698 Added ZEND_ATTRIBUTE_FORMAT to some middind functions.
"%p" replaced by ZEND_LONG_FMT to avoid compilation warnings.
Fixed most incorrect use cases of format specifiers.
2016-06-21 16:00:37 +03:00
Jakub Zelenka
e63a8540a6 Merge branch 'openssl_error_store' into openssl_aead 2016-06-19 17:05:48 +01:00
Jakub Zelenka
b44cf1a854 Merge branch 'PHP-7.0' into openssl_error_store 2016-06-12 18:56:55 +01:00
Jakub Zelenka
a2f4c32eb1 Merge branch 'PHP-5.6' into PHP-7.0 2016-06-12 18:39:32 +01:00
Jakub Zelenka
0e2447cd11 Fix bug #71915 (openssl_random_pseudo_bytes is not fork-safe)
Add time to the entropy before using RAND_bytes
2016-06-12 18:14:21 +01:00
Jakub Zelenka
54310d95f9 Fix bug #72336 (openssl_pkey_new does not fail for invalid DSA params) 2016-06-12 18:14:21 +01:00
Jakub Zelenka
84dce33b04 Merge branch 'PHP-5.6' into PHP-7.0 2016-06-08 18:36:36 +01:00
Jakub Zelenka
05033c9ebd Fix bug #72140 (segfault after calling ERR_free_strings()) 2016-06-08 18:21:39 +01:00
Anatol Belski
5afba67bfe Re-fix #72165
Reverted previous wrong patch, throw warning for numeric keys.
Numeric field names are not supported, see "distinguished name"
section here https://www.openssl.org/docs/manmaster/apps/req.html
2016-05-06 09:30:41 +02:00
Anatol Belski
dd5479ea4c Revert "Fixed bug #72165 Null pointer dereference - openssl_csr_new"
This reverts commit 7277c85765.
2016-05-06 09:19:04 +02:00
Anatol Belski
7277c85765 Fixed bug #72165 Null pointer dereference - openssl_csr_new 2016-05-06 09:01:27 +02:00
Jakub Zelenka
6ac8bc4ecb Merge branch 'openssl_error_store' of github.com:bukka/php-src into openssl_error_store 2016-04-03 19:56:15 +01:00
Jakub Zelenka
df85331220 Correctly store OpenSSL erorrs for encrypt_key 2016-04-03 19:54:39 +01:00
Jakub Zelenka
79dd71b151 Store OpenSSL errors from CONF_get_string in SET_OPTIONAL_STRING_ARG 2016-04-03 19:51:22 +01:00
Jakub Zelenka
7a4cc73641 Merge branch 'openssl_error_store' into openssl_aead_with_error_store 2016-02-29 19:34:39 +00:00
Jakub Zelenka
70141093a7 Merge branch 'master' into openssl_aead 2016-02-29 19:31:20 +00:00
Jakub Zelenka
80015ba741 Merge branch 'PHP-7.0' into openssl_error_store 2016-02-29 19:28:40 +00:00
Stanislav Malyshev
9afb29aa68 Remove TSRMLS_* from code, they are not used anymore 2016-02-17 22:44:05 -08:00
Jakub Zelenka
4ea2a0fd60 Store errors in openssl_random_pseudo_bytes 2016-02-14 19:25:14 +00:00
Nikita Popov
2d605e5f24 Merge branch 'PHP-7.0' 2016-02-14 14:47:42 +01:00
Nikita Popov
c9357f82d3 Format string fixes
Conflicts:
	ext/pgsql/pgsql.c
2016-02-14 14:45:53 +01:00
Jakub Zelenka
664d693513 Store errors in openssl_dh_compute_key 2016-02-08 19:35:47 +00:00
Jakub Zelenka
9b094be5f7 Store errors in openssl_encrypt and openssl_decrypt 2016-02-07 16:40:21 +00:00
Jakub Zelenka
34eb6b53cc Store errors in openssl_digest 2016-02-05 15:32:19 +00:00
Rob Thomas
2854f3292d Fix patch to work against PHP7
This also updates the testcases so they now return correct data
with the extra return value.
2016-02-05 10:19:02 +10:00
Rob Thomas
73bae6b065 Add 'serialNumberHex' variable to openssl_x509_parse
Currently, openssl_x509_parse returns an integer. This can be
unexpected, as the common way of handling serial numbers is with
a hex string.

This is compounded as  php's dechex() function cannot handle >32
bit numbers which will leave people trying to handle large serial
numbers frustrated.

By adding this extra return variable to openssl_x509_parse, the
consumer of the variable is certain that the serialNumberHex that
is returned is the exact Hex Serial number as OpenSSL returns
everywhere else.
2016-02-05 08:21:47 +10:00
Jakub Zelenka
899d2b2126 Store errors in openssl_seal and openssl_open 2016-02-04 12:30:53 +00:00
Jakub Zelenka
95a48213a0 Merge branch 'PHP-7.0' into openssl_error_store 2016-02-03 16:30:19 +00:00
Jakub Zelenka
ff1c97f0aa Store errors in openssl_sign and openssl_verify 2016-02-03 13:55:37 +00:00
Jakub Zelenka
c26b87b8ac Rewrite openssl_error_string to use stored errors 2016-02-02 16:26:03 +00:00