Package ldaptor :: Package test :: Module test_smbpassword
[hide private]
[frames] | no frames]

Source Code for Module ldaptor.test.test_smbpassword

 1  """ 
 2  Test cases for the ldaptor.samba.smbpassword module. 
 3  """ 
 4   
 5  from twisted.trial import unittest 
 6  from ldaptor.samba import smbpassword 
 7  from ldaptor import config 
 8   
9 -class TestNTHash(unittest.TestCase):
10 knownValues=( # password, expected_result 11 ('', '31D6CFE0D16AE931B73C59D7E0C089C0'), 12 ('foo', 'AC8E657F83DF82BEEA5D43BDAF7800CC'), 13 (127*'x', '25900FAB94A048BCF438615217776562'), 14 (128*'x', '65681023D0CB5E7E96FF662150EF060D'), 15 (129*'x', '65681023D0CB5E7E96FF662150EF060D'), 16 (1000*'x', '65681023D0CB5E7E96FF662150EF060D'), 17 ) 18
19 - def testKnownValues(self):
20 """nthash(...) gives known results""" 21 for password, expected_result in self.knownValues: 22 result = smbpassword.nthash(password) 23 if result != expected_result: 24 raise AssertionError, 'nthash(%s)=%s, expected %s' \ 25 % (repr(password), repr(result), repr(expected_result))
26
27 -class TestLMHash(unittest.TestCase):
28 knownValues=( # password, expected_result 29 ('', 'AAD3B435B51404EEAAD3B435B51404EE'), 30 ('foo', '5BFAFBEBFB6A0942AAD3B435B51404EE'), 31 (13*'x', '3AA62DBBEFDB676366B4159AF5A7C45C'), 32 (14*'x', '3AA62DBBEFDB67633AA62DBBEFDB6763'), 33 (15*'x', '3AA62DBBEFDB67633AA62DBBEFDB6763'), 34 (100*'x', '3AA62DBBEFDB67633AA62DBBEFDB6763'), 35 ('1234567abcdefg', '0182BD0BD4444BF8E0C510199CC66ABD'), 36 ('XXXXXXXabcdefg', '3AA62DBBEFDB6763E0C510199CC66ABD'), 37 ('1234567XXXXXXX', '0182BD0BD4444BF83AA62DBBEFDB6763'), 38 ) 39
40 - def testKnownValues(self):
41 """lmhash(...) gives known results""" 42 cfg = config.loadConfig() 43 for password, expected_result in self.knownValues: 44 cfg.set('samba', 'use-lmhash', 'no') 45 disabled = smbpassword.lmhash(password) 46 self.assertEquals(disabled, 32*'X', 47 "Disabled lmhash must be X's: %r" % disabled) 48 49 cfg.set('samba', 'use-lmhash', 'yes') 50 result = smbpassword.lmhash(password) 51 if result != expected_result: 52 raise AssertionError, 'lmhash(%s)=%s, expected %s' \ 53 % (repr(password), repr(result), repr(expected_result))
54