diff options
Diffstat (limited to 'usr.sbin/sendmail/src/TODO')
-rw-r--r-- | usr.sbin/sendmail/src/TODO | 287 |
1 files changed, 287 insertions, 0 deletions
diff --git a/usr.sbin/sendmail/src/TODO b/usr.sbin/sendmail/src/TODO new file mode 100644 index 0000000..80d35d0 --- /dev/null +++ b/usr.sbin/sendmail/src/TODO @@ -0,0 +1,287 @@ +(Version 8.22 of 3/12/94) + +Key: + X -- extension (user visible change) + B -- bug fix + S -- security fix + E -- enhancement to existing algorithm + + +X **** 8 -> 7 bit MIME conversion. + +E **** Change NoReturn to be an envelope flag. [8.7] + +X **** Add M_NOLOOPBACKCHK (k) mailer flag to turn off check of name in + HELO command. [8.8] + +X **** Merge Sun changes. [8.7] + +X **** Macro giving size of the message in bytes. + +X **** Create a "service switch" abstraction that will interface with + Sun NSS, Ultrix /etc/svc.conf, etc. This will allow you to + turn off DNS entirely, a la ``OIoff''. [8.7] + +X **** Should have new mailer flags to override LocalMailer stuff: + - M_ALIASABLE (A) -- can use as the LHS of an alias. + - M_HASPWENT (w) -- should have a /etc/passwd entry. If not found + there, implies user unknown. Also implies .forward and UDB + searching, search for |, /, and :include:, etc.). + - Actually, UDB searching and |, /, and :include: mapping should + probably be on another flag. (Cannot be 'l' for back compat + reasons.) + - Need for $@host part of triple and Return-Receipt-To: processing + should also be split apart. + [8.8] + +X **** Mailer flag to enable/disable surrounding route-addrs with + angle brackets in setsender(). UUCP cleanup scripts treat + these as file redirection. + +X **** Mailer flag to override MX lookups. + +E **** Fix parseaddr to return a dummy mailer with QBADADDR set for + all cases except null input; change calls to be more sceptical + about the return value, checking this bit instead of just + checking for == NULL. (Eric Wassenaar) [8.7] + +X **** Run time configurable locking -- e.g., compile in HASFLOCK and + HASLOCKF, and then choose at runtime between these. + +B **** Aliases with .REDIRECT fail during newaliases if the "n" flag + is given. Problem is, sometimes you want them to, sometimes + you don't. Perhaps two flavors of "error" mailer? + +B **** Calls to gethostbyname with a trailing dot fail if you are + not running DNS. + +E **** Move delivery forking from sendenvelope to sendall so that + the connection cache works between split envelopes, and to + avoid a flurry of processes should you be sending to lots of + sub-lists. + +X **** Add uucp-bang mailer that strips off any domain name from + the envelope recipient address first; this is for use in + mailer table entries. + +X **** "quote" map (inverse of dequote). Lets you turn node::user + into "node::user"@DECNET.gateway + +X **** Named rulesets. + +? **** Should $( [1.2.3.4] $) convert the address to a name? + +E **** Change collect() handling to use high level timeouts instead + of per-line timeouts -- the current mechanism is swamping + the machine with system calls. (Look at KJS code.) + +E *** Long term host status -- store host status on disk for sharing + between runs. + +X *** Extend I option to allow setting of retry and timeout values. + drl@vuse.vanderbilt.edu (David R. Linn). + +X *** Total connection cache lifespan timeout -- a way to give a + timeout on connections regardless of whether they are active + or not. For single threaded servers such as Microsoft SMTP + gateway. Douglas Anderson <dlander@afterlife.ncsc.mil>. + +X *** Mailer flag that does a "ping" equivalent -- if it fails, wait + 30 seconds and try again (for dialup PPP connections). Could + just try the connection and then immediately retry on some + kinds of failures. + +X *** Create a macro that has message size. + Peter Wemm <peter@DIALix.oz.au> + +E *** Dynamically allocate MAXNAME buffers for headers. + +E *** Dynamically allocate "line" buffer in readaliases(). + +X *** Add ability to disable Return-Receipt-To: on a privacy flag. [8.8] + +X *** Add -P to set precedence (e.g., -Pbulk). [8.8] (BCX) + +X *** Runtime option to enable/disable IDENT protocol. + +E *** Don't send ErrMsgFile to postmaster bounces. (Josh Smith, + josh@osiris.ac.hmc.edu). + +X *** Add "user" map to look up a user name via getpwnam -- so that + non-local names can be forwarded to another site. [8.8] + +E *** Have daemons that start up check the alias database for + correctness and auto-rebuild if necessary. This is to handle + the case of a system crash during an alias database rebuild. + +E *** Eliminate E qf line and e_errorqueue; use e_errorsto a la + e_receiptto. This simplifies and gives symmetry. (Eric + Wassenaar) + +X *** DECNET_RELAY support in configs. + +X *** -wN command line flag to set the width of mailq output. + (Allan Johannesen) + +E *** Move mailertable lookup after UUCP-specific class checks? + (Kimmo Suominen <kim@tac.nyc.ny.us>) + +E *** Users in more than one list with different owners get duplicate + deliveries -- maybe just assign them arbitrarily to one + envelope or the other? + +X ** Make MAXBADCOMMANDS run time configurable. + +E ** Allow mailertable entries of the form ``error:message''. + +X ** Have .forward files re-queue if the home directory isn't + accessible? On some option... + (Q.G.Campbell@newcastle.ac.uk) + +X ** Have local delivery queue if NIS is down? On some option... + (Q.G.Campbell@newcastle.ac.uk) + +E ** Have nullclient configuration resolve local names to the local + mailer and then redirect them in ruleset 5; this allows you to + redirect root differently depending on the client. It's not + clear this is really a good idea though. + +E ** Move CurHostAddr into mci struct, and make CurMCI variable + point to this, so that logging will give the correct address + instead of (0) for cached connections. Motonori Nakamura. + +X ** Allow use of a generalized network service for aliasing? + How would the protocol be defined? + James Gritton <gritton@byu.edu>. + +E ** Make "local configuration error" a temporary failure? + (add EX_CONFIG to the markfailure list) + +X ** (sigh) BSMTP. + +X ** "E" configuration line that sets environment variables. + +E ** Change listen() high-load backoff to accept and issue a 4xx + message so that it responds more quickly. + +E ** Change "/usr/tmp/dead.letter" to be based on _PATH_VARTMP. + +B ** Commas in NAME envariable cause problems (Peter Wan + <peter@cc.gatech.edu>). Merge with suggestions to use + MIME-format for 8-bit characters? + +E ** Save address information that comes back as the "additional + records" part of an MX lookup, to avoid additional name server + attempts. If there is an MX record without an additional A + record, delete it (this avoids a problem with misconfigured + DNS situations). + +X ** Allow a way to extend the $Z macro with local configuration + information. + +X ** Allow $x in -bt mode to expand macro "x". (BCX) [8.8] + +X ** Allow /address in -bt mode to expand address through ruleset 0, + aliases, etc. and display results. [8.8] + +X ** "R mailer address" in -bt mode does remotename on address. + +E ** Adjust "infinite loop in rule" code to handle entire ruleset + (Code from Michael Corrigan). + +E ** Allow :include: from command line (not SMTP) to assist in + "personal list" management -- i.e., creating lists that + cannot be EXPNed. + +X ** Database (keyed lookup) auto-rebuild. + +X ** Find a good test suite and include in the distribution. + +S ** You can use symbolic links to point into protected directories. + (AEJ) + +X ** Extend OI to allow separate settings for canonification, MX, and A + lookups. [8.8?] + +X ** Add $!x class to match any number of words not in class x. (KRE) + +X ** LOCAL_RULE_5 (Spencer Sun, spencer@phoenix.Princeton.EDU) + +X ** Add "bestmx" map -- returns "best MX host" for this address. + Allows you to do automatic detection of when you are the best + MX for a given address. [8.7?] + +X ** Some way to diddle resolver flags on a per-lookup basis, such + as a flag to the map declaration. (Rick McCarty) + - Is this really a good idea? DNSRCH can be turned off by + putting a dot at the end. AAONLY? + +X ** Extend makemap to "gather" values -- i.e., merge entries that + have the same keys. [8.8] (BCX) + +E ** Allow error messages on individual addresses in the qf file. + (BCX) + +X ** Multi-character option names. [9.1] + +X ** User database extensions for mailing lists: + list:precedence -- Precedence: value for new message + list:envelopefrom -- envelope "from" value for new message + others? [8.8] + +X ** Command line switch to set precedence (for mailing list + generation). (BCX) + +B ** Restore `T' line to eliminate X-Authentication-Warning: at + inappropriate times. (Christophe Wolfhugel) + - T could become a shorthand for Ct -- i.e., create a new + predefined class. + - Eliminate "<user> set sender to <address>" message entirely? + (this is the workaround) + +B ** Return-Path: header should have <> added if not already there. + +X ** Add heuristic to determine if other end is a sendmail; use + that to decide whether or not to honor F=I mailer flag. + [der Mouse <mouse@collatz.mcrcim.mcgill.edu>] + +X ** Automatically drop into MIME mode if you have a full name + with 8-bit characters. See envelope.c 8.19.1.1 and util.c + 8.17.1.1. From Anders Ellefsrud <anders@ifi.uio.no>. + +X ** -b? flag to read a header and show you what it will look like + after all rewriting for an indicated address. + +E ** Log $u in logsender() (for=<someaddress>). + +B ** Include SOCKADDR in MCI struct for logging (currently gives + a sockaddr of zero when printing from the cache). + +X ** Allow option to set the characters that are autoquoted in + addresses? + +X * Map that does MB/MR lookups. Rick McCarty <mccarty@io.com>. + +X * Allow $> anywhere in RHS. John Boeske <jboeske@ualberta.ca>. + +X * -V flag to print state of all (?) compilation flags. + +X * Handle Expires: header field (if still in queue). + +X * WIN/3B support (non-atomic rename, no h_addr_list, others?) + (Bruce Lilly <blilly!bruce@uu.psi.com>) + +X * Sun YBTS daemon uses -ba. [Martin Kiff <MGK@newton.npl.co.uk>] + +B * EXPN adds @domain to all mailers, including prog. Is this right? + [Bob Henry] + +B * EXPN adds @localhost instead of @$M. [Pel Emanuelsson] + +E * Change body put code to time out around individual puts. This will + make the timeout algorithm more responsive and more resilient. + Unfortunately, it's also a pain in the butt. + +X * Some way to relay unfound local users to another site. + +X * Disable all default RW sets except mailer-specific? |