OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
 
*_destination_concurrency_limit help

From: Devin Nate (devin.nateclinicare.com)
Date: Tue Feb 27 2007 - 22:56:48 CST


Hi all;
 
I am trying to understand the meaning of the
transport_destination_concurrency_limit parameters, where "transport" is the
name of a transport in master.cf or default (please read below, I understand
it in some circumstances, but not all). I've read and studied the
documentation in postconf(5), transport(5), qmgr(8), and pipe(8) and I'm
still struggling with a few instances of using this.
 
What I do understand (and please let me know if this is wrong) is that where
a transport that uses domains is involved (e.g. smtp client or lmtp client,
and the "domain" is a domain that it is being delivering to):
    (a) where transport_destination_recipient_limit > 1, then this controls
how many concurrent deliveries will be made via the specified transport to
the domain being delivered to.
    (b) where transport_destination_recipient_limit = 1, then this controls
how many concurrent deliveries will be made via the specified transport to
the recipient at recipientdomain being delivered to.
 
What I don't understand is what happens where a transport doesn't deal with
a domain, per se. So in this instance, we are using
smtpd_client_restrictions configured with check_client_access, and have a
FILTER result. In particular, we have:
 
--
 
main.cf:
smtpd_client_restrictions =
        permit_mynetworks
        check_client_access hash:/etc/postfix/pop_before_smtp
        check_client_access hash:/etc/postfix/client_access
        check_client_access static:FILTER spamc:dummy
        permit
spamc_destination_concurrency_limit = ???? (I don't know the meaning of
this)
spamc_destination_recipient_limit = 1024 # 1024 less than the arg limit
of the shell

master.cf
spamc unix - n n - - pipe
  flags=Rq user=nobody argv=/etc/postfix/spamc.sh -f ${sender} --
${recipient}

spamc.sh is roughly the same as a simple post-queue content filtering
script.
 
--
 
When used like this, there isn't a destination domain per se (as I wrote).
At best, the left hand side (LHS) of the check_client_access expression is
the client domain or ip address of the client being check as part of
check_client_access.
 
So, does the "destination" refer to:
1. The spamc transport period? (unlikely, but I suppose possible)
2. The domain name of the LHS?
3. The ip address of the LHS?
4. Does qmgr check the list of recipients in ${recipient} and keep track of
the domains being delivered to in this list, and evaluate the limit against
that list?
5. The total number of instances this transport program may be running for?
(again, I don't see this being the case as it's defined in master.cf and
$default_process_limit)
6. some other method?

Any advice/help will be greatly appreciated!
 
Thanks,
Devin Nate
 

--

____________________________________________

Devin Nate
Technical Services Manager
CLINICARE Corporation

http://www.clinicare.com/ <http://www.clinicare.com/>
mailto:devin.nateclinicare.com <mailto:devin.nateclinicare.com>

tel: (403) 259-2273 x240
fax: (403) 259-2400

#300, 3553 - 31 Street NW
Calgary AB 2TL 2K7
Canada
____________________________________________