sfox Mon Jun 23 19:18:02 2008 UTC
Modified files: (Branch: PHP_5_3)
/php-src/ext/phar config.w32 phar.c util.c
/php-src/ext/phar/tests phar_get_supported_signatures_002.phpt
phar_setsignaturealgo2.phpt
phpinfo_001.phpt phpinfo_002.phpt
phpinfo_003.phpt phpinfo_004.phpt
test_signaturealgos.phpt
Log:
- One solution for the openssl issues
- config.m4 needs bringing into line with config.w32, there may be broken
behaviour under *nix until this is done
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/config.w32?r1=1.27.2.2&r2=1.27.2.3&diff_format=u
Index: php-src/ext/phar/config.w32
diff -u php-src/ext/phar/config.w32:1.27.2.2
php-src/ext/phar/config.w32:1.27.2.3
--- php-src/ext/phar/config.w32:1.27.2.2 Sat May 17 20:07:22 2008
+++ php-src/ext/phar/config.w32 Mon Jun 23 19:18:01 2008
@@ -1,12 +1,22 @@
-// $Id: config.w32,v 1.27.2.2 2008/05/17 20:07:22 cellog Exp $
+// $Id: config.w32,v 1.27.2.3 2008/06/23 19:18:01 sfox Exp $
// vim:ft=javascript
ARG_ENABLE("phar", "disable phar support", "yes");
+ARG_ENABLE("phar-ssl", "enable phar with native OpenSSL support", "no");
+
+if (PHP_PHAR_SSL != "no") {
+ PHP_PHAR = PHP_PHAR_SSL;
+ PHP_PHAR_SHARED = PHP_PHAR_SSL_SHARED;
+}
if (PHP_PHAR != "no") {
EXTENSION("phar", "dirstream.c func_interceptors.c phar.c phar_object.c
phar_path_check.c stream.c tar.c util.c zip.c");
if (PHP_PHAR_SHARED) {
ADD_FLAG("CFLAGS_PHAR", "/D COMPILE_DL_PHAR ");
}
+ if (PHP_PHAR_SSL != "no") {
+ ADD_FLAG("LIBS_PHAR", "libeay32.lib");
+ AC_DEFINE('PHAR_HAVE_OPENSSL', 1);
+ }
ADD_EXTENSION_DEP('phar', 'spl', true);
}
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/phar.c?r1=1.370.2.28&r2=1.370.2.29&diff_format=u
Index: php-src/ext/phar/phar.c
diff -u php-src/ext/phar/phar.c:1.370.2.28 php-src/ext/phar/phar.c:1.370.2.29
--- php-src/ext/phar/phar.c:1.370.2.28 Sun Jun 22 00:50:32 2008
+++ php-src/ext/phar/phar.c Mon Jun 23 19:18:01 2008
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: phar.c,v 1.370.2.28 2008/06/22 00:50:32 cellog Exp $ */
+/* $Id: phar.c,v 1.370.2.29 2008/06/23 19:18:01 sfox Exp $ */
#define PHAR_MAIN 1
#include "phar_internal.h"
@@ -3408,7 +3408,7 @@
php_info_print_table_header(2, "Phar: PHP Archive support", "enabled");
php_info_print_table_row(2, "Phar EXT version", PHP_PHAR_VERSION);
php_info_print_table_row(2, "Phar API version", PHP_PHAR_API_VERSION);
- php_info_print_table_row(2, "CVS revision", "$Revision: 1.370.2.28 $");
+ php_info_print_table_row(2, "CVS revision", "$Revision: 1.370.2.29 $");
php_info_print_table_row(2, "Phar-based phar archives", "enabled");
php_info_print_table_row(2, "Tar-based phar archives", "enabled");
php_info_print_table_row(2, "ZIP-based phar archives", "enabled");
@@ -3422,6 +3422,15 @@
} else {
php_info_print_table_row(2, "bzip2 compression", "disabled
(install pecl/bz2)");
}
+#ifdef PHAR_HAVE_OPENSSL
+ php_info_print_table_row(2, "Native OpenSSL support", "enabled");
+#else
+ if (zend_hash_exists(&module_registry, "openssl", sizeof("openssl"))) {
+ php_info_print_table_row(2, "OpenSSL support", "enabled");
+ } else {
+ php_info_print_table_row(2, "OpenSSL support", "disabled
(install ext/openssl)");
+ }
+#endif
php_info_print_table_end();
php_info_print_box_start(0);
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/util.c?r1=1.55.2.20&r2=1.55.2.21&diff_format=u
Index: php-src/ext/phar/util.c
diff -u php-src/ext/phar/util.c:1.55.2.20 php-src/ext/phar/util.c:1.55.2.21
--- php-src/ext/phar/util.c:1.55.2.20 Sun Jun 22 13:10:03 2008
+++ php-src/ext/phar/util.c Mon Jun 23 19:18:01 2008
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: util.c,v 1.55.2.20 2008/06/22 13:10:03 sfox Exp $ */
+/* $Id: util.c,v 1.55.2.21 2008/06/23 19:18:01 sfox Exp $ */
#include "phar_internal.h"
@@ -1596,13 +1596,14 @@
char *pubkey = NULL, *pfile;
php_stream *pfp;
+#ifndef PHAR_HAVE_OPENSSL
if (!zend_hash_exists(&module_registry, "openssl",
sizeof("openssl"))) {
if (error) {
spprintf(error, 0, "openssl not
loaded");
}
return FAILURE;
}
-
+#endif
/* use __FILE__ . '.pubkey' for public key file */
spprintf(&pfile, 0, "%s.pubkey", fname);
pfp = php_stream_open_wrapper(pfile, "rb", 0, NULL);
@@ -1873,12 +1874,6 @@
EVP_MD *mdtype = (EVP_MD *) EVP_sha1();
EVP_MD_CTX md_ctx;
- if (!zend_hash_exists(&module_registry, "openssl",
sizeof("openssl"))) {
- if (error) {
- spprintf(error, 0, "phar \"%s\" openssl
signature cannot be created, openssl not loaded", phar->fname);
- }
- return FAILURE;
- }
in = BIO_new_mem_buf(PHAR_G(openssl_privatekey),
PHAR_G(openssl_privatekey_len));
if (in == NULL) {
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/phar_get_supported_signatures_002.phpt?r1=1.2.2.1&r2=1.2.2.2&diff_format=u
Index: php-src/ext/phar/tests/phar_get_supported_signatures_002.phpt
diff -u php-src/ext/phar/tests/phar_get_supported_signatures_002.phpt:1.2.2.1
php-src/ext/phar/tests/phar_get_supported_signatures_002.phpt:1.2.2.2
--- php-src/ext/phar/tests/phar_get_supported_signatures_002.phpt:1.2.2.1
Sun Jun 1 04:21:26 2008
+++ php-src/ext/phar/tests/phar_get_supported_signatures_002.phpt Mon Jun
23 19:18:01 2008
@@ -1,9 +1,13 @@
--TEST--
Phar::getSupportedSignatures()
--SKIPIF--
-<?php if (!extension_loaded("phar")) die("skip"); ?>
-<?php if (!extension_loaded("hash")) die("skip extension hash required"); ?>
-<?php if (extension_loaded("openssl")) die("skip extension openssl loaded"); ?>
+<?php
+if (!extension_loaded("phar")) die("skip");
+if (!extension_loaded("hash")) die("skip extension hash required");
+if (extension_loaded("openssl")) die("skip extension openssl loaded");
+$arr = Phar::getSupportedSignatures();
+if (in_array("OpenSSL", $arr)) die ("skip native openssl support enabled");
+?>
--INI--
phar.require_hash=0
phar.readonly=0
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/phar_setsignaturealgo2.phpt?r1=1.3.2.2&r2=1.3.2.3&diff_format=u
Index: php-src/ext/phar/tests/phar_setsignaturealgo2.phpt
diff -u php-src/ext/phar/tests/phar_setsignaturealgo2.phpt:1.3.2.2
php-src/ext/phar/tests/phar_setsignaturealgo2.phpt:1.3.2.3
--- php-src/ext/phar/tests/phar_setsignaturealgo2.phpt:1.3.2.2 Fri Jun 13
22:07:44 2008
+++ php-src/ext/phar/tests/phar_setsignaturealgo2.phpt Mon Jun 23 19:18:01 2008
@@ -1,9 +1,11 @@
--TEST--
Phar::setSupportedSignatures() with hash
--SKIPIF--
-<?php if (!extension_loaded("phar")) die("skip"); ?>
-<?php if (!extension_loaded("hash")) die("skip extension hash required"); ?>
-<?php if (!extension_loaded("openssl")) die("skip extension openssl
required"); ?>
+<?php
+if (!extension_loaded("phar")) die("skip");
+if (!extension_loaded("hash")) die("skip hash extension required");
+if (!extension_loaded("openssl")) die("skip openssl extension required");
+?>
--INI--
phar.require_hash=0
phar.readonly=0
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/phpinfo_001.phpt?r1=1.3.2.1&r2=1.3.2.2&diff_format=u
Index: php-src/ext/phar/tests/phpinfo_001.phpt
diff -u php-src/ext/phar/tests/phpinfo_001.phpt:1.3.2.1
php-src/ext/phar/tests/phpinfo_001.phpt:1.3.2.2
--- php-src/ext/phar/tests/phpinfo_001.phpt:1.3.2.1 Thu Jun 12 18:56:23 2008
+++ php-src/ext/phar/tests/phpinfo_001.phpt Mon Jun 23 19:18:01 2008
@@ -1,9 +1,13 @@
--TEST--
Phar: phpinfo display 1
--SKIPIF--
-<?php if (!extension_loaded("phar")) die("skip"); ?>
-<?php if (!extension_loaded("zlib")) die("skip zlib not loaded"); ?>
-<?php if (!extension_loaded("bz2")) die("skip bz2 not loaded"); ?>
+<?php
+if (!extension_loaded("phar")) die("skip");
+if (!extension_loaded("zlib")) die("skip zlib not loaded");
+if (!extension_loaded("bz2")) die("skip bz2 not loaded");
+$arr = Phar::getSupportedSignatures();
+if (in_array("OpenSSL", $arr)) die("skip openssl support enabled");
+?>
--INI--
phar.readonly=0
phar.require_hash=0
@@ -28,6 +32,7 @@
ZIP-based phar archives => enabled
gzip compression => enabled
bzip2 compression => enabled
+OpenSSL support => disabled (install ext/openssl)
Phar based on pear/PHP_Archive, original concept by Davey Shafik.
@@ -49,6 +54,7 @@
ZIP-based phar archives => enabled
gzip compression => enabled
bzip2 compression => enabled
+OpenSSL support => disabled (install ext/openssl)
Phar based on pear/PHP_Archive, original concept by Davey Shafik.
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/phpinfo_002.phpt?r1=1.4.2.1&r2=1.4.2.2&diff_format=u
Index: php-src/ext/phar/tests/phpinfo_002.phpt
diff -u php-src/ext/phar/tests/phpinfo_002.phpt:1.4.2.1
php-src/ext/phar/tests/phpinfo_002.phpt:1.4.2.2
--- php-src/ext/phar/tests/phpinfo_002.phpt:1.4.2.1 Thu Jun 12 18:56:23 2008
+++ php-src/ext/phar/tests/phpinfo_002.phpt Mon Jun 23 19:18:01 2008
@@ -1,9 +1,13 @@
--TEST--
Phar: phpinfo display 2
--SKIPIF--
-<?php if (!extension_loaded("phar")) die("skip"); ?>
-<?php if (!extension_loaded("zlib")) die("skip zlib not loaded"); ?>
-<?php if (!extension_loaded("bz2")) die("skip bz2 not loaded"); ?>
+<?php
+if (!extension_loaded("phar")) die("skip");
+if (!extension_loaded("zlib")) die("skip zlib not loaded");
+if (!extension_loaded("bz2")) die("skip bz2 not loaded");
+$arr = Phar::getSupportedSignatures();
+if (in_array("OpenSSL", $arr)) die("skip openssl support enabled");
+?>
--INI--
phar.readonly=1
phar.require_hash=1
@@ -26,6 +30,7 @@
ZIP-based phar archives => enabled
gzip compression => enabled
bzip2 compression => enabled
+OpenSSL support => disabled (install ext/openssl)
Phar based on pear/PHP_Archive, original concept by Davey Shafik.
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/phpinfo_003.phpt?r1=1.3.2.3&r2=1.3.2.4&diff_format=u
Index: php-src/ext/phar/tests/phpinfo_003.phpt
diff -u php-src/ext/phar/tests/phpinfo_003.phpt:1.3.2.3
php-src/ext/phar/tests/phpinfo_003.phpt:1.3.2.4
--- php-src/ext/phar/tests/phpinfo_003.phpt:1.3.2.3 Thu Jun 12 18:56:23 2008
+++ php-src/ext/phar/tests/phpinfo_003.phpt Mon Jun 23 19:18:01 2008
@@ -1,9 +1,13 @@
--TEST--
Phar: phpinfo display 3
--SKIPIF--
-<?php if (!extension_loaded("phar")) die("skip"); ?>
-<?php if (extension_loaded("zlib")) die("skip zlib loaded"); ?>
-<?php if (extension_loaded("bz2")) die("skip bz2 loaded"); ?>
+<?php
+if (!extension_loaded("phar")) die("skip");
+if (extension_loaded("zlib")) die("skip zlib loaded");
+if (extension_loaded("bz2")) die("skip bz2 loaded");
+$arr = Phar::getSupportedSignatures();
+if (in_array("OpenSSL", $arr)) die("skip openssl support enabled");
+?>
--INI--
phar.readonly=1
phar.require_hash=1
@@ -26,6 +30,7 @@
ZIP-based phar archives => enabled
gzip compression => disabled (install ext/zlib)
bzip2 compression => disabled (install pecl/bz2)
+OpenSSL support => disabled (install ext/openssl)
Phar based on pear/PHP_Archive, original concept by Davey Shafik.
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/phpinfo_004.phpt?r1=1.3.2.1&r2=1.3.2.2&diff_format=u
Index: php-src/ext/phar/tests/phpinfo_004.phpt
diff -u php-src/ext/phar/tests/phpinfo_004.phpt:1.3.2.1
php-src/ext/phar/tests/phpinfo_004.phpt:1.3.2.2
--- php-src/ext/phar/tests/phpinfo_004.phpt:1.3.2.1 Thu Jun 12 18:56:23 2008
+++ php-src/ext/phar/tests/phpinfo_004.phpt Mon Jun 23 19:18:01 2008
@@ -1,9 +1,13 @@
--TEST--
Phar: phpinfo display 4
--SKIPIF--
-<?php if (!extension_loaded("phar")) die("skip"); ?>
-<?php if (!extension_loaded("zlib")) die("skip zlib not loaded"); ?>
-<?php if (!extension_loaded("bz2")) die("skip bz2 not loaded"); ?>
+<?php
+if (!extension_loaded("phar")) die("skip");
+if (!extension_loaded("zlib")) die("skip zlib not loaded");
+if (!extension_loaded("bz2")) die("skip bz2 not loaded");
+$arr = Phar::getSupportedSignatures();
+if (in_array("OpenSSL", $arr)) die("skip native openssl support enabled");
+?>
--INI--
phar.readonly=0
phar.require_hash=0
@@ -31,6 +35,7 @@
<tr><td class="e">ZIP-based phar archives </td><td class="v">enabled </td></tr>
<tr><td class="e">gzip compression </td><td class="v">enabled </td></tr>
<tr><td class="e">bzip2 compression </td><td class="v">enabled </td></tr>
+<tr><td class="e">OpenSSL support </td><td class="v">disabled (install
ext/openssl) </td></tr>
</table><br />
<table border="0" cellpadding="3" width="600">
<tr class="v"><td>
@@ -54,6 +59,7 @@
<tr><td class="e">ZIP-based phar archives </td><td class="v">enabled </td></tr>
<tr><td class="e">gzip compression </td><td class="v">enabled </td></tr>
<tr><td class="e">bzip2 compression </td><td class="v">enabled </td></tr>
+<tr><td class="e">OpenSSL support </td><td class="v">disabled (install
ext/openssl) </td></tr>
</table><br />
<table border="0" cellpadding="3" width="600">
<tr class="v"><td>
http://cvs.php.net/viewvc.cgi/php-src/ext/phar/tests/test_signaturealgos.phpt?r1=1.5.2.1&r2=1.5.2.2&diff_format=u
Index: php-src/ext/phar/tests/test_signaturealgos.phpt
diff -u php-src/ext/phar/tests/test_signaturealgos.phpt:1.5.2.1
php-src/ext/phar/tests/test_signaturealgos.phpt:1.5.2.2
--- php-src/ext/phar/tests/test_signaturealgos.phpt:1.5.2.1 Sun Jun 1
04:21:26 2008
+++ php-src/ext/phar/tests/test_signaturealgos.phpt Mon Jun 23 19:18:01 2008
@@ -1,9 +1,12 @@
--TEST--
Phar: verify signature parsing works
--SKIPIF--
-<?php if (!extension_loaded("phar")) die("skip"); ?>
-<?php if (!extension_loaded("hash")) die("skip extension hash conflicts"); ?>
-<?php if (!extension_loaded("openssl")) die("skip extension openssl
conflicts"); ?>
+<?php
+if (!extension_loaded("phar")) die("skip");
+if (!extension_loaded("hash")) die("skip extension hash conflicts");
+$arr = Phar::getSupportedSignatures();
+if (!in_array("OpenSSL", $arr)) die("skip openssl support required");
+?>
--INI--
phar.require_hash=0
phar.readonly=0
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php