From 4db31855e7fde9a087fb59e761743420aaa3743b Mon Sep 17 00:00:00 2001 From: rsc Date: Sun, 12 Feb 2006 19:45:56 +0000 Subject: initial tree --- mail/lib/ignore | 16 ++++++++++++++++ mail/lib/namefiles | 3 +++ mail/lib/names.local | 5 +++++ mail/lib/qmail | 6 ++++++ mail/lib/remotemail | 14 ++++++++++++++ mail/lib/rewrite | 29 +++++++++++++++++++++++++++++ 6 files changed, 73 insertions(+) create mode 100755 mail/lib/ignore create mode 100755 mail/lib/namefiles create mode 100755 mail/lib/names.local create mode 100755 mail/lib/qmail create mode 100755 mail/lib/remotemail create mode 100755 mail/lib/rewrite diff --git a/mail/lib/ignore b/mail/lib/ignore new file mode 100755 index 00000000..88522b23 --- /dev/null +++ b/mail/lib/ignore @@ -0,0 +1,16 @@ +Mime-Version: +Content- +Message-Id: +Received: +Mailer: +References: +Precedence: +X- +X400- +O- +List- +Organization: +User-Agent: +In-Reply-To: +Delivered-To: +DomainKey-Signature: diff --git a/mail/lib/namefiles b/mail/lib/namefiles new file mode 100755 index 00000000..bfabb115 --- /dev/null +++ b/mail/lib/namefiles @@ -0,0 +1,3 @@ +# files listed here will be consulted for aliases + +names.local diff --git a/mail/lib/names.local b/mail/lib/names.local new file mode 100755 index 00000000..88db3d79 --- /dev/null +++ b/mail/lib/names.local @@ -0,0 +1,5 @@ +# alias file, listed in /mail/lib/namefiles + +# postmaster goes to glenda +postmaster glenda + diff --git a/mail/lib/qmail b/mail/lib/qmail new file mode 100755 index 00000000..c63f2b36 --- /dev/null +++ b/mail/lib/qmail @@ -0,0 +1,6 @@ +#!/usr/local/plan9/bin/rc +# qmail sender machine user... +rfork s +upas/vf | upas/qer $PLAN9/mail/queue smtp $* || exit 'qer failed' +upas/runq -n 10 $PLAN9/mail/queue $PLAN9/mail/lib/remotemail /dev/null >[2=1] & +exit '' diff --git a/mail/lib/remotemail b/mail/lib/remotemail new file mode 100755 index 00000000..028642e9 --- /dev/null +++ b/mail/lib/remotemail @@ -0,0 +1,14 @@ +#!/usr/local/plan9/bin/rc +shift +sender=$1 +shift +addr=$1 +shift +fd=`{upas/aliasmail -f $sender} +switch($fd){ +case *.* + ; +case * + fd=YOURDOMAIN.DOM +} +exec upas/smtp -h $fd $addr $sender $* diff --git a/mail/lib/rewrite b/mail/lib/rewrite new file mode 100755 index 00000000..eb3b2691 --- /dev/null +++ b/mail/lib/rewrite @@ -0,0 +1,29 @@ +# +# sample rewrite file for systems that send mail to a mail server or gateway +# for delivery. we assume the mail server handles incoming messages. +# +# by default the return address points to this system; set $site +# to the name of the mail server that receives your mail. +# +# replace YOURDOMAIN.DOM with the name of your domain. +# +# in the last rule, $smtp is the name of the mail server. set it +# in the DNS database in $PLAN9/lib/ndb (see ndb(7)). + +# translate local aliases from /mail/lib/namefiles +[^!@.]+ translate "$PLAN9/bin/upas/aliasmail '&'" + +# append the local domain to addresses without a domain +local!(.*) alias \1@swtch.com + +# convert source domain address to a chain a@b@c@d... +@([^@!,]*):([^!@]*)@([^!]*) alias \2@\3@\1 +@([^@!]*),@([^!@,]*):([^!@]*)@([^!]*) alias @\1:\3@\4@\2 + +# convert a chain a@b@c@d... to ...d!c!b!a +([^@]+)@([^@]+)@(.+) alias \2!\1@\3 +([^@]+)@([^@]+) alias \2!\1 + +# send all mail to the gateway or mail server, $smtp, for delivery +([^!]*)!(.*) | "$PLAN9/mail/lib/qmail '\s' 'tcp!holo.morphisms.net!5356'" "'\2@\1'" + -- cgit v1.2.3