X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=ud-mailgate;h=aaf1e2ad742e5d3f102aa2e6c0e057aee6e32846;hb=2fd1b80485d816389e3ade4a3388d8652cee3f83;hp=05756aa2ff367885c75fd8a7e5a847c61f107e10;hpb=950e6acc8178555e33f64f0bda9af99bf9d7cfab;p=mirror%2Fuserdir-ldap.git diff --git a/ud-mailgate b/ud-mailgate index 05756aa..aaf1e2a 100755 --- a/ud-mailgate +++ b/ud-mailgate @@ -323,7 +323,7 @@ def DoSSH(Str, Attrs, badkeys, uid): Match = SSHFingerprint.match(output) g = Match.groups() - if int(g[0]) < 1024: + if int(g[0]) < 1024 and (typekey != "ed25519"): try: # Body Subst["__ERROR__"] = "SSH keysize %s is below limit 1024" % (g[0]) @@ -490,7 +490,7 @@ def DoRBL(Str,Attrs): # Handle a ConfirmSudoPassword request def DoConfirmSudopassword(Str, SudoPasswd): - Match = re.compile('^confirm sudopassword ('+UUID_FORMAT+') ([a-z0-9.,*]+) ([0-9a-f]{40})$').match(Str) + Match = re.compile('^confirm sudopassword ('+UUID_FORMAT+') ([a-z0-9.,*-]+) ([0-9a-f]{40})$').match(Str) if Match == None: return None @@ -517,7 +517,7 @@ def FinishConfirmSudopassword(l, uid, Attrs, SudoPasswd): newldap = [] for entry in inldap: - Match = re.compile('^('+UUID_FORMAT+') (confirmed:[0-9a-f]{40}|unconfirmed) ([a-z0-9.,*]+) ([^ ]+)$').match(entry) + Match = re.compile('^('+UUID_FORMAT+') (confirmed:[0-9a-f]{40}|unconfirmed) ([a-z0-9.,*-]+) ([^ ]+)$').match(entry) if Match == None: raise UDFormatError, "Could not parse existing sudopasswd entry" uuid = Match.group(1)