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