X-Git-Url: https://git.adam-barratt.org.uk/?p=mirror%2Fuserdir-ldap.git;a=blobdiff_plain;f=userdir_ldap.py;h=f3f9ba7a306016c6407d6c9f7857b0d1284de95c;hp=adcc8593b05b1793784de457dbdfbc40d73c929e;hb=d34f4cb87a80d211f07fc1bfb2b9a630d1346e7c;hpb=7a0e9808163461d1e1ff7e2e0ee9c5e69ed33b9b diff --git a/userdir_ldap.py b/userdir_ldap.py index adcc859..f3f9ba7 100644 --- a/userdir_ldap.py +++ b/userdir_ldap.py @@ -1,5 +1,5 @@ # Some routines and configuration that are used by the ldap progams -import termios, TERMIOS, re, string, imp, ldap, sys, whrandom, crypt; +import termios, TERMIOS, re, string, imp, ldap, sys, whrandom, crypt, rfc822; try: File = open("/etc/userdir-ldap/userdir-ldap.conf"); @@ -8,6 +8,7 @@ except: ConfModule = imp.load_source("userdir_config","/etc/userdir-ldap.conf",File); File.close(); +# Cheap hack BaseDn = ConfModule.basedn; BaseDn = ConfModule.basedn; LDAPServer = ConfModule.ldaphost; @@ -18,6 +19,8 @@ GenerateConf = ConfModule.generateconf; DefaultGID = ConfModule.defaultgid; TemplatesDir = ConfModule.templatesdir; PassDir = ConfModule.passdir; +Ech_ErrorLog = ConfModule.ech_errorlog; +Ech_MainLog = ConfModule.ech_mainlog; # This is a list of common last-name prefixes LastNamesPre = {"van": None, "le": None, "de": None, "di": None}; @@ -238,5 +241,17 @@ def FormatPGPKey(Str): I = I + 4; else: Res = Str; - return Res; - + return string.strip(Res); + +# Take an email address and split it into 3 parts, (Name,UID,Domain) +def SplitEmail(Addr): + Res1 = rfc822.AddrlistClass(Addr).getaddress(); + if len(Res1) != 1: + return ("","",Addr); + Res1 = Res1[0]; + if Res1[1] == None: + return (Res1[0],"",""); + Res2 = string.split(Res1[1],"@"); + if len(Res2) != 2: + return (Res1[0],"",Res1[1]); + return (Res1[0],Res2[0],Res2[1]);