[exim-dev] [Bug 1394] Proxy Protocol Support

Top Page
Delete this message
Reply to this message
Author: Todd Lyons
Date:  
To: exim-dev
Old-Topics: [exim-dev] [Bug 1394] New: Proxy Protocol Support
Subject: [exim-dev] [Bug 1394] Proxy Protocol Support
------- You are receiving this mail because: -------
You are on the CC list for the bug.

http://bugs.exim.org/show_bug.cgi?id=1394




--- Comment #14 from Todd Lyons <tlyons@???> 2014-04-25 20:12:26 ---
The underlying issue is this: the point at which the smtp_accept_max_per_host
is a fast code path. This limits what can be done at this point to things that
are fast and only minimally impact startup speed.

It's also before the fork(), which means that the data in smtp_slots[] that is
used to track this value is also in a different scope (daemon.c, versus
smtp_in.c which complicates getting to the data).

With these points in mind, the smtp_accept_max_per_host is still enforced, but
by following the documented advice and setting it equal to smtp_accept_max, it
disables the per host effect. In order to get the same per host limits
enforced in the scope of smtp_in.c, I have to add an accessible function to get
a copy of that pid's slot array from the daemon.c scope. I honestly don't like
doing that. I'm open to suggestions of better ways. While looping through and
generating the count, I have to find the slot entry with the proxy's IP and
instead use the remote host proxied IP while I'm generating the count, but
that's fairly trivial.


--
Configure bugmail: http://bugs.exim.org/userprefs.cgi?tab=email