[Mimedefang] mimedefang behavior pre-HELO and on incomplete connections

David F. Skoll dfs at roaringpenguin.com
Sat Nov 1 04:29:57 EDT 2008


Kelly Jones wrote:

>>>  % "OK, it's been 30 seconds since you've seen my banner. Are you
>>>  going to say HELO or what?"
>> because Milter doesn't work that way.  Instead, set one of the confTO_XXX
>> timeouts (as another poster suggested.)

> Could I use signals to do this? Set a SIG_ALRM for 30s or something
> when filter_relay is called, and catch the sig with a subroutine that
> returns "GO AWAY"?

Set a SIG_ALRM where?  In the Perl?  You have no way in Milter to asyncronously
force Sendmail to do anything.

> Question: when someone connects, filter_relay is called. When they say
> HELO/EHLO, filter_helo is called. What happens to filter_relay at that
> point if my filter_relay subroutine hasn't returned anything?

I think you misunderstand how Milter works.  It's synchronous; until
filter_relay returns, the client doesn't get a banner and filter_helo
won't be called.

> Does mimedefang just kill that subroutine?

MIMEDefang only kills off a slave after the busy timeout, which is typically
quite long (about 10 minutes by default.)

Regards,

David.



More information about the MIMEDefang mailing list