1*68089Seric(Version 8.28 of 12/14/94) 233732Sbostic 364705SericKey: 464705Seric X -- extension (user visible change) 564705Seric B -- bug fix 664705Seric S -- security fix 764705Seric E -- enhancement to existing algorithm 857668Seric 965958Seric 10*68089SericX **** Multiple queues. 11*68089Seric 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 40*68089SericE *** Have recipient lines rewritten by the user database. 41*68089Seric 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 9466328SericX ** Make MAXBADCOMMANDS run time configurable. 9566328Seric 9666328SericE ** Allow mailertable entries of the form ``error:message''. 9766328Seric 9866328SericX ** Have .forward files re-queue if the home directory isn't 9966328Seric accessible? On some option... 10066328Seric (Q.G.Campbell@newcastle.ac.uk) 10166328Seric 10266328SericX ** Have local delivery queue if NIS is down? On some option... 10366328Seric (Q.G.Campbell@newcastle.ac.uk) 10466328Seric 10566328SericE ** Have nullclient configuration resolve local names to the local 10666328Seric mailer and then redirect them in ruleset 5; this allows you to 10766328Seric redirect root differently depending on the client. It's not 10866328Seric clear this is really a good idea though. 10966328Seric 11066013SericE ** Move CurHostAddr into mci struct, and make CurMCI variable 11166013Seric point to this, so that logging will give the correct address 11266013Seric instead of (0) for cached connections. Motonori Nakamura. 11366013Seric 11465907SericX ** Allow use of a generalized network service for aliasing? 11565907Seric How would the protocol be defined? 11665907Seric James Gritton <gritton@byu.edu>. 11765907Seric 11865555SericE ** Make "local configuration error" a temporary failure? 11965555Seric (add EX_CONFIG to the markfailure list) 12065555Seric 12165353SericX ** (sigh) BSMTP. 12265353Seric 12365226SericX ** "E" configuration line that sets environment variables. 12465226Seric 12565219SericE ** Change listen() high-load backoff to accept and issue a 4xx 12665219Seric message so that it responds more quickly. 12765219Seric 12865188SericE ** Change "/usr/tmp/dead.letter" to be based on _PATH_VARTMP. 12965188Seric 13065119SericB ** Commas in NAME envariable cause problems (Peter Wan 13165119Seric <peter@cc.gatech.edu>). Merge with suggestions to use 13265119Seric MIME-format for 8-bit characters? 13365119Seric 13465119SericE ** Save address information that comes back as the "additional 13565119Seric records" part of an MX lookup, to avoid additional name server 13665119Seric attempts. If there is an MX record without an additional A 13765119Seric record, delete it (this avoids a problem with misconfigured 13865119Seric DNS situations). 13965119Seric 14065119SericX ** Allow a way to extend the $Z macro with local configuration 14165119Seric information. 14265119Seric 14364755SericX ** Allow $x in -bt mode to expand macro "x". (BCX) [8.8] 14464755Seric 14564755SericX ** Allow /address in -bt mode to expand address through ruleset 0, 14664755Seric aliases, etc. and display results. [8.8] 14764755Seric 14864755SericX ** "R mailer address" in -bt mode does remotename on address. 14964755Seric 15064755SericE ** Adjust "infinite loop in rule" code to handle entire ruleset 15164755Seric (Code from Michael Corrigan). 15264755Seric 15364718SericE ** Allow :include: from command line (not SMTP) to assist in 15464718Seric "personal list" management -- i.e., creating lists that 15564718Seric cannot be EXPNed. 15664718Seric 15764718SericX ** Database (keyed lookup) auto-rebuild. 15864718Seric 15964705SericX ** Find a good test suite and include in the distribution. 16064652Seric 16164718SericS ** You can use symbolic links to point into protected directories. 16264718Seric (AEJ) 16364652Seric 16464705SericX ** Extend OI to allow separate settings for canonification, MX, and A 16564718Seric lookups. [8.8?] 16664652Seric 16764718SericX ** Add $!x class to match any number of words not in class x. (KRE) 16864683Seric 16964705SericX ** LOCAL_RULE_5 (Spencer Sun, spencer@phoenix.Princeton.EDU) 17064703Seric 17164705SericX ** Add "bestmx" map -- returns "best MX host" for this address. 17264705Seric Allows you to do automatic detection of when you are the best 17364705Seric MX for a given address. [8.7?] 17464703Seric 17565353SericX ** Some way to diddle resolver flags on a per-lookup basis, such 17665353Seric as a flag to the map declaration. (Rick McCarty) 17765353Seric - Is this really a good idea? DNSRCH can be turned off by 17865353Seric putting a dot at the end. AAONLY? 17965353Seric 18064718SericX ** Extend makemap to "gather" values -- i.e., merge entries that 18164718Seric have the same keys. [8.8] (BCX) 18264703Seric 18364718SericE ** Allow error messages on individual addresses in the qf file. 18464718Seric (BCX) 18564718Seric 18664718SericX ** Multi-character option names. [9.1] 18764718Seric 18864718SericX ** User database extensions for mailing lists: 18964718Seric list:precedence -- Precedence: value for new message 19064718Seric list:envelopefrom -- envelope "from" value for new message 19164718Seric others? [8.8] 19264718Seric 19365353SericX ** Command line switch to set precedence (for mailing list 19465353Seric generation). (BCX) 19565353Seric 19664755SericB ** Restore `T' line to eliminate X-Authentication-Warning: at 19764755Seric inappropriate times. (Christophe Wolfhugel) 19864755Seric - T could become a shorthand for Ct -- i.e., create a new 19964755Seric predefined class. 20064755Seric - Eliminate "<user> set sender to <address>" message entirely? 20164755Seric (this is the workaround) 20264755Seric 20365119SericB ** Return-Path: header should have <> added if not already there. 20465119Seric 20565119SericX ** Add heuristic to determine if other end is a sendmail; use 20665119Seric that to decide whether or not to honor F=I mailer flag. 20765119Seric [der Mouse <mouse@collatz.mcrcim.mcgill.edu>] 20865119Seric 20965119SericX ** Automatically drop into MIME mode if you have a full name 21065119Seric with 8-bit characters. See envelope.c 8.19.1.1 and util.c 21165119Seric 8.17.1.1. From Anders Ellefsrud <anders@ifi.uio.no>. 21265119Seric 21365119SericX ** -b? flag to read a header and show you what it will look like 21465119Seric after all rewriting for an indicated address. 21565119Seric 21665188SericE ** Log $u in logsender() (for=<someaddress>). 21765188Seric 21865753SericB ** Include SOCKADDR in MCI struct for logging (currently gives 21965753Seric a sockaddr of zero when printing from the cache). 22065753Seric 22166328SericX ** Allow option to set the characters that are autoquoted in 22266328Seric addresses? 22366328Seric 22465907SericX * Map that does MB/MR lookups. Rick McCarty <mccarty@io.com>. 22565907Seric 22665119SericX * Allow $> anywhere in RHS. John Boeske <jboeske@ualberta.ca>. 22765119Seric 22864755SericX * -V flag to print state of all (?) compilation flags. 22964755Seric 23064718SericX * Handle Expires: header field (if still in queue). 23164718Seric 23264705SericX * WIN/3B support (non-atomic rename, no h_addr_list, others?) 23364705Seric (Bruce Lilly <blilly!bruce@uu.psi.com>) 23464703Seric 23564705SericX * Sun YBTS daemon uses -ba. [Martin Kiff <MGK@newton.npl.co.uk>] 23664705Seric 23764705SericB * EXPN adds @domain to all mailers, including prog. Is this right? 23864705Seric [Bob Henry] 23964705Seric 24064705SericB * EXPN adds @localhost instead of @$M. [Pel Emanuelsson] 24164705Seric 24264705SericE * Change body put code to time out around individual puts. This will 24364705Seric make the timeout algorithm more responsive and more resilient. 24464705Seric Unfortunately, it's also a pain in the butt. 24564705Seric 24664705SericX * Some way to relay unfound local users to another site. 24764705Seric 24864705SericX * Disable all default RW sets except mailer-specific? 249