import termios, re, imp, ldap, sys, crypt, rfc822, pwd, os, getpass
import userdir_gpg
import hmac
-import sha as sha1_module
+import hashlib
try:
File = open("/etc/userdir-ldap/userdir-ldap.conf");
EmailAppend = ConfModule.emailappend;
AdminUser = ConfModule.adminuser;
GenerateDir = ConfModule.generatedir;
-GenerateConf = ConfModule.generateconf;
+AllowedGroupsPreload = ConfModule.allowedgroupspreload;
+HomePrefix = ConfModule.homeprefix;
DefaultGID = ConfModule.defaultgid;
TemplatesDir = ConfModule.templatesdir;
PassDir = ConfModule.passdir;
return -1
def make_hmac(str):
- File = open(PassDir+"/key-hmac-"+pwd.getpwuid(os.getuid())[0],"r");
- HmacKey = File.readline().strip()
- File.close();
- return hmac.new(HmacKey, str, sha1_module).hexdigest()
+ if 'UD_HMAC_KEY' in os.environ:
+ HmacKey = os.environ['UD_HMAC_KEY']
+ else:
+ File = open(PassDir+"/key-hmac-"+pwd.getpwuid(os.getuid())[0],"r");
+ HmacKey = File.readline().strip()
+ File.close();
+ return hmac.new(HmacKey, str, hashlib.sha1).hexdigest()
def make_passwd_hmac(status, purpose, uid, uuid, hosts, cryptedpass):
return make_hmac(':'.join([status, purpose, uid, uuid, hosts, cryptedpass]))