Skip to content

Commit

Permalink
MDL-37625 auth_radius Updated to latest version (1.5.0) of included P…
Browse files Browse the repository at this point in the history
…EAR Crypt_CHAP library.
  • Loading branch information
jfilip committed Jan 22, 2013
1 parent e61f96c commit 57951b8
Showing 1 changed file with 8 additions and 9 deletions.
17 changes: 8 additions & 9 deletions lib/pear/Crypt/CHAP.php
@@ -1,6 +1,6 @@
<?php <?php
/* /*
Copyright (c) 2002-2003, Michael Bretterklieber <michael@bretterklieber.com> Copyright (c) 2002-2010, Michael Bretterklieber <michael@bretterklieber.com>
All rights reserved. All rights reserved.
Redistribution and use in source and binary forms, with or without Redistribution and use in source and binary forms, with or without
Expand Down Expand Up @@ -101,7 +101,6 @@ function Crypt_CHAP()
function generateChallenge($varname = 'challenge', $size = 8) function generateChallenge($varname = 'challenge', $size = 8)
{ {
$this->$varname = ''; $this->$varname = '';
mt_srand(hexdec(substr(md5(microtime()), -8)) & 0x7fffffff);
for ($i = 0; $i < $size; $i++) { for ($i = 0; $i < $size; $i++) {
$this->$varname .= pack('C', 1 + mt_rand() % 255); $this->$varname .= pack('C', 1 + mt_rand() % 255);
} }
Expand Down Expand Up @@ -149,7 +148,7 @@ function challengeResponse()
* Generate MS-CHAPv1 Packets. MS-CHAP doesen't use the plaintext password, it uses the * Generate MS-CHAPv1 Packets. MS-CHAP doesen't use the plaintext password, it uses the
* NT-HASH wich is stored in the SAM-Database or in the smbpasswd, if you are using samba. * NT-HASH wich is stored in the SAM-Database or in the smbpasswd, if you are using samba.
* The NT-HASH is MD4(str2unicode(plaintextpass)). * The NT-HASH is MD4(str2unicode(plaintextpass)).
* You need the mhash extension for this class. * You need the hash extension for this class.
* *
* @package Crypt_CHAP * @package Crypt_CHAP
*/ */
Expand All @@ -165,13 +164,13 @@ class Crypt_CHAP_MSv1 extends Crypt_CHAP
/** /**
* Constructor * Constructor
* *
* Loads the mhash extension * Loads the hash extension
* @return void * @return void
*/ */
function Crypt_CHAP_MSv1() function Crypt_CHAP_MSv1()
{ {
$this->Crypt_CHAP(); $this->Crypt_CHAP();
$this->loadExtension('mhash'); $this->loadExtension('hash');
} }


/** /**
Expand All @@ -183,9 +182,9 @@ function Crypt_CHAP_MSv1()
function ntPasswordHash($password = null) function ntPasswordHash($password = null)
{ {
if (isset($password)) { if (isset($password)) {
return mhash(MHASH_MD4, $this->str2unicode($password)); return pack('H*',hash('md4', $this->str2unicode($password)));
} else { } else {
return mhash(MHASH_MD4, $this->str2unicode($this->password)); return pack('H*',hash('md4', $this->str2unicode($this->password)));
} }
} }


Expand Down Expand Up @@ -432,7 +431,7 @@ function Crypt_CHAP_MSv2()
*/ */
function ntPasswordHashHash($nthash) function ntPasswordHashHash($nthash)
{ {
return mhash(MHASH_MD4, $nthash); return pack('H*',hash('md4', $nthash));
} }


/** /**
Expand All @@ -444,7 +443,7 @@ function ntPasswordHashHash($nthash)
*/ */
function challengeHash() function challengeHash()
{ {
return substr(mhash(MHASH_SHA1, $this->peerChallenge . $this->authChallenge . $this->username), 0, 8); return substr(pack('H*',hash('sha1', $this->peerChallenge . $this->authChallenge . $this->username)), 0, 8);
} }


/** /**
Expand Down

0 comments on commit 57951b8

Please sign in to comment.