[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Ideas for developement..
I have been toying with a few developement ideas for the Zmailer, any takers ?
- mailing lists with external program to decide on routing decissions
(rc=0 -> normal expansion, rc=1 -> owner, rc=2 -> postmaster, ..)
- Needs also a method to do header rewrite per source X (external
or internal procedure) for addresses expanded from the list
- Would allow fairly extensive "loop detected, offending recipient.."
- procedural "canned messages" on error reports:
- would know what that describing local Firstname.Familyname@...
mapping isn't usefull info as address which failed was not
a local one...
(Now why this and previous one sound so much like LISTSERV inside
the mailer ? Because this is what LISTSERVs do with their lists..)
- Having separate database cache(+) server; Actual lookups are to be done
by the router processes, but they would at first query cache about it.
- routers must be able to live without it
- only one db-server per cluster of hosts (/etc/passwd cluster,
assuming no baseset+local extra users -NIS tricks are done.)
- stores cache entries with association to: database YY, expiration
time/other condition (file XXX changes)
- can flush cache of database YY per IPC command, as well as
- does lookup of /etc/passwd and /etc/groups entirely in core
(builds internal matrix of passwd data + groups, flushes & rereads
the file when it changes -- change detection method & actual file
location from configuration file)
- DNS negative cacheing ? It is not always a good thing...
( In case the 'named' your routers use does not do it. )
- Using LISP lists on (at least SMTP) mail delivery:
(assuming somebody not MX to nic.funet.fi)
smtp nic.funet.fi email@example.com attributes
smtp ((nic.funet.fi)(figbox.funet.fi)(funet.fi)) user@...
and if funet.fi had message in:
smtp ((nic.funet.fi)(figbox.funet.fi)) user@...
Some other examples:
smtp ((only.a-addressed.host)) firstname.lastname@example.org ...
smtp ((prim.mx)(sec.mx sec2.mx)(tertiary.mx)) user@....
LISP-lists ordered into MX priority order, if some order level has
multiple targets, they form their own list.
Scheduler queue recognition will break with this, but is easy to fix
by letting it to search for the first FQDN entry from within the list
-> A host which is primary MXer for a bunch of targets will become
queue target :-)
/Matti Aarnio <email@example.com> <firstname.lastname@example.org>
PS: I will try to make the LISP-lists as SMTP target ids, and the first
one about assisted routing is trivial, but its co-requirement of
header rewrites is not so.. Good night.