aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/upas/misc/rewrite
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/upas/misc/rewrite')
-rw-r--r--src/cmd/upas/misc/rewrite20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/cmd/upas/misc/rewrite b/src/cmd/upas/misc/rewrite
new file mode 100644
index 00000000..fd724eb1
--- /dev/null
+++ b/src/cmd/upas/misc/rewrite
@@ -0,0 +1,20 @@
+# case conversion for postmaster
+pOsTmAsTeR alias postmaster
+
+# local mail
+[^!@]+ translate "/bin/upas/aliasmail '&'"
+local!(.*) >> /mail/box/\1/mbox
+\l!(.*) alias \1
+(helix|helix.bell-labs.com)!(.*) alias \2
+
+# we can be just as complicated as BSD sendmail...
+# 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
+
+# /mail/lib/remotemail will take care of gating to systems we don't know
+([^!]*)!(.*) | "/mail/lib/qmail '\s' 'net!\1'" "'\2'"