Branch 'pykolab-0.5' - 2 commits - bin/kolab_smtp_access_policy.py saslauthd/__init__.py

Jeroen van Meeuwen vanmeeuwen at kolabsys.com
Sat Nov 3 17:20:08 CET 2012


 bin/kolab_smtp_access_policy.py |   10 +++++-----
 saslauthd/__init__.py           |   12 ++++++++++--
 2 files changed, 15 insertions(+), 7 deletions(-)

New commits:
commit abb9e550de375d766809f0cb3450b9b7fba8f5c9
Author: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen at kolabsys.com>
Date:   Sat Nov 3 16:18:40 2012 +0000

    Initialize auth before any work begins

diff --git a/bin/kolab_smtp_access_policy.py b/bin/kolab_smtp_access_policy.py
index 09420e8..5a48819 100755
--- a/bin/kolab_smtp_access_policy.py
+++ b/bin/kolab_smtp_access_policy.py
@@ -746,6 +746,11 @@ class PolicyRequest(object):
         else:
             sasl_domain = conf.get('kolab', 'primary_domain')
 
+        if self.auth == None:
+            self.auth = Auth(sasl_domain)
+        elif not self.auth.domain == sasl_domain:
+            self.auth = Auth(sasl_domain)
+
         if verify_domain(sasl_domain):
             if self.auth.secondary_domains.has_key(sasl_domain):
                 log.debug(
@@ -775,11 +780,6 @@ class PolicyRequest(object):
 
             return True
 
-        if self.auth == None:
-            self.auth = Auth(sasl_domain)
-        elif not self.auth.domain == sasl_domain:
-            self.auth = Auth(sasl_domain)
-
         recipients = self.auth.find_recipient(
                 normalize_address(recipient),
                 domain=sasl_domain,


commit c01e4f00637b2a4d2e5b9e5a2568f2805e99e5cf
Author: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen at kolabsys.com>
Date:   Sat Nov 3 16:18:12 2012 +0000

    Catch Broken Pipe error (#1170)

diff --git a/saslauthd/__init__.py b/saslauthd/__init__.py
index 84024e3..edbca94 100644
--- a/saslauthd/__init__.py
+++ b/saslauthd/__init__.py
@@ -195,9 +195,17 @@ class SASLAuthDaemon(object):
             auth.connect()
 
             if auth.authenticate(login):
-                clientsocket.send(struct.pack("!H2s", 2, "OK"))
+                # #1170: Catch broken pipe error (incomplete authentication request)
+                try:
+                    clientsocket.send(struct.pack("!H2s", 2, "OK"))
+                except:
+                    pass
             else:
-                clientsocket.send(struct.pack("!H2s", 2, "NO"))
+                # #1170: Catch broken pipe error (incomplete authentication request)
+                try:
+                    clientsocket.send(struct.pack("!H2s", 2, "NO"))
+                except:
+                    pass
 
             clientsocket.close()
 





More information about the commits mailing list