Skip to content
Snippets Groups Projects
Commit a9663a23 authored by Stuart Gathman's avatar Stuart Gathman
Browse files

Keep screened honeypot mail, but optionally discard honeypot only mail.

parent 8df5cd02
No related branches found
No related tags found
No related merge requests found
#!/usr/bin/env python
# A simple milter that has grown quite a bit.
# $Log$
# Revision 1.19 2005/07/20 03:30:04 customdesigned
# Check pydspam version for honeypot, include latest pyspf changes.
#
# Revision 1.18 2005/07/17 01:25:44 customdesigned
# Log as well as use extended result for best guess.
#
......@@ -697,7 +700,7 @@ class bmsMilter(Milter.Milter):
receiver = self.receiver
q = spf.query(self.connectip,'@'.join(t),self.hello_name,receiver=receiver)
q.set_default_explanation(
'SPF fail: see http://spf.pobox.com/why.html?sender=%s&ip=%s' % (q.s,q.i))
'SPF fail: see http://openspf.com/why.html?sender=%s&ip=%s' % (q.s,q.i))
res,code,txt = q.check()
if res in ('none', 'softfail'):
if self.mailfrom != '<>':
......@@ -1075,7 +1078,14 @@ class bmsMilter(Milter.Milter):
self.log("Large message:",len(txt))
return False
if user == 'honeypot' and Dspam.VERSION >= '1.1.9':
ds.check_spam(user,txt,force_result=dspam.DSR_ISSPAM)
keep = False # keep honeypot mail
if len(self.recipients) > 1:
ds.check_spam(user,txt,self.recipients,quarantine=True,
force_result=dspam.DSR_ISSPAM)
self.log("HONEYPOT:",rcpt,'SCREENED')
else:
ds.check_spam(user,txt,self.recipients,quarantine=keep,
force_result=dspam.DSR_ISSPAM)
self.log("HONEYPOT:",rcpt)
self.fp = None
return False
......
......@@ -194,4 +194,5 @@ everything up for you. For other systems:
</ol>
</ol>
</body>
</html>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment