Implement setsymlist decorator and test framework

This commit is contained in:
Stuart D. Gathman
2016-12-01 23:59:31 -05:00
parent 207278479f
commit 381e906b6a
4 changed files with 86 additions and 9 deletions
+7 -1
View File
@@ -33,18 +33,24 @@ class sampleMilter(Milter.Milter):
self.fp = None
self.bodysize = 0
self.id = Milter.uniqueID()
self.user = None
# multiple messages can be received on a single connection
# envfrom (MAIL FROM in the SMTP protocol) seems to mark the start
# of each message.
@Milter.symlist('{auth_authen}')
@Milter.noreply
def envfrom(self,f,*str):
"start of MAIL transaction"
self.log("mail from",f,str)
self.fp = BytesIO()
self.tempname = None
self.mailfrom = f
self.bodysize = 0
self.user = self.getsymval('{auth_authen}')
if self.user:
self.log("user",self.user,"sent mail from",f,str)
else:
self.log("mail from",f,str)
return Milter.CONTINUE
def envrcpt(self,to,*str):