FORMAIL=/usr/bin/formail LOGFILE=/tmp/procmail.log VERBOSE=yes PATH=/usr/bin:/bin SHELL=/bin/sh SENDMAIL="/usr/sbin/sendmail -oi -t -f $RECIP -F $CYUSER " DELIVERTO="/usr/cyrus/bin/deliver -a $CYUSER -m" DELIVER="/usr/cyrus/bin/deliver" USERINBOX="user.$CYUSER" INCLUDE0=/var/imap/procmail/procmailrc.$CYUSER VACATIONDB=/var/imap/procmail/vacationdb SECRETKEY=18778392 #process user rule creation :0 * < 5000 * ^To: cyrus@youmaildomain * ^From: filteradm@yourmaildomain * ^X-Customfilter: [a-zA-Z0-9]+ ??$SECRETKEY | /etc/postfix/filter.pl :0 * ? test -e $INCLUDE0 { INCLUDERC=$INCLUDE0 } ############################# # All the mail that falls # through the above recipes # will be put into the user's # inbox. This is always the LAST # recipe to appear in the file. :0w | $DELIVERTO $USERINBOX # If that fails - maybe because the user is out of quota, or the mailbox # hasn't been created - then force a bounce (otherwise the message would # get silently appended to /var/spool/mail/$CYUSER). # over quota sends this # queues messages back in sendmail queue #EXITCODE=75 # Use exit code from deliver EXITCODE=$? # use this to change the returned exit code from deliver to a different one # for example to change 75 - which respools to 73 which bounces instead #:0 #* $EXITCODE ?? 75 #{ EXITCODE=73} # End of procmailrc file ##############################