The unified diff between revisions [9146c521..] and [40ea6296..] is displayed below. It can also be downloaded as a raw diff.
#
#
# add_dir "UCC-NORELAY"
#
# add_file "UCC-NORELAY/main.cf.snippet"
# content [7cf396158df2253c9b17510fcc2c7da8712e48ce]
#
# add_file "UCC-NORELAY/norelay-procmailrc"
# content [7979c70f9570ef32d93afb24b2e60c929e69bc8d]
#
# patch "src/local/local.c"
# from [49ac05f8caa419117add4bc430696bd8fb1bf89b]
# to [abe6e91d9828b341bccf9c31d506e0c9b0bdee97]
#
============================================================
--- UCC-NORELAY/main.cf.snippet 7cf396158df2253c9b17510fcc2c7da8712e48ce
+++ UCC-NORELAY/main.cf.snippet 7cf396158df2253c9b17510fcc2c7da8712e48ce
@@ -0,0 +1,7 @@
+# the start of a header to match
+ucc_no_relay_header = X-Spam-Flag: YES
+# user to run the procmailrc with if we can't determine a real user
+ucc_no_relay_user = spamass
+# delivery command. recipient is given on the cmdline because procmail removes
+# it from the environment.
+ucc_no_relay_command = procmail -m /etc/postfix/norelay-procmailrc "$RECIPIENT"
============================================================
--- UCC-NORELAY/norelay-procmailrc 7979c70f9570ef32d93afb24b2e60c929e69bc8d
+++ UCC-NORELAY/norelay-procmailrc 7979c70f9570ef32d93afb24b2e60c929e69bc8d
@@ -0,0 +1,40 @@
+# $SPAMPATH should be 1777 probably, and procmail.log needs
+# to be writable by all users too. locks require tweaking.
+
+PATH=$HOME/bin:/usr/bin:/bin:/usr/local/bin:.
+MAILDIR=/var/spampit
+LOGFILE=/var/spampit/procmail.log
+LINEBUF=4096
+
+SPAMPATH=/var/spampit
+# within homedir
+HOMEMAIL=mail
+SPAMMAIL=spam
+
+# passed as an arg because procmail will clear most env vars
+RECIPIENT=$1
+
+LOCALUSER=$LOGNAME
+FALLBACK=$RECIPIENT
+ORGMAIL=$SPAMPATH/$RECIPIENT
+DEFAULT=$ORGMAIL
+
+RESTINGPLACE=___
+
+:0
+* RESTINGPLACE ?? ___
+* ? test -d $HOME/$HOMEMAIL
+{
+ RESTINGPLACE=$HOME/$HOMEMAIL/spam
+}
+
+:0
+* RESTINGPLACE ?? ___
+{
+ RESTINGPLACE=$SPAMPATH/$RECIPIENT
+}
+
+LOCKFILE=$RESTINGPLACE.lock
+
+:0
+$RESTINGPLACE
============================================================
--- src/local/local.c 49ac05f8caa419117add4bc430696bd8fb1bf89b
+++ src/local/local.c abe6e91d9828b341bccf9c31d506e0c9b0bdee97
@@ -757,7 +757,6 @@ int main(int argc, char **argv)
VAR_MAILBOX_LOCK, DEF_MAILBOX_LOCK, &var_mailbox_lock, 1, 0,
VAR_UCC_NO_RELAY_HDR, DEF_UCC_NO_RELAY_HDR, &var_ucc_no_relay_hdr, 0, 0,
VAR_UCC_NO_RELAY_USER, DEF_UCC_NO_RELAY_USER, &var_ucc_no_relay_user, 0, 0,
- VAR_UCC_NO_RELAY_CMD, DEF_UCC_NO_RELAY_CMD, &var_ucc_no_relay_cmd, 0, 0,
0,
};
static CONFIG_BOOL_TABLE bool_table[] = {
@@ -774,6 +773,7 @@ int main(int argc, char **argv)
VAR_MAILBOX_COMMAND, DEF_MAILBOX_COMMAND, &var_mailbox_command, 0, 0,
VAR_MAILBOX_CMD_MAPS, DEF_MAILBOX_CMD_MAPS, &var_mailbox_cmd_maps, 0, 0,
VAR_LUSER_RELAY, DEF_LUSER_RELAY, &var_luser_relay, 0, 0,
+ VAR_UCC_NO_RELAY_CMD, DEF_UCC_NO_RELAY_CMD, &var_ucc_no_relay_cmd, 0, 0,
0,
};