X-Git-Url: https://git.adam-barratt.org.uk/?p=mirror%2Fuserdir-ldap.git;a=blobdiff_plain;f=userdir_ldap.py;h=0eb4c13bbdb33ee65da5f19f3b3bf818abe09a73;hp=e90fffd87804b4a1a84950abee844d6db6cabd0f;hb=14908ffbe8886fdd85bf143ef14200e0171c18cd;hpb=bfd6f5c83238290a5920219af7329fb85af86a0b diff --git a/userdir_ldap.py b/userdir_ldap.py index e90fffd..0eb4c13 100644 --- a/userdir_ldap.py +++ b/userdir_ldap.py @@ -27,6 +27,10 @@ except: ConfModule = imp.load_source("userdir_config","/etc/userdir-ldap.conf",File); File.close(); +File = open(PassDir+"/key-hmac-"+pwd.getpwuid(os.getuid())[0],"r"); +HmacKey = F.readline().strip() +File.close(); + # Cheap hack BaseDn = ConfModule.basedn; HostBaseDn = ConfModule.hostbasedn; @@ -450,3 +454,9 @@ def Group2GID(l, name): return int(GetAttr(res[0], "gidNumber")) return -1 + +def make_hmac(str): + return hmac.new(HmacKey, str, sha1_module).hexdigest() + +def make_sudopasswd_hmac(purpose, uuid, hosts, cryptedpass): + return make_hmac(':'.join([purpose, uuid, hosts, cryptedpass]))