Hello all.


I am using opemsmtpd on an OpenBSD machine as an outbound mail relay for a 
small private network.  I understand the filter API is not stable or ready to 
become integral to enterprise network infrastructure, etc.  My use-case is 
pretty pedestrian (need to do some header rewriting using on_dataline), and I'm 
OK with all the caveats.



Despite the fact my smtpd.conf passes the syntax check using a python filter, 
and smtpd -d -v loads and runs, I don't see any evidence the filter is being 
called.  I have simplified to just use Gilles' example ( 
https://gist.github.com/jirutka/9e4921f447a254aa9631 or 
https://poolp.org/0xa871/The-state-of-filters , with no hashbang on the first 
line) which prints messages when the callbacks are invoked, and I've also tried 
to modify the on_connect function to write a simple debug file to /tmp .  No 
message shows up in either version, nor is the file in /tmp created.



Mails do get properly relayed and delivered to their destinations, and all 
associated log entries look OK, it's just that the filter functions don't 
appear to be getting called.



System is OpenBSD 5.9 (all current patches applied), with the package 
opensmtpd-extras-python-201602042118.tgz installed.



Help would be very much appreciated in figuring out what could be happening and 
where to look for clues.



=== representative smtpd.conf ===



int_if = "em1"



filter testfilt python "/usr/local/libexec/smtpd/example_filt.py"



listen on lo0 filter testfilt



listen on $int_if filter testfilt



accept from any for !local relay




Reply via email to