X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=ud-generate;h=201f0e2d27d58d6322c02f7b386116a58134ce03;hb=564435f0ad9477a23251cbf4c13e21af5c00702c;hp=d556f8b325a67718142b5c7a8f1ed46d2430f769;hpb=3b19770f41e7c4bf7882c9ae3c1e41025bcf8ea9;p=mirror%2Fuserdir-ldap.git diff --git a/ud-generate b/ud-generate index d556f8b..201f0e2 100755 --- a/ud-generate +++ b/ud-generate @@ -10,6 +10,8 @@ GroupIDMap = {}; Allowed = None; CurrentHost = ""; +EmailCheck = re.compile("^([^<>@]+@.+)?$"); + def Sanitize(Str): return string.translate(Str,string.maketrans("\n\r\t","$$$")); @@ -254,6 +256,9 @@ def GenForward(l,File): if len(GetAttr(x,"emailforward")) > 200: continue; + # Check the forwarding address + if EmailCheck.match(GetAttr(x,"emailforward")) == None: + continue; Line = "%s: %s" % (GetAttr(x,"uid"),GetAttr(x,"emailforward")); Line = Sanitize(Line) + "\n"; F.write(Line); @@ -286,6 +291,10 @@ def GenAllForward(l,File): if len(Forward) > 200: continue; + # Check the forwarding address + if EmailCheck.match(Forward) == None: + continue; + User = GetAttr(x,"uid"); Fdb.write("+%d,%d:%s->%s\n"%(len(User),len(Forward),User,Forward)); Fdb.write("\n");