1*66328Seric(Version 8.21 of 03/09/94) 233732Sbostic 364705SericKey: 464705Seric X -- extension (user visible change) 564705Seric B -- bug fix 664705Seric S -- security fix 764705Seric E -- enhancement to existing algorithm 857668Seric 965958SericB **** CNAME loops cause message to be both queued and bounced. 1065958Seric "Right" fix is to change dropenvelope et al to do one or 1165958Seric the other, but could this cause other problems? 1265958Seric Eric Hagberg <hagberg@med.cornell.edu> 1365958Seric 1464705SericX **** 8 -> 7 bit MIME conversion. 1557943Seric 1664705SericE **** Change NoReturn to be an envelope flag. [8.7] 1758964Seric 1864705SericX **** Add M_NOLOOPBACKCHK (k) mailer flag to turn off check of name in 1964705Seric HELO command. [8.8] 2060606Seric 2164705SericX **** Merge Sun changes. [8.7] 2259609Seric 2365119SericX **** Macro giving size of the message in bytes. 2465119Seric 2565188SericX **** Create a "service switch" abstraction that will interface with 2665188Seric Sun NSS, Ultrix /etc/svc.conf, etc. This will allow you to 2765188Seric turn off DNS entirely, a la ``OIoff''. [8.7] 2864652Seric 2964718SericX **** Should have new mailer flags to override LocalMailer stuff: 3064652Seric - M_ALIASABLE (A) -- can use as the LHS of an alias. 3164652Seric - M_HASPWENT (w) -- should have a /etc/passwd entry. If not found 3264652Seric there, implies user unknown. Also implies .forward and UDB 3364652Seric searching, search for |, /, and :include:, etc.). 3464652Seric - Actually, UDB searching and |, /, and :include: mapping should 3564652Seric probably be on another flag. (Cannot be 'l' for back compat 3664652Seric reasons.) 3764652Seric - Need for $@host part of triple and Return-Receipt-To: processing 3864652Seric should also be split apart. 3964705Seric [8.8] 4064652Seric 41*66328SericX **** Mailer flag to enable/disable surrounding route-addrs with 42*66328Seric angle brackets in setsender(). UUCP cleanup scripts treat 43*66328Seric these as file redirection. 44*66328Seric 4565119SericX **** Mailer flag to override MX lookups. 4665119Seric 4764755SericE **** Fix parseaddr to return a dummy mailer with QBADADDR set for 4864755Seric all cases except null input; change calls to be more sceptical 4964755Seric about the return value, checking this bit instead of just 5064755Seric checking for == NULL. (Eric Wassenaar) [8.7] 5164755Seric 5264799SericX **** Run time configurable locking -- e.g., compile in HASFLOCK and 5364799Seric HASLOCKF, and then choose at runtime between these. 5464799Seric 5565353SericB **** Aliases with .REDIRECT fail during newaliases if the "n" flag 5665353Seric is given. Problem is, sometimes you want them to, sometimes 5765353Seric you don't. Perhaps two flavors of "error" mailer? 5865353Seric 5965353SericB **** Calls to gethostbyname with a trailing dot fail if you are 6065353Seric not running DNS. 6165353Seric 6265119SericE **** Move delivery forking from sendenvelope to sendall so that 6365119Seric the connection cache works between split envelopes, and to 6465119Seric avoid a flurry of processes should you be sending to lots of 6565119Seric sub-lists. 6665119Seric 6765119SericX **** Add uucp-bang mailer that strips off any domain name from 6865119Seric the envelope recipient address first; this is for use in 6965119Seric mailer table entries. 7065119Seric 7165188SericX **** "quote" map (inverse of dequote). Lets you turn node::user 7265188Seric into "node::user"@DECNET.gateway 7365188Seric 7465219SericX **** Named rulesets. 7565219Seric 7666013Seric? **** Should $( [1.2.3.4] $) convert the address to a name? 7766013Seric 7866013SericX **** Let I option include retry count etc. 7966013Seric drl@vuse.vanderbilt.edu (David R. Linn) 8066013Seric 8165869SericX *** Extend I option to allow setting of retry and timeout values. 8265869Seric drl@vuse.vanderbilt.edu (David R. Linn). 8365869Seric 8465753SericX *** Total connection cache lifespan timeout -- a way to give a 8565753Seric timeout on connections regardless of whether they are active 8665753Seric or not. For single threaded servers such as Microsoft SMTP 8765753Seric gateway. Douglas Anderson <dlander@afterlife.ncsc.mil>. 8865753Seric 8965188SericX *** Mailer flag that does a "ping" equivalent -- if it fails, wait 9065188Seric 30 seconds and try again (for dialup PPP connections). Could 9165188Seric just try the connection and then immediately retry on some 9265188Seric kinds of failures. 9365188Seric 9465119SericX *** Create a macro that has message size. 9565119Seric Peter Wemm <peter@DIALix.oz.au> 9665119Seric 9764718SericE *** Dynamically allocate MAXNAME buffers for headers. 9864718Seric 9965119SericE *** Dynamically allocate "line" buffer in readaliases(). 10065119Seric 10164705SericX *** Add ability to disable Return-Receipt-To: on a privacy flag. [8.8] 10264652Seric 10364718SericX *** Add -P to set precedence (e.g., -Pbulk). [8.8] (BCX) 10464652Seric 10564718SericX *** Runtime option to enable/disable IDENT protocol. 10664718Seric 10764718SericE *** Don't send ErrMsgFile to postmaster bounces. (Josh Smith, 10864718Seric josh@osiris.ac.hmc.edu). 10964718Seric 11064718SericX *** Add "user" map to look up a user name via getpwnam -- so that 11164718Seric non-local names can be forwarded to another site. [8.8] 11264718Seric 11364799SericE *** Have daemons that start up check the alias database for 11464799Seric correctness and auto-rebuild if necessary. This is to handle 11564799Seric the case of a system crash during an alias database rebuild. 11664799Seric 11764799SericE *** Eliminate E qf line and e_errorqueue; use e_errorsto a la 11864799Seric e_receiptto. This simplifies and gives symmetry. (Eric 11964799Seric Wassenaar) 12064799Seric 12165119SericB *** Fix syslog buffer overflow problems. 12265119Seric 12365165SericX *** DECNET_RELAY support in configs. 12465165Seric 12565753SericX *** -wN command line flag to set the width of mailq output. 12665753Seric (Allan Johannesen) 12765753Seric 128*66328SericE *** Move mailertable lookup after UUCP-specific class checks? 129*66328Seric (Kimmo Suominen <kim@tac.nyc.ny.us>) 130*66328Seric 131*66328SericE *** Users in more than one list with different owners get duplicate 132*66328Seric deliveries -- maybe just assign them arbitrarily to one 133*66328Seric envelope or the other? 134*66328Seric 135*66328SericX ** Make MAXBADCOMMANDS run time configurable. 136*66328Seric 137*66328SericE ** Allow mailertable entries of the form ``error:message''. 138*66328Seric 139*66328SericX ** Have .forward files re-queue if the home directory isn't 140*66328Seric accessible? On some option... 141*66328Seric (Q.G.Campbell@newcastle.ac.uk) 142*66328Seric 143*66328SericX ** Have local delivery queue if NIS is down? On some option... 144*66328Seric (Q.G.Campbell@newcastle.ac.uk) 145*66328Seric 146*66328SericE ** Have nullclient configuration resolve local names to the local 147*66328Seric mailer and then redirect them in ruleset 5; this allows you to 148*66328Seric redirect root differently depending on the client. It's not 149*66328Seric clear this is really a good idea though. 150*66328Seric 15166013SericE ** Move CurHostAddr into mci struct, and make CurMCI variable 15266013Seric point to this, so that logging will give the correct address 15366013Seric instead of (0) for cached connections. Motonori Nakamura. 15466013Seric 15565907SericX ** Allow use of a generalized network service for aliasing? 15665907Seric How would the protocol be defined? 15765907Seric James Gritton <gritton@byu.edu>. 15865907Seric 15965555SericE ** Make "local configuration error" a temporary failure? 16065555Seric (add EX_CONFIG to the markfailure list) 16165555Seric 16265353SericX ** (sigh) BSMTP. 16365353Seric 16465226SericX ** "E" configuration line that sets environment variables. 16565226Seric 16665219SericE ** Change listen() high-load backoff to accept and issue a 4xx 16765219Seric message so that it responds more quickly. 16865219Seric 16965188SericE ** Change "/usr/tmp/dead.letter" to be based on _PATH_VARTMP. 17065188Seric 17165119SericB ** Commas in NAME envariable cause problems (Peter Wan 17265119Seric <peter@cc.gatech.edu>). Merge with suggestions to use 17365119Seric MIME-format for 8-bit characters? 17465119Seric 17565119SericE ** Save address information that comes back as the "additional 17665119Seric records" part of an MX lookup, to avoid additional name server 17765119Seric attempts. If there is an MX record without an additional A 17865119Seric record, delete it (this avoids a problem with misconfigured 17965119Seric DNS situations). 18065119Seric 18165119SericX ** Allow a way to extend the $Z macro with local configuration 18265119Seric information. 18365119Seric 18464755SericX ** Allow $x in -bt mode to expand macro "x". (BCX) [8.8] 18564755Seric 18664755SericX ** Allow /address in -bt mode to expand address through ruleset 0, 18764755Seric aliases, etc. and display results. [8.8] 18864755Seric 18964755SericX ** "R mailer address" in -bt mode does remotename on address. 19064755Seric 19164755SericE ** Adjust "infinite loop in rule" code to handle entire ruleset 19264755Seric (Code from Michael Corrigan). 19364755Seric 19464718SericE ** Allow :include: from command line (not SMTP) to assist in 19564718Seric "personal list" management -- i.e., creating lists that 19664718Seric cannot be EXPNed. 19764718Seric 19864718SericX ** Database (keyed lookup) auto-rebuild. 19964718Seric 20064705SericX ** Find a good test suite and include in the distribution. 20164652Seric 20264718SericS ** You can use symbolic links to point into protected directories. 20364718Seric (AEJ) 20464652Seric 20564705SericX ** Extend OI to allow separate settings for canonification, MX, and A 20664718Seric lookups. [8.8?] 20764652Seric 20864718SericX ** Add $!x class to match any number of words not in class x. (KRE) 20964683Seric 21064705SericX ** LOCAL_RULE_5 (Spencer Sun, spencer@phoenix.Princeton.EDU) 21164703Seric 21264705SericX ** Add "bestmx" map -- returns "best MX host" for this address. 21364705Seric Allows you to do automatic detection of when you are the best 21464705Seric MX for a given address. [8.7?] 21564703Seric 21665353SericX ** Some way to diddle resolver flags on a per-lookup basis, such 21765353Seric as a flag to the map declaration. (Rick McCarty) 21865353Seric - Is this really a good idea? DNSRCH can be turned off by 21965353Seric putting a dot at the end. AAONLY? 22065353Seric 22164718SericX ** Extend makemap to "gather" values -- i.e., merge entries that 22264718Seric have the same keys. [8.8] (BCX) 22364703Seric 22464718SericE ** Allow error messages on individual addresses in the qf file. 22564718Seric (BCX) 22664718Seric 22764718SericX ** Multi-character option names. [9.1] 22864718Seric 22964718SericX ** User database extensions for mailing lists: 23064718Seric list:precedence -- Precedence: value for new message 23164718Seric list:envelopefrom -- envelope "from" value for new message 23264718Seric others? [8.8] 23364718Seric 23465353SericX ** Command line switch to set precedence (for mailing list 23565353Seric generation). (BCX) 23665353Seric 23764755SericB ** Restore `T' line to eliminate X-Authentication-Warning: at 23864755Seric inappropriate times. (Christophe Wolfhugel) 23964755Seric - T could become a shorthand for Ct -- i.e., create a new 24064755Seric predefined class. 24164755Seric - Eliminate "<user> set sender to <address>" message entirely? 24264755Seric (this is the workaround) 24364755Seric 24465119SericB ** Return-Path: header should have <> added if not already there. 24565119Seric 24665119SericX ** Add heuristic to determine if other end is a sendmail; use 24765119Seric that to decide whether or not to honor F=I mailer flag. 24865119Seric [der Mouse <mouse@collatz.mcrcim.mcgill.edu>] 24965119Seric 25065119SericX ** Automatically drop into MIME mode if you have a full name 25165119Seric with 8-bit characters. See envelope.c 8.19.1.1 and util.c 25265119Seric 8.17.1.1. From Anders Ellefsrud <anders@ifi.uio.no>. 25365119Seric 25465119SericX ** -b? flag to read a header and show you what it will look like 25565119Seric after all rewriting for an indicated address. 25665119Seric 25765188SericE ** Log $u in logsender() (for=<someaddress>). 25865188Seric 25965753SericB ** Include SOCKADDR in MCI struct for logging (currently gives 26065753Seric a sockaddr of zero when printing from the cache). 26165753Seric 262*66328SericX ** Allow option to set the characters that are autoquoted in 263*66328Seric addresses? 264*66328Seric 26565907SericX * Map that does MB/MR lookups. Rick McCarty <mccarty@io.com>. 26665907Seric 26765119SericX * Allow $> anywhere in RHS. John Boeske <jboeske@ualberta.ca>. 26865119Seric 26964755SericX * -V flag to print state of all (?) compilation flags. 27064755Seric 27164718SericX * Handle Expires: header field (if still in queue). 27264718Seric 27364705SericX * WIN/3B support (non-atomic rename, no h_addr_list, others?) 27464705Seric (Bruce Lilly <blilly!bruce@uu.psi.com>) 27564703Seric 27664705SericX * Sun YBTS daemon uses -ba. [Martin Kiff <MGK@newton.npl.co.uk>] 27764705Seric 27864705SericB * EXPN adds @domain to all mailers, including prog. Is this right? 27964705Seric [Bob Henry] 28064705Seric 28164705SericB * EXPN adds @localhost instead of @$M. [Pel Emanuelsson] 28264705Seric 28364705SericE * Change body put code to time out around individual puts. This will 28464705Seric make the timeout algorithm more responsive and more resilient. 28564705Seric Unfortunately, it's also a pain in the butt. 28664705Seric 28764705SericX * Some way to relay unfound local users to another site. 28864705Seric 28964705SericX * Disable all default RW sets except mailer-specific? 290