1(Version 8.23 of 06/17/94) 2 3Key: 4 X -- extension (user visible change) 5 B -- bug fix 6 S -- security fix 7 E -- enhancement to existing algorithm 8 9 10X **** 8 -> 7 bit MIME conversion. 11 12E **** Change NoReturn to be an envelope flag. [8.7] 13 14X **** Add M_NOLOOPBACKCHK (k) mailer flag to turn off check of name in 15 HELO command. [8.8] 16 17X **** Merge Sun changes. [8.7] 18 19X **** Macro giving size of the message in bytes. 20 21X **** Create a "service switch" abstraction that will interface with 22 Sun NSS, Ultrix /etc/svc.conf, etc. This will allow you to 23 turn off DNS entirely, a la ``OIoff''. [8.7] 24 25X **** Should have new mailer flags to override LocalMailer stuff: 26 - M_ALIASABLE (A) -- can use as the LHS of an alias. 27 - M_HASPWENT (w) -- should have a /etc/passwd entry. If not found 28 there, implies user unknown. Also implies .forward and UDB 29 searching, search for |, /, and :include:, etc.). 30 - Actually, UDB searching and |, /, and :include: mapping should 31 probably be on another flag. (Cannot be 'l' for back compat 32 reasons.) 33 - Need for $@host part of triple and Return-Receipt-To: processing 34 should also be split apart. 35 - M_RUNASRCPT (?) -- always setuid to the recipient before calling 36 the mailer. 37 [8.8] 38 39X **** Mailer flag to enable/disable surrounding route-addrs with 40 angle brackets in setsender(). UUCP cleanup scripts treat 41 these as file redirection. 42 43X **** Mailer flag to override MX lookups. 44 45E **** Fix parseaddr to return a dummy mailer with QBADADDR set for 46 all cases except null input; change calls to be more sceptical 47 about the return value, checking this bit instead of just 48 checking for == NULL. (Eric Wassenaar) [8.7] 49 50X **** Run time configurable locking -- e.g., compile in HASFLOCK and 51 HASLOCKF, and then choose at runtime between these. 52 53B **** Aliases with .REDIRECT fail during newaliases if the "n" flag 54 is given. Problem is, sometimes you want them to, sometimes 55 you don't. Perhaps two flavors of "error" mailer? 56 57B **** Calls to gethostbyname with a trailing dot fail if you are 58 not running DNS. 59 60E **** Move delivery forking from sendenvelope to sendall so that 61 the connection cache works between split envelopes, and to 62 avoid a flurry of processes should you be sending to lots of 63 sub-lists. 64 65X **** Add uucp-bang mailer that strips off any domain name from 66 the envelope recipient address first; this is for use in 67 mailer table entries. 68 69X **** "quote" map (inverse of dequote). Lets you turn node::user 70 into "node::user"@DECNET.gateway 71 72X **** Named rulesets. 73 74? **** Should $( [1.2.3.4] $) convert the address to a name? 75 76E **** Change collect() handling to use high level timeouts instead 77 of per-line timeouts -- the current mechanism is swamping 78 the machine with system calls. (Look at KJS code.) 79 80X **** Add smrsh to release. 81 82E **** Have returned warning messages (and errors?) include a 83 ``Precedence: automatic'' header to make them easier to filter. 84 85E *** Arrange to run queue jobs as the owner of that queue file. This 86 probably requires forcing a fork in order to be able to completely 87 restore the uid/gid portably without leaking out root privileges. 88 89E *** Long term host status -- store host status on disk for sharing 90 between runs. 91 92X *** Extend I option to allow setting of retry and timeout values. 93 drl@vuse.vanderbilt.edu (David R. Linn). 94 95X *** Total connection cache lifespan timeout -- a way to give a 96 timeout on connections regardless of whether they are active 97 or not. For single threaded servers such as Microsoft SMTP 98 gateway. Douglas Anderson <dlander@afterlife.ncsc.mil>. 99 100X *** Mailer flag that does a "ping" equivalent -- if it fails, wait 101 30 seconds and try again (for dialup PPP connections). Could 102 just try the connection and then immediately retry on some 103 kinds of failures. 104 105X *** Create a macro that has message size. 106 Peter Wemm <peter@DIALix.oz.au> 107 108E *** Dynamically allocate MAXNAME buffers for headers. 109 110E *** Dynamically allocate "line" buffer in readaliases(). 111 112X *** Add ability to disable Return-Receipt-To: on a privacy flag. [8.8] 113 114X *** Add -P to set precedence (e.g., -Pbulk). [8.8] (BCX) 115 116X *** Runtime option to enable/disable IDENT protocol. 117 118E *** Don't send ErrMsgFile to postmaster bounces. (Josh Smith, 119 josh@osiris.ac.hmc.edu). 120 121X *** Add "user" map to look up a user name via getpwnam -- so that 122 non-local names can be forwarded to another site. [8.8] 123 124E *** Have daemons that start up check the alias database for 125 correctness and auto-rebuild if necessary. This is to handle 126 the case of a system crash during an alias database rebuild. 127 128E *** Eliminate E qf line and e_errorqueue; use e_errorsto a la 129 e_receiptto. This simplifies and gives symmetry. (Eric 130 Wassenaar) 131 132X *** DECNET_RELAY support in configs. 133 134X *** -wN command line flag to set the width of mailq output. 135 (Allan Johannesen) 136 137E *** Move mailertable lookup after UUCP-specific class checks? 138 (Kimmo Suominen <kim@tac.nyc.ny.us>) 139 140E *** Users in more than one list with different owners get duplicate 141 deliveries -- maybe just assign them arbitrarily to one 142 envelope or the other? 143 144X ** Make MAXBADCOMMANDS run time configurable. 145 146E ** Allow mailertable entries of the form ``error:message''. 147 148X ** Have .forward files re-queue if the home directory isn't 149 accessible? On some option... 150 (Q.G.Campbell@newcastle.ac.uk) 151 152X ** Have local delivery queue if NIS is down? On some option... 153 (Q.G.Campbell@newcastle.ac.uk) 154 155E ** Have nullclient configuration resolve local names to the local 156 mailer and then redirect them in ruleset 5; this allows you to 157 redirect root differently depending on the client. It's not 158 clear this is really a good idea though. 159 160E ** Move CurHostAddr into mci struct, and make CurMCI variable 161 point to this, so that logging will give the correct address 162 instead of (0) for cached connections. Motonori Nakamura. 163 164X ** Allow use of a generalized network service for aliasing? 165 How would the protocol be defined? 166 James Gritton <gritton@byu.edu>. 167 168E ** Make "local configuration error" a temporary failure? 169 (add EX_CONFIG to the markfailure list) 170 171X ** (sigh) BSMTP. 172 173X ** "E" configuration line that sets environment variables. 174 175E ** Change listen() high-load backoff to accept and issue a 4xx 176 message so that it responds more quickly. 177 178E ** Change "/usr/tmp/dead.letter" to be based on _PATH_VARTMP. 179 180B ** Commas in NAME envariable cause problems (Peter Wan 181 <peter@cc.gatech.edu>). Merge with suggestions to use 182 MIME-format for 8-bit characters? 183 184E ** Save address information that comes back as the "additional 185 records" part of an MX lookup, to avoid additional name server 186 attempts. If there is an MX record without an additional A 187 record, delete it (this avoids a problem with misconfigured 188 DNS situations). 189 190X ** Allow a way to extend the $Z macro with local configuration 191 information. 192 193X ** Allow $x in -bt mode to expand macro "x". (BCX) [8.8] 194 195X ** Allow /address in -bt mode to expand address through ruleset 0, 196 aliases, etc. and display results. [8.8] 197 198X ** "R mailer address" in -bt mode does remotename on address. 199 200E ** Adjust "infinite loop in rule" code to handle entire ruleset 201 (Code from Michael Corrigan). 202 203E ** Allow :include: from command line (not SMTP) to assist in 204 "personal list" management -- i.e., creating lists that 205 cannot be EXPNed. 206 207X ** Database (keyed lookup) auto-rebuild. 208 209X ** Find a good test suite and include in the distribution. 210 211S ** You can use symbolic links to point into protected directories. 212 (AEJ) 213 214X ** Extend OI to allow separate settings for canonification, MX, and A 215 lookups. [8.8?] 216 217X ** Add $!x class to match any number of words not in class x. (KRE) 218 219X ** LOCAL_RULE_5 (Spencer Sun, spencer@phoenix.Princeton.EDU) 220 221X ** Add "bestmx" map -- returns "best MX host" for this address. 222 Allows you to do automatic detection of when you are the best 223 MX for a given address. [8.7?] 224 225X ** Some way to diddle resolver flags on a per-lookup basis, such 226 as a flag to the map declaration. (Rick McCarty) 227 - Is this really a good idea? DNSRCH can be turned off by 228 putting a dot at the end. AAONLY? 229 230X ** Extend makemap to "gather" values -- i.e., merge entries that 231 have the same keys. [8.8] (BCX) 232 233E ** Allow error messages on individual addresses in the qf file. 234 (BCX) 235 236X ** Multi-character option names. [9.1] 237 238X ** User database extensions for mailing lists: 239 list:precedence -- Precedence: value for new message 240 list:envelopefrom -- envelope "from" value for new message 241 others? [8.8] 242 243X ** Command line switch to set precedence (for mailing list 244 generation). (BCX) 245 246B ** Restore `T' line to eliminate X-Authentication-Warning: at 247 inappropriate times. (Christophe Wolfhugel) 248 - T could become a shorthand for Ct -- i.e., create a new 249 predefined class. 250 - Eliminate "<user> set sender to <address>" message entirely? 251 (this is the workaround) 252 253B ** Return-Path: header should have <> added if not already there. 254 255X ** Add heuristic to determine if other end is a sendmail; use 256 that to decide whether or not to honor F=I mailer flag. 257 [der Mouse <mouse@collatz.mcrcim.mcgill.edu>] 258 259X ** Automatically drop into MIME mode if you have a full name 260 with 8-bit characters. See envelope.c 8.19.1.1 and util.c 261 8.17.1.1. From Anders Ellefsrud <anders@ifi.uio.no>. 262 263X ** -b? flag to read a header and show you what it will look like 264 after all rewriting for an indicated address. 265 266E ** Log $u in logsender() (for=<someaddress>). 267 268B ** Include SOCKADDR in MCI struct for logging (currently gives 269 a sockaddr of zero when printing from the cache). 270 271X ** Allow option to set the characters that are autoquoted in 272 addresses? 273 274X * Map that does MB/MR lookups. Rick McCarty <mccarty@io.com>. 275 276X * Allow $> anywhere in RHS. John Boeske <jboeske@ualberta.ca>. 277 278X * -V flag to print state of all (?) compilation flags. 279 280X * Handle Expires: header field (if still in queue). 281 282X * WIN/3B support (non-atomic rename, no h_addr_list, others?) 283 (Bruce Lilly <blilly!bruce@uu.psi.com>) 284 285X * Sun YBTS daemon uses -ba. [Martin Kiff <MGK@newton.npl.co.uk>] 286 287B * EXPN adds @domain to all mailers, including prog. Is this right? 288 [Bob Henry] 289 290B * EXPN adds @localhost instead of @$M. [Pel Emanuelsson] 291 292E * Change body put code to time out around individual puts. This will 293 make the timeout algorithm more responsive and more resilient. 294 Unfortunately, it's also a pain in the butt. 295 296X * Some way to relay unfound local users to another site. 297 298X * Disable all default RW sets except mailer-specific? 299