You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/dev-php/PEAR-Crypt_HMAC/files/HMAC-1.0.1.patch

58 lines
1.5 KiB

diff -aurN a/HMAC.php b/HMAC.php
--- a/HMAC.php 2005-02-20 14:24:14.000000000 -0500
+++ b/HMAC.php 2018-02-13 14:03:59.421976960 -0500
@@ -68,8 +68,21 @@
* @access private
*/
var $_pack;
-
-
+
+ /**
+ * Constructor
+ * Pass method as first parameter
+ *
+ * @param string $key Key to use for hash
+ * @param string $func Hash function used for the calculation
+ * @return void
+ * @access public
+ */
+ function __construct($key, $func = 'md5')
+ {
+ $this->Crypt_HMAC($key, $func);
+ }
+
/**
* Constructor
* Pass method as first parameter
diff -aurN a/tests/HMAC_001.phpt b/tests/HMAC_001.phpt
--- a/tests/HMAC_001.phpt 1969-12-31 19:00:00.000000000 -0500
+++ b/tests/HMAC_001.phpt 2018-02-13 14:00:47.899812172 -0500
@@ -0,0 +1,26 @@
+--TEST--
+RFC 2104 Test Vectors
+--DESCRIPTION--
+This test file implements the three test vectors as described in
+RFC 2104 (https://www.ietf.org/rfc/rfc2104.txt)
+--FILE--
+<?php
+ require_once 'Crypt/HMAC.php';
+
+ $key = str_repeat(chr(0x0b), 16);
+ $crypt = new Crypt_HMAC($key, 'md5');
+ echo $crypt->hash('Hi There')."\n";
+
+ $key = 'Jefe';
+ $crypt->setKey($key);
+ echo $crypt->hash('what do ya want for nothing?')."\n";
+
+ $key = str_repeat(chr(0xaa), 16);
+ $data = str_repeat(chr(0xdd), 50);
+ $crypt->setKey($key);
+ echo $crypt->hash($data)."\n";
+?>
+--EXPECT--
+9294727a3638bb1c13f48ef8158bfc9d
+750c783e6ab0b503eaa86e310a5db738
+56be34521d144c88dbb8c733f0e8b3f6