|
|
@ -3,7 +3,6 @@
|
|
|
|
require_once('common.php');
|
|
|
|
require_once('common.php');
|
|
|
|
|
|
|
|
|
|
|
|
class PaCryptTest extends PHPUnit_Framework_TestCase {
|
|
|
|
class PaCryptTest extends PHPUnit_Framework_TestCase {
|
|
|
|
|
|
|
|
|
|
|
|
public function testMd5Crypt() {
|
|
|
|
public function testMd5Crypt() {
|
|
|
|
$hash = _pacrypt_md5crypt('test', '');
|
|
|
|
$hash = _pacrypt_md5crypt('test', '');
|
|
|
|
|
|
|
|
|
|
|
@ -23,11 +22,10 @@ class PaCryptTest extends PHPUnit_Framework_TestCase {
|
|
|
|
$this->assertNotEquals('test', $hash);
|
|
|
|
$this->assertNotEquals('test', $hash);
|
|
|
|
|
|
|
|
|
|
|
|
$this->assertEquals($hash, _pacrypt_crypt('test', $hash));
|
|
|
|
$this->assertEquals($hash, _pacrypt_crypt('test', $hash));
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public function testMySQLEncrypt() {
|
|
|
|
public function testMySQLEncrypt() {
|
|
|
|
if(!db_mysql()) {
|
|
|
|
if (!db_mysql()) {
|
|
|
|
$this->markTestSkipped('Not using MySQL');
|
|
|
|
$this->markTestSkipped('Not using MySQL');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -49,25 +47,24 @@ class PaCryptTest extends PHPUnit_Framework_TestCase {
|
|
|
|
public function testAuthlib() {
|
|
|
|
public function testAuthlib() {
|
|
|
|
|
|
|
|
|
|
|
|
// too many options!
|
|
|
|
// too many options!
|
|
|
|
foreach(
|
|
|
|
foreach (
|
|
|
|
['md5raw' => '098f6bcd4621d373cade4e832627b4f6',
|
|
|
|
['md5raw' => '098f6bcd4621d373cade4e832627b4f6',
|
|
|
|
'md5' => 'CY9rzUYh03PK3k6DJie09g==',
|
|
|
|
'md5' => 'CY9rzUYh03PK3k6DJie09g==',
|
|
|
|
// crypt requires salt ...
|
|
|
|
// crypt requires salt ...
|
|
|
|
'SHA' => 'qUqP5cyxm6YcTAhz05Hph5gvu9M='] as $flavour => $hash) {
|
|
|
|
'SHA' => 'qUqP5cyxm6YcTAhz05Hph5gvu9M='] as $flavour => $hash) {
|
|
|
|
|
|
|
|
|
|
|
|
$CONF['authlib_default_flavour'] = $flavour;
|
|
|
|
$CONF['authlib_default_flavour'] = $flavour;
|
|
|
|
|
|
|
|
|
|
|
|
$stored = "{" . $flavour . "}$hash";
|
|
|
|
$stored = "{" . $flavour . "}$hash";
|
|
|
|
$hash = _pacrypt_authlib('test', $stored);
|
|
|
|
$hash = _pacrypt_authlib('test', $stored);
|
|
|
|
|
|
|
|
|
|
|
|
$this->assertEquals($hash, $stored, "Hash: $hash vs Stored: $stored" );
|
|
|
|
$this->assertEquals($hash, $stored, "Hash: $hash vs Stored: $stored");
|
|
|
|
//var_dump("Hash: $hash from $flavour");
|
|
|
|
//var_dump("Hash: $hash from $flavour");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public function testPacryptDovecot() {
|
|
|
|
public function testPacryptDovecot() {
|
|
|
|
global $CONF;
|
|
|
|
global $CONF;
|
|
|
|
if(!file_exists('/usr/bin/doveadm')) {
|
|
|
|
if (!file_exists('/usr/bin/doveadm')) {
|
|
|
|
$this->markTestSkipped("No /usr/bin/doveadm");
|
|
|
|
$this->markTestSkipped("No /usr/bin/doveadm");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -79,10 +76,7 @@ class PaCryptTest extends PHPUnit_Framework_TestCase {
|
|
|
|
$this->assertEquals($expected_hash, _pacrypt_dovecot('test', ''));
|
|
|
|
$this->assertEquals($expected_hash, _pacrypt_dovecot('test', ''));
|
|
|
|
|
|
|
|
|
|
|
|
$this->assertEquals($expected_hash, _pacrypt_dovecot('test', $expected_hash));
|
|
|
|
$this->assertEquals($expected_hash, _pacrypt_dovecot('test', $expected_hash));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* vim: set expandtab softtabstop=4 tabstop=4 shiftwidth=4: */
|
|
|
|
/* vim: set expandtab softtabstop=4 tabstop=4 shiftwidth=4: */
|
|
|
|