[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: procmail as local MDA pointers?



Matti Aarnio writes:

> > 	Thanks for the reply.  Unfortunately, this is exactly what I
> > did.  I commented out command="mailbox -8" and uncommented
> > command="sm -8c $channel procm" in the local/* definition.  It was then
> > that I discovered procmail was being asked to deliver mail to aliases,
> > which clearly wouldn't work.  Any ideas?  What I want to have done is
> > procmail be used *only* for user's mailboxes, and zmailer's mailbox be
> > used for pipes and files.

> 	The alias expansions et.al. happen entirely inside the router.
> 	Therefore there must be something else wrong.
> 	(The mailbox is also uterly unable to do alias expansions, thus
> 	 if it works, while the procmail does not...)

	Well, something fishy's going on, cause aliases are not
expanding prior to hitting procmail:

> 	Could you show (me) a verbose trace of such a delivery test ?
> 	Supply also your current  scheduler.conf.

> 	$ echo test | mailx -v -s test some-test-address > mail.log 2>&1

mail.log:

-----
router processed message 3721-14928
l <19970624143549Z3721-14928+3@goof.com>
e "matthew c. mead" <mmead>
e mmead@goof.com
s local mmead mmead@goof.com 10000
r       local phoenix phoenix 10000
N ORCPT=rfc822;phoenix
headers rewritten using 'internet' function:
Received: from mmead@localhost by goof.com id <3721-14928>; Tue, 24 Jun 1997 10:35:49 -0400
From:   "matthew c. mead" <mmead@goof.com>
To:     phoenix@goof.com
Subject: test
Message-Id: <19970624143549Z3721-14928+3@goof.com>
Date:   Tue, 24 Jun 1997 10:35:36 -0400
 
router done processing 3721-14928
/usr/local/bin/procmail
        procmail -f mmead@goof.com -a phoenix -d phoenix 
Received: from mmead@localhost by goof.com id <3721-14928>; Tue, 24 Jun 1997 10:35:49 -0400
From:   "matthew c. mead" <mmead@goof.com>
To:     phoenix@goof.com
Subject: test
Message-Id: <19970624143549Z3721-14928+3@goof.com>
Date:   Tue, 24 Jun 1997 10:35:36 -0400
Return-Path: <mmead@goof.com>
 
Diagnostic: [exit status 67 (addressee unknown)]
scheduler done processing 3721-14928
-----

scheduler.conf:

-----
# Do not edit this file, instead edit /goof/goof/home/mmead/zmailer-2.99.49/proto/scheduler.conf
#
#
# Scheduler configuration file
#
# The scheduler reads this file on startup or when it receives a SIGUSR1 signal
#
# Every channel/host combination in recipient addresses will be sifted through
# the clauses matched in this file, picking up parameters until a clause that
# specifies a command.  Everything is free-form with three requirements:
# Clauses (i.e. the channel/host pattern) start at the beginning of a line.
# Clause contents (i.e. the parameters) don't.
# Components are separated by whitespace.
# NB! For command paths, the "current directory" is MAILBIN/ta

# Boilerplate default parameters
*/*	interval=1m
	idlemax=4m # Max idle for SMTP connections is 5 minutes, don't exceed that!
	#          # (Unless smtp channel becomes a bit smarter on handling it..)
	#
	# expire messages after 3 days without full delivery
	expiry=3d
	# when the scheduler gets to the end of the retry sequence,
	# it starts over at some random point in the middle.  The
	# numbers are factors of the scheduling interval.
	retries="1 1 2 3 5 8 13 21 34"
	# no default limits on simultaneous transport agents or
	# connections to a particular host
	maxchannel=0
	maxring=20
	#
	maxta=250 # OSF/1 has 4096 files per process. Don't overbook :-)
	#
	# skew is maximum number of tries before the retry time is
	# aligned to a standard boundary (seconds modulo interval).
	skew=1
	# default uid/gid of transport agents
	user=root
	group=daemon
	#
	# A flag telling about queue-order..
	#
	ageorder
	overfeed=150


# Deferred delivery is handled by this transport agent.  Deferrals are low
# priority, but they tend to bunch up.  The 1 channel slot means there will
# be lots of contention, and typical checking intervals will be a bit higher
# than what is specified (due to waiting for a free slot).
hold/*
	interval=5m
	maxchannel=1
	command=hold

# BITNET delivery methods

defrt1/*
	maxchannel=3
	command="sm -c $channel defrt1"

bsmtp3/*
	maxchannel=3
	command="sm -c $channel bsmtp3"

bsmtp3nd/*
	maxchannel=3
	command="sm -c $channel bsmtp3nd"
bsmtp3rfc/*
	maxchannel=3
	command="sm -c $channel bsmtp3"

bsmtp3ndrfc/*
	maxchannel=3
	command="sm -c $channel bsmtp3nd"

# Local delivery: files, processes, user mail
local/file*
	interval=5m
	idlemax=9m
	# Originally we had 3 hour expiry, but if your local system goes to
	# a fizz (freezes, that is), your local mail may start to bounce
	# before anybody notices anything...
	expiry=3d
	# want 20 channel slots, but only one HOST
	maxchannel=15
	maxring=5
	#
	# Do MIME text/plain; Quoted-Printable -> text/plain; 8BIT
	# conversion on flight!  (Can't use CYRUS, nor PROCMAIL here!)
	command="mailbox -8"
local/pipe*
	interval=5m
	idlemax=9m
	# Originally we had 3 hour expiry, but if your local system goes to
	# a fizz (freezes, that is), your local mail may start to bounce
	# before anybody notices anything...
	expiry=3d
	# want 20 channel slots, but only one HOST
	maxchannel=15
	maxring=5
	#
	# Do MIME text/plain; Quoted-Printable -> text/plain; 8BIT
	# conversion on flight!  (Can't use CYRUS, nor PROCMAIL here!)
	command="mailbox -8"
local/*
	interval=5m
	idlemax=9m
	# Originally we had 3 hour expiry, but if your local system goes to
	# a fizz (freezes, that is), your local mail may start to bounce
	# before anybody notices anything...
	expiry=3d
	# want 20 channel slots, but only one HOST
	maxchannel=15
	maxring=5
	#
	# Do MIME text/plain; Quoted-Printable -> text/plain; 8BIT
	# conversion on flight!
	#command="mailbox -8"
	# Or with CYRUS server the following might do:
	#command="sm -8c $channel cyrus"
	# Or with PROCMAIL as the local delivery agent:
	command="sm -8c $channel procm"

# smtpx is a channel where the delivery is done without checking at MXes;
# rather only on A/AAAA (address) entries:
smtpx/*
	maxchannel=90
	maxring=10
	command="smtp -c smtpx -x -s"


# Sometimes we may want to PUNT all out to somewhere without regarding
# on what the routing said:
#
# smtp/*
#	maxchannel=199
#	maxring=5
#	command="smtp -F [192.89.123.25] -l /var/log/mail/smtp.punt"

# This is a FAST EXPIRY test case.. Will always cause bounce, btw..
smtp/*-gw.funet.fi
	maxchannel=0
	maxring=5
	expiry=1m
	interval=15s
	retries="1"
	skew=1
	command="smtp -s" # -l /var/log/mail/smtp"

smtp/*.rutgers.edu
	maxchannel=199
	maxring=10
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.edu
	maxchannel=199
	maxring=20
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.com
	maxchannel=199
	maxring=30
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.uk
	maxchannel=199
	maxring=8
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.ca
	maxchannel=199
	maxring=10
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.se
	maxchannel=199
	maxring=7
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.dk
	maxchannel=199
	maxring=7
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.is
	maxchannel=199
	maxring=5
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.no
	maxchannel=199
	maxring=7
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.de
	maxchannel=199
	maxring=10
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.uk
	maxchannel=199
	maxring=10
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.gov
	maxchannel=199
	maxring=5
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.mil
	maxchannel=199
	maxring=5
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.net
	maxchannel=199
	maxring=10
	command="smtp -s" # -l /var/log/mail/smtp"
smtp/*.org
	maxchannel=199
	maxring=10
	command="smtp -s" # -l /var/log/mail/smtp"

# Within FUNET we have a bit longer expiry..
smtp/*funet.fi
	maxchannel=199
	maxring=9
	# maxta=2
	interval=10m
	retries="1 1 2 3 5 8 13 21 34"
	skew=1
	# Do FORCED MIME-decoding into C-T-E: 8BIT
	command="smtp -8sl /var/log/mail/smtp"

# Within our organization we care more about speed and capacity than connections
# The maxchannel value should be larger than the value used by smtp/*, to avoid
# some potential state and phase problems in the queues.
smtp/*.fi
	maxchannel=199
	maxring=20
	interval=10m
	retries="1 1 2 3 5 8 13 21 34"
	skew=1
	command="smtp -s" # -l /var/log/mail/smtp"

# Connections to the outside shouldn't duplicate effort so we only allow one
# per destination.
smtp/*
	maxchannel=199
	maxring=50
	command="smtp -s" # -l /var/log/mail/smtp"

# Error messages.  Delivery can be retried at leisure.
error/*
	interval=5m
	idlemax=2m
	maxchannel=5
	command=errormail

# UUCP delivery.  The "sm" transport agent picks the first host it sees and
# will select further recipient addresses with that host only.  We tell
# the scheduler this with the "byhost" boolean, to avoid a staggered delivery
# effect if the scheduler has to discover this on its own.
uucp/*		maxchannel=5
		command="sm -8c $channel uucp"

# News delivery.  Hostname is always the same here.
usenet/*	maxchannel=2
		command="sm -8c $channel usenet"

# UBC EAN X.400 gateway.  See comment at UUCP.
ean/*		maxchannel=1
		command="sm -c $channel ean"
-----

> 	Follow that log thru -- last line should be:
> 		scheduler done processing ...
> 	and them mail it to me.

	Here's phoenix in the /var/zmailer/db/aliases:

phoenix:                "|/usr/local/majordomo/wrapper resend -l phoenix -h goof.com phoenix-yumayumayumayuga0"




-matt

-- 
Matthew C. Mead					Technology Support Staff,
						Mathematics Department,
mmead@math.vt.edu				Virginia Tech
(540)231-2643