Hi Eugene,
And it prints the full command line to the syslog, I assume? Thanks for testing!
It solves the problem here as well =) Thanks for the update.
Yeah, I thought so, somehow I just didn't have the idea to look at debugv() when you mentioned the problem.
Do you plan to implement 'out of band' dspam calling? BTW maybe there is no need for a separate 'queue' folder especially as we only need a message signature. I think it can be stored in some buffer array so as the dspam calls are made i.e. during idle time (or during final cleanup at the latest).
Well, I tried doing that with the signature-log backend, but that seemed somewhat problematic to me although somebody said it actually works for him.
Also I am attaching a couple of patches that might be useful. dspam-exec.c.patch adds debug-dumping of the dspam reply (it turned out quite useful not only for the stack corruption problem). Makefile.patch fixes the syntax to compile with gmake under FreeBSD 6.1 and also adjusts the installed plugin permissions.
Thanks, I've added the Makefile patch, but the other one I'm not too sure about, it seems it would print things twice if the loop actually looped, so I left it for now. Also, your code can access buf[sizeof(buf)] which would be a buffer overrun.
johannes