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