Annotation of embedaddon/php/ext/phar/tests/tar/phar_setsignaturealgo2.phpt, revision 1.1.1.2
1.1 misho 1: --TEST--
2: Phar::setSupportedSignatures() with hash, tar-based
3: --SKIPIF--
4: <?php if (!extension_loaded("phar")) die("skip"); ?>
5: <?php if (!extension_loaded("hash")) die("skip extension hash required");
6: $arr = Phar::getSupportedSignatures();
7: if (!in_array("OpenSSL", $arr)) die("skip openssl support required");
8: if (!in_array('SHA-256', $arr)) die("skip hash extension loaded shared"); ?>
9: --INI--
10: phar.require_hash=0
11: phar.readonly=0
1.1.1.2 ! misho 12: --ENV--
! 13: TEMP=.
! 14: TMP=.
1.1 misho 15: --FILE--
16: <?php
17: $fname = dirname(__FILE__) . '/' . basename(__FILE__, '.php') . '.phar.tar';
18: $p = new Phar($fname);
19: $p['file1.txt'] = 'hi';
20: var_dump($p->getSignature());
21: $p->setSignatureAlgorithm(Phar::MD5);
22: var_dump($p->getSignature());
23: $p->setSignatureAlgorithm(Phar::SHA1);
24: var_dump($p->getSignature());
25: try {
26: $p->setSignatureAlgorithm(Phar::SHA256);
27: var_dump($p->getSignature());
28: } catch (Exception $e) {
29: echo $e->getMessage();
30: }
31: try {
32: $p->setSignatureAlgorithm(Phar::SHA512);
33: var_dump($p->getSignature());
34: } catch (Exception $e) {
35: echo $e->getMessage();
36: }
37: try {
1.1.1.2 ! misho 38: $config = dirname(__FILE__) . '/../files/openssl.cnf';
! 39: $config_arg = array('config' => $config);
1.1 misho 40: $private = openssl_get_privatekey(file_get_contents(dirname(dirname(__FILE__)) . '/files/private.pem'));
41: $pkey = '';
1.1.1.2 ! misho 42: openssl_pkey_export($private, $pkey, NULL, $config_arg);
1.1 misho 43: $p->setSignatureAlgorithm(Phar::OPENSSL, $pkey);
44: var_dump($p->getSignature());
45: } catch (Exception $e) {
46: echo $e->getMessage();
47: }
48: ?>
49: ===DONE===
50: --CLEAN--
51: <?php
52: unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.phar.tar');
53: ?>
54: --EXPECTF--
55: array(2) {
56: ["hash"]=>
57: string(%d) "%s"
58: ["hash_type"]=>
59: string(5) "SHA-1"
60: }
61: array(2) {
62: ["hash"]=>
63: string(%d) "%s"
64: ["hash_type"]=>
65: string(3) "MD5"
66: }
67: array(2) {
68: ["hash"]=>
69: string(%d) "%s"
70: ["hash_type"]=>
71: string(5) "SHA-1"
72: }
73: array(2) {
74: ["hash"]=>
75: string(%d) "%s"
76: ["hash_type"]=>
77: string(7) "SHA-256"
78: }
79: array(2) {
80: ["hash"]=>
81: string(%d) "%s"
82: ["hash_type"]=>
83: string(7) "SHA-512"
84: }
85: array(2) {
86: ["hash"]=>
87: string(%d) "%s"
88: ["hash_type"]=>
89: string(7) "OpenSSL"
90: }
91: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>