1*68227Seric(Version 8.29 of 02/05/95) 233732Sbostic 364705SericKey: 464705Seric X -- extension (user visible change) 564705Seric B -- bug fix 664705Seric S -- security fix 764705Seric E -- enhancement to existing algorithm 857668Seric 965958Seric 1068089SericX **** Multiple queues. 1168089Seric 1264705SericX **** Merge Sun changes. [8.7] 1359609Seric 1464755SericE **** Fix parseaddr to return a dummy mailer with QBADADDR set for 1564755Seric all cases except null input; change calls to be more sceptical 1664755Seric about the return value, checking this bit instead of just 1764755Seric checking for == NULL. (Eric Wassenaar) [8.7] 1864755Seric 1964799SericX **** Run time configurable locking -- e.g., compile in HASFLOCK and 2064799Seric HASLOCKF, and then choose at runtime between these. 2164799Seric 2265353SericB **** Aliases with .REDIRECT fail during newaliases if the "n" flag 2365353Seric is given. Problem is, sometimes you want them to, sometimes 2465353Seric you don't. Perhaps two flavors of "error" mailer? 2565353Seric 2665353SericB **** Calls to gethostbyname with a trailing dot fail if you are 2765353Seric not running DNS. 2865353Seric 2965119SericX **** Add uucp-bang mailer that strips off any domain name from 3065119Seric the envelope recipient address first; this is for use in 3165119Seric mailer table entries. 3265119Seric 3365188SericX **** "quote" map (inverse of dequote). Lets you turn node::user 3465188Seric into "node::user"@DECNET.gateway 3565188Seric 3665219SericX **** Named rulesets. 3765219Seric 3866013Seric? **** Should $( [1.2.3.4] $) convert the address to a name? 3966013Seric 4068089SericE *** Have recipient lines rewritten by the user database. 4168089Seric 4267420SericE *** Arrange to run queue jobs as the owner of that queue file. This 4367420Seric probably requires forcing a fork in order to be able to completely 4467420Seric restore the uid/gid portably without leaking out root privileges. 4567420Seric 4666337SericE *** Long term host status -- store host status on disk for sharing 4766337Seric between runs. 4866337Seric 4965869SericX *** Extend I option to allow setting of retry and timeout values. 5065869Seric drl@vuse.vanderbilt.edu (David R. Linn). 5165869Seric 5265753SericX *** Total connection cache lifespan timeout -- a way to give a 5365753Seric timeout on connections regardless of whether they are active 5465753Seric or not. For single threaded servers such as Microsoft SMTP 5565753Seric gateway. Douglas Anderson <dlander@afterlife.ncsc.mil>. 5665753Seric 5765188SericX *** Mailer flag that does a "ping" equivalent -- if it fails, wait 5865188Seric 30 seconds and try again (for dialup PPP connections). Could 5965188Seric just try the connection and then immediately retry on some 6065188Seric kinds of failures. 6165188Seric 6265119SericX *** Create a macro that has message size. 6365119Seric Peter Wemm <peter@DIALix.oz.au> 6465119Seric 6564718SericE *** Dynamically allocate MAXNAME buffers for headers. 6664718Seric 6765119SericE *** Dynamically allocate "line" buffer in readaliases(). 6865119Seric 6964718SericX *** Add -P to set precedence (e.g., -Pbulk). [8.8] (BCX) 7064652Seric 7164718SericE *** Don't send ErrMsgFile to postmaster bounces. (Josh Smith, 7264718Seric josh@osiris.ac.hmc.edu). 7364718Seric 7464799SericE *** Have daemons that start up check the alias database for 7564799Seric correctness and auto-rebuild if necessary. This is to handle 7664799Seric the case of a system crash during an alias database rebuild. 7764799Seric 7864799SericE *** Eliminate E qf line and e_errorqueue; use e_errorsto a la 7964799Seric e_receiptto. This simplifies and gives symmetry. (Eric 8064799Seric Wassenaar) 8164799Seric 8265165SericX *** DECNET_RELAY support in configs. 8365165Seric 8465753SericX *** -wN command line flag to set the width of mailq output. 8565753Seric (Allan Johannesen) 8665753Seric 8766328SericE *** Move mailertable lookup after UUCP-specific class checks? 8866328Seric (Kimmo Suominen <kim@tac.nyc.ny.us>) 8966328Seric 9066328SericE *** Users in more than one list with different owners get duplicate 9166328Seric deliveries -- maybe just assign them arbitrarily to one 9266328Seric envelope or the other? 9366328Seric 94*68227SericX ** Have a ruleset (6?) that gets both sender and recipient 95*68227Seric addresses to check compatibility. Can you do enough interesting 96*68227Seric things with this? 97*68227Seric 9866328SericX ** Make MAXBADCOMMANDS run time configurable. 9966328Seric 10066328SericE ** Allow mailertable entries of the form ``error:message''. 10166328Seric 10266328SericX ** Have .forward files re-queue if the home directory isn't 10366328Seric accessible? On some option... 10466328Seric (Q.G.Campbell@newcastle.ac.uk) 10566328Seric 10666328SericX ** Have local delivery queue if NIS is down? On some option... 10766328Seric (Q.G.Campbell@newcastle.ac.uk) 10866328Seric 10966328SericE ** Have nullclient configuration resolve local names to the local 11066328Seric mailer and then redirect them in ruleset 5; this allows you to 11166328Seric redirect root differently depending on the client. It's not 11266328Seric clear this is really a good idea though. 11366328Seric 11466013SericE ** Move CurHostAddr into mci struct, and make CurMCI variable 11566013Seric point to this, so that logging will give the correct address 11666013Seric instead of (0) for cached connections. Motonori Nakamura. 11766013Seric 11865907SericX ** Allow use of a generalized network service for aliasing? 11965907Seric How would the protocol be defined? 12065907Seric James Gritton <gritton@byu.edu>. 12165907Seric 12265555SericE ** Make "local configuration error" a temporary failure? 12365555Seric (add EX_CONFIG to the markfailure list) 12465555Seric 12565353SericX ** (sigh) BSMTP. 12665353Seric 12765226SericX ** "E" configuration line that sets environment variables. 12865226Seric 12965219SericE ** Change listen() high-load backoff to accept and issue a 4xx 13065219Seric message so that it responds more quickly. 13165219Seric 13265188SericE ** Change "/usr/tmp/dead.letter" to be based on _PATH_VARTMP. 13365188Seric 13465119SericB ** Commas in NAME envariable cause problems (Peter Wan 13565119Seric <peter@cc.gatech.edu>). Merge with suggestions to use 13665119Seric MIME-format for 8-bit characters? 13765119Seric 13865119SericE ** Save address information that comes back as the "additional 13965119Seric records" part of an MX lookup, to avoid additional name server 14065119Seric attempts. If there is an MX record without an additional A 14165119Seric record, delete it (this avoids a problem with misconfigured 14265119Seric DNS situations). 14365119Seric 14465119SericX ** Allow a way to extend the $Z macro with local configuration 14565119Seric information. 14665119Seric 14764755SericX ** Allow $x in -bt mode to expand macro "x". (BCX) [8.8] 14864755Seric 14964755SericX ** Allow /address in -bt mode to expand address through ruleset 0, 15064755Seric aliases, etc. and display results. [8.8] 15164755Seric 15264755SericX ** "R mailer address" in -bt mode does remotename on address. 15364755Seric 15464755SericE ** Adjust "infinite loop in rule" code to handle entire ruleset 15564755Seric (Code from Michael Corrigan). 15664755Seric 15764718SericE ** Allow :include: from command line (not SMTP) to assist in 15864718Seric "personal list" management -- i.e., creating lists that 15964718Seric cannot be EXPNed. 16064718Seric 16164718SericX ** Database (keyed lookup) auto-rebuild. 16264718Seric 16364705SericX ** Find a good test suite and include in the distribution. 16464652Seric 16564718SericS ** You can use symbolic links to point into protected directories. 16664718Seric (AEJ) 16764652Seric 16864705SericX ** Extend OI to allow separate settings for canonification, MX, and A 16964718Seric lookups. [8.8?] 17064652Seric 17164718SericX ** Add $!x class to match any number of words not in class x. (KRE) 17264683Seric 17364705SericX ** LOCAL_RULE_5 (Spencer Sun, spencer@phoenix.Princeton.EDU) 17464703Seric 17564705SericX ** Add "bestmx" map -- returns "best MX host" for this address. 17664705Seric Allows you to do automatic detection of when you are the best 17764705Seric MX for a given address. [8.7?] 17864703Seric 17965353SericX ** Some way to diddle resolver flags on a per-lookup basis, such 18065353Seric as a flag to the map declaration. (Rick McCarty) 18165353Seric - Is this really a good idea? DNSRCH can be turned off by 18265353Seric putting a dot at the end. AAONLY? 18365353Seric 18464718SericX ** Extend makemap to "gather" values -- i.e., merge entries that 18564718Seric have the same keys. [8.8] (BCX) 18664703Seric 18764718SericE ** Allow error messages on individual addresses in the qf file. 18864718Seric (BCX) 18964718Seric 19064718SericX ** Multi-character option names. [9.1] 19164718Seric 19264718SericX ** User database extensions for mailing lists: 19364718Seric list:precedence -- Precedence: value for new message 19464718Seric list:envelopefrom -- envelope "from" value for new message 19564718Seric others? [8.8] 19664718Seric 19765353SericX ** Command line switch to set precedence (for mailing list 19865353Seric generation). (BCX) 19965353Seric 20064755SericB ** Restore `T' line to eliminate X-Authentication-Warning: at 20164755Seric inappropriate times. (Christophe Wolfhugel) 20264755Seric - T could become a shorthand for Ct -- i.e., create a new 20364755Seric predefined class. 20464755Seric - Eliminate "<user> set sender to <address>" message entirely? 20564755Seric (this is the workaround) 20664755Seric 20765119SericB ** Return-Path: header should have <> added if not already there. 20865119Seric 20965119SericX ** Add heuristic to determine if other end is a sendmail; use 21065119Seric that to decide whether or not to honor F=I mailer flag. 21165119Seric [der Mouse <mouse@collatz.mcrcim.mcgill.edu>] 21265119Seric 21365119SericX ** Automatically drop into MIME mode if you have a full name 21465119Seric with 8-bit characters. See envelope.c 8.19.1.1 and util.c 21565119Seric 8.17.1.1. From Anders Ellefsrud <anders@ifi.uio.no>. 21665119Seric 21765119SericX ** -b? flag to read a header and show you what it will look like 21865119Seric after all rewriting for an indicated address. 21965119Seric 22065188SericE ** Log $u in logsender() (for=<someaddress>). 22165188Seric 22265753SericB ** Include SOCKADDR in MCI struct for logging (currently gives 22365753Seric a sockaddr of zero when printing from the cache). 22465753Seric 22566328SericX ** Allow option to set the characters that are autoquoted in 22666328Seric addresses? 22766328Seric 22865907SericX * Map that does MB/MR lookups. Rick McCarty <mccarty@io.com>. 22965907Seric 23065119SericX * Allow $> anywhere in RHS. John Boeske <jboeske@ualberta.ca>. 23165119Seric 23264755SericX * -V flag to print state of all (?) compilation flags. 23364755Seric 23464718SericX * Handle Expires: header field (if still in queue). 23564718Seric 23664705SericX * WIN/3B support (non-atomic rename, no h_addr_list, others?) 23764705Seric (Bruce Lilly <blilly!bruce@uu.psi.com>) 23864703Seric 23964705SericX * Sun YBTS daemon uses -ba. [Martin Kiff <MGK@newton.npl.co.uk>] 24064705Seric 24164705SericB * EXPN adds @domain to all mailers, including prog. Is this right? 24264705Seric [Bob Henry] 24364705Seric 24464705SericB * EXPN adds @localhost instead of @$M. [Pel Emanuelsson] 24564705Seric 24664705SericE * Change body put code to time out around individual puts. This will 24764705Seric make the timeout algorithm more responsive and more resilient. 24864705Seric Unfortunately, it's also a pain in the butt. 24964705Seric 25064705SericX * Some way to relay unfound local users to another site. 25164705Seric 25264705SericX * Disable all default RW sets except mailer-specific? 253