Comment 17 for bug 832480

Revision history for this message
Nuno Carrilho (e-nano-k) wrote :

Hello again,

It seams that using the patch from Scott Kitterman (kitterman) wrote on 2012-06-14: #6

This should be fixed in pyspf (which I'll work on).

--- spf.py.orig 2012-06-14 19:56:11.568543789 +0000
+++ spf.py 2012-06-14 19:59:03.124546459 +0000
@@ -1129,7 +1129,7 @@
             try:
                 return [''.join(s.decode("ascii") for s in a)
                     for a in self.dns(domainname, 'TXT')]
- except UnicodeEncodeError:
+ except UnicodeError:
                 raise PermError('Non-ascii character in SPF TXT record.')
         return []
     def dns_99(self, domainname):
@@ -1138,7 +1138,7 @@
             try:
                 return [''.join(s.decode("ascii") for s in a)
                     for a in self.dns(domainname, 'SPF')]
- except UnicodeEncodeError:
+ except UnicodeError:
                 raise PermError('Non-ascii character in SPF record.')
         return []

The crash is gone, but policyd-spf cannot verify the TXT DNS entry correctly. This is the log. The mail is received, but the envelop is not checked, giving the error: Permerror

Jul 16 10:50:39 mailr01 policyd-spf[20450]: None; identity=helo; client-ip=195.1.1.1; helo=bbb.pt; <email address hidden>; <email address hidden>
Jul 16 10:50:39 mailr01 policyd-spf[20450]: Permerror; identity=mailfrom; client-ip=195.1.1.1; helo=bbb.pt; <email address hidden>; <email address hidden>

Hope you can help resolving this issue.
Best regards, NC