date and time created 94/03/13 09:05:12 by eric
[unix-history] / usr / src / usr.sbin / sendmail / RELEASE_NOTES
CommitLineData
c6447398
EA
18.1C/8.1B 93/06/27
2 Serious security bug fix: it was possible to read any file on
3 the system, regardless of ownership and permissions.
4 If a subroutine returns a fully qualified address, return it
5 immediately instead of feeding it back into rewriting.
6 This fixes a problem with mailertable lookups.
7 CONFIG: fix some M4 frotz (concat => CONCAT)
8
98.1B/8.1A 93/06/12
10 Serious bug fix: pattern matching backup algorithm stepped by
11 two tokens in classes instead of one. Found by Claus
12 Assmann at University of Kiel, Germany.
13
148.1A/8.1A 93/06/08
15 Another mailertable fix....
16
178.1/8.1 93/06/07
18 4.4BSD freeze. No semantic changes.
19
206.65/6.34 93/06/06
21 Fix some lintish problems.
22 Fix some cases where server SMTP behaved poorly when handed bogus
23 input, pointed out by Eric Wassenaar.
24 CONFIG: fix some more (sigh) mailertable bugs -- thanks to
25 Motonori Nakamura of Kyoto University (again).
26
276.64/6.33 93/06/05
28 Don't send 050 (-v) information after the 250 response to a QUIT
29 command in srvrsmtp -- clients usually close the connection
30 at this point, and it causes bogus error messages.
31 Don't send messages that have errors on input (such as unbalanced
32 parentheses) during SMTP transactions, since a return
33 message has (probably) already been sent.
34 Give better diagnostics on timeouts during network reads, including
35 information similar to the SMTP phase.
36 Fix bug that caused SMTP messages to deliver synchronously; this
37 happened after the DATA 250, and hence caused reading the
38 next command to be delayed.
39 Ignore Errors-To: header unless 'l' (lower case el) header is
40 specified. The Errors-To: header violates RFC 1123.
41 Errors-To: was only needed to take the place of the
42 envelope sender in the days when most Unix mailers
43 didn't understand about the two kinds of senders.
44 Don't send warning messages in response to automatically generated
45 messages (that is, those From:<>).
46 CONFIG: fix some rather stupid typos in the mailertable code
47 pointed out by Motonori Nakamura of Kyoto University.
48 CONFIG: add confUSE_ERRORS_TO configuration option.
49 CONFIG: if ALWAYS_ADD_DOMAIN is selected, try to use $M
50 (masquerade name) instead of $j.
51 CONFIG: don't add dots to relay names (added in 6.29); it breaks
52 several things, and can be simulated by dot terminating
53 the names of relays. For example, use:
54 DBbit.net.relay.
55 (note the trailing dot).
56
576.63/6.32 93/06/01
58 Fix prototypes to eliminate chars in argument lists -- some
59 compilers are pissy about this.
60 Log protocol ($r) and body type if set so we can determine if
61 the adaptive algorithms are working.
62 Pessimize on locking of database files (particularly for NEWDB
63 databases) during opens. There were problems with
64 processes opening the file while it was rebuilt; since
65 NEWDB caches heavily, the reader opened an empty file,
66 which is an error. If your system has the ability to
67 lock atomically on open, this works properly; otherwise,
68 there are race conditions.
69 Check mod time on .pag file instead of .dir in NDBM aliases
70 because the .dir file doesn't get updated for small
71 alias files. From John Gardiner Myers of CMU.
72 More Solaris portability -- it now compiles on Solaris, but
73 hangs up in gethostbyname().
74 Move setting of RES_DEBUG flag before first myhostname() call
75 so we can see name server traffic on that call.
76 Fsync() queue files.
77 Fix a problem that causes -bi to try to rebuild maps other than
78 the alias file(s).
79 Fix a problem that caused udb to reject entries from any but
80 the first database listed.
81 Rearrange doc subdirectory for 4.4BSD release tape.
82 CONFIG: put $r into the Received line. This was an oversight.
83 CONFIG: fix typo (call to ruleset 99 should have been rulset 90).
84 CONFIG: move "auxiliary" subroutines to be in ruleset 90-99
85 range -- in the long run, single digit rulesets may
86 become reserved for builtin use by sendmail.
87 CONFIG: fix major problem that causes host aliases (that is,
88 anything in $=w != $j) to not be recognized. This has
89 been around since 6.30.
90
916.62/6.31 93/05/28
92 BETA RELEASE
93 Fix recursive syserr (if there is an error printing a syserr
94 message). This makes the code much less eager to consider
95 a write error as serious. This also includes some
96 heuristics to be clever about closed connections.
97 Lock NEWDB files during gets. This requires version 1.5 or later
98 of the db library. If you have an older version, you
99 can use -DOLD_NEWDB. This will go away in a few weeks.
100 Fix problem causing aliases that use host maps to get overwritten.
101 Do appropriate byte swapping on port numbers in ident protocol
102 code. Fix from Allan Johannesen of WPI.
103 Defer opening of map files to the same time as alias files so that
104 the daemon will tend to pick up new versions more promptly.
105 Prototype a bunch more functions.
106 Some Solaris 2.1 changes (still doesn't link though).
107 Try to simplify Makefiles by including more subordinate #defines
108 in conf.h (based on OS type).
109 CONFIG: check for domains if FEATURE(mailertable) is defined.
110 For example, if the host name is "knecht.cs.berkeley.edu"
111 it will search the following mailertable keys:
112 knecht.cs.berkeley.edu
113 .cs.berkeley.edu
114 .berkeley.edu
115 .edu
116 This could be used to replace the special relays for bitnet
117 and similar nets.
118
1196.61/6.30 93/05/24
120 Fix problem that prevented appending dots on canonified host
121 names. This breaks tons of config files -- very
122 important fix.
123 Fix improper pointer dereference in response to HELO command.
124 Fix core dump if debugging set in map_rewrite.
125 CONFIG: add FEATURE(always_add_domain) to always attach the
126 local domain (only impacts local mail).
127 CONFIG: try to avoid turning names into $j -- although
128 technically a host can only have one "canonical name",
129 it seems to be common practice to have several.
130
1316.60/6.29 93/05/22
132 Major change: merge alias databases with maps. This expands and
133 changes the map class interface but fixes a bunch of bugs.
134 The important user-visible change is that the file name
135 in a K line now does not include the ".db" extension; this
136 is added automatically. Also, the -d (NIS domain) flag is
137 missing from the K config line; use @domain instead.
138 When compiling, the *_MAP names are gone -- just compile
139 in NDBM, NEWDB, and/or NIS support.
140 Announce mailer/host/user triple on -bv flag -- from Brian
141 Bullen of Stirling University.
142 Don't send more than one line in response to HELO -- it confuses
143 Pony Express, which then behaves very badly. However,
144 this change does send two line 220 greetings, with the
145 second line reading "ESMTP spoken here". The usersmtp
146 module recognizes this and goes into ESMTP mode regardless
147 of the setting of the "a" mailer flag. Thus, "a" means
148 "always try EHLO".
149 AIX portability changes (thanks to Christophe Wolfhugel of
150 Herve Schauer Consultants (Paris) for providing me with
151 an INSA account for this purpose). Lightly tested. Use
152 -D_AIX3. This probably breaks compatibility with some
153 older systems (e.g., 4.2bsd) but still works on SunOS
154 4.1.2, Ultrix 4.2A, HP-UX 8.07, OSF/1 T1.3, and AIX 3.2.3.
155 Fix a problem causing an error message loop if the output channel
156 is hosed.
157 Add the Makefiles that I use for various environments -- some are
158 Berkeley make versions and some are old make versions.
159 My makefile for the NeXT box has gotten lost, alas!
160 PRALIASES: support for printing NEWDB databases. From
161 Michael J. Corrigan of U.C. San Diego.
162 CONFIG: don't pass pseudo-domains to $[ ... $] (if you have
163 a wildcard MX it can have wierd results). From
164 Christophe Wolfhugel.
165 CONFIG: dot terminate relay hostnames in S0. From Christophe
166 Wolfhugel.
167
1686.59/6.28 93/05/13
169 Log version with SMTP daemon startup message.
170 Adjust setproctitle to work on NetBSD and BSD/386.
171 Fix null pointer reference in MX fallback code.
172 A bunch of minor fixes from Eric Wassenaar:
173 If deliver cannot execv the mailer, return EX_OSERR
174 instead of EX_TEMPFAIL (to give better
175 error messages).
176 Consistently malloc e_message.
177 Catch degenerate case of calling returntosender()
178 with an empty returnq.
179 MIME reformatting.
180
1816.58/6.28 93/05/13
182 Fix bug that can cause incorrect verbose display of user smtp
183 messages.
184 Disable SMTP VERB command if PRIV_NOEXPN is set (since this
185 could reveal the same information.
186 Allow failure when reading SMTP greeting message to go on to
187 next MX host.
188 Add "MIME-Version: 1.0" header if using MIME (this was NOT
189 included in RFC 1344, but Bill King of Allan-Bradley
190 Company forwarded me email from Nathaniel Borenstein
191 claiming that it was an inadvertent omission).
192 Don't use Content-Type: X-message-header. According to John
193 Myers of CMU, many MIME readers will completely ignore
194 the data if they don't recognize it. Instead, just
195 add a blank line to make it a legal (empty) message.
196 Fix problem causing dots to keep getting appended to cached
197 hostnames. This can cause buffer overrun conditions.
198 The problem was found by Erik Forsberg of Retix,
199 although I used a different bug fix than he provided.
200 Fix parsing of split header/envelope rewriting specs -- from
201 Eric Forsberg.
202 Fix from Eric Wassenaar to correct To: lists in error messages.
203
2046.57/6.28 93/05/11
205 Fix minor glitch causing extra ctladdrs to be output to queue
206 file. Just an annoyance.
207 Cache results of name server canonification lookups to avoid
208 backed up queue runs.
209 Major rewrite of alias.c: considerable cleanup, plus sample
210 (untested) support for NIS aliases. The "A" option
211 can now be a comma separated list (or be repeated) --
212 that is, you can have multiple alias databases. Each
213 database can have the syntax ``class:file''; if no class
214 is specified, the "implicit" class is assumed. Implicit
215 searches through a list of compiled in types -- hash,
216 dbm, nis, and stab. Alias files are searched in the
217 order they are listed. For example:
218 OAhash:/etc/aliases.local,/etc/aliases
219 OAnis:mail.aliases@my.nis.domain
220 first searches the hash database /etc/aliases.local,
221 then the regular /etc/aliases database, then the NIS
222 map "mail.aliases" in the NIS domain "my.nis.domain".
223 If in Verbose mode (probably from VERB command) run SMTP job
224 in foreground and don't do RCPT optimizations.
225 Add udb :mailsender as equivalent to owner- for regular aliases.
226 Delete option 8; add option 7 that means the opposite. That is,
227 default to 8-bit mode; a special option is needed to
228 force sendmail into 7 bit mode.
229 Send error messages in encapsulated MIME format.
230 New compile flag "NIS" that turns on NIS alias and NIS map
231 support.
232 Add "j" option to send error messages in MIME (RFC 1341)
233 encapsulated message format per RFC 1344. The
234 syntax is pretty ugly if you don't have MIME-aware
235 user agents.
236 Clean up message handling (for display in mailq output).
237 New setproctitle implementation for 4.4bsd.
238 Create files (such as ~/dead.letter) using mode FileMode (the
239 F option value) instead of 0666.
240 Fix bug causing output of EXPN command to not be fully qualified.
241 This may cause some problems with UUCP addresses that
242 will require some config file assistance -- specifically,
243 the $: part has to include the host name for this output
244 to make sense.
245 Fix a problem that sometimes diagnosed errors and still sent the
246 message if the header syntax was bad.
247 Fix a bug that caused an error message to be emailed when sendmail
248 was operating in -bv mode.
249 Add "ListenQueueSize" keyword to daemon options option (OO) to
250 set the queue size parameter passed to listen(). You
251 will normally have to tweak your kernel to up this.
252 Strip spaces off of beginning of message-id before logging (in
253 case it was folded across lines).
254 Tweak compile flags in daemon.c -- there were some cases where
255 it wouldn't work without NETINET.
256 Change *file* mailer to output all the usual default headers
257 (From, Date, Message-Id). It gets used when sending
258 back error messages.
259 CONFIG: explicitly catch and diagnose list:; syntax in ruleset
260 zero -- this is not a valid recipient syntax according
261 to RFC 821.
262 CONFIG: add confMIME_FORMAT_ERRORS to send error messages in
263 MIME format. Defaults to on.
264 CONFIG: add SMTP_MAILER_FLAGS and UUCP_MAILER_FLAGS to augment
265 the flags for those mailers.
266
2676.56/6.27 93/05/01
268 Fix problem that causes the fallback mail to postmaster
269 (case ESM_POSTMASTER in savemail()) to not look at
270 aliases (ugh).
271 Some more HPUX tweaking (compile flag hpux => __hpux so it
272 still works in ANSI mode).
273 Don't try to flock non-regular files when mailing to a file.
274 In particular, this was a problem if you tried to
275 send to /dev/null.
276 Fix a wierd bug that can cause senders to be queued as
277 recipients if the name server is down when the mail
278 is initially sent. This hack just ignores sender
279 deletion (essentially, it sets the MeToo flag) if there
280 is a TEMPFAIL during processing of the sender address.
281 Obscure.
282 Fix a dangling else problem -- from Brian Bullen from University
283 of Stirling, UK.
284 Add the "b" mailer flag to force a blank line on the end of
285 messages. Some brilliant versions of /bin/mail insist
286 on this but do not add it themselves.
287 Add the "g" mailer flag to prevent user SMTP from sending
288 "MAIL From:<>". This is only intended to be a
289 transitional gesture, and should not be used if at
290 all possible. It appears that Berkeley and IDA
291 config files have always handled this properly; the
292 UK config kit apparently does not.
293 Don't lowercase and then capitalize header field names -- leave
294 them with original capitalization. Fixes from Bill
295 King of Allen-Bradley Company.
296 Further cleanup and improved reporting of error messages,
297 particularly conditions that cause messages to be
298 requeued for future delivery.
299 Tweak syslog priorities in some cases.
300 CONFIG: clean up route-addr on UUCP addresses.
301
3026.55/6.25 93/04/27
303 HPUX 8.07 compatibility changes in getla() -- I had to make
304 these changes to get it to work at Berkeley, although
305 others seem to have been working before (???).
306 Various patches to XLA code.
307 Fix problem that causes setuid bit on files to be ignored from
308 SMTP or in queue runs. Problem noted by Jason Ornstein
309 of Under The Wire, Inc.
310 Fix problem that can cause CNAMEs to be ignored.
311 Generalize getmxrr to match local host in $=w instead of a
312 single name passed in.
313 Some cleanup from Eric Wassenaar:
314 Use FileMailer instead of ProgMailer in two places.
315 Eliminate duplicate 8th-bit stripping in commaize.
316 Fix a problem with mis-parsing of backslash escapes
317 under some circumstances.
318 NIS map fix (was always including trailing null character)
319 from Mike Glendinning of Ingres UK.
320 Add "a" mailer flag to try using ESMTP. It tries the EHLO
321 command and if that fails falls back to regular SMTP.
322 Also parses EHLO option keywords. If host supports
323 SIZE extension, this is added to the MAIL FROM:
324 command.
325 Extend "b" option to include a second value which is the
326 maximum message size this server is willing to accept.
327 For example, a value of "10/1000000" says that there
328 must be ten blocks free, and sendmail will reject
329 any message larger than one megabyte.
330 Some portability hooks for NeXT (this could be applicable
331 to Mach in general). You have to create an empty
332 file called "unistd.h" to get it to compile.
333 Adjust config values (MAXLINE, MAXATOM, and PSBUFSIZE) to
334 be more generous.
335 Add X400-Received: to the list of headers tagged with H_TRACE
336 in conf.c. From Bill King, Allen-Bradley Co.
337
3386.54/6.25 93/04/19
339 Fix problem that caused redefinition of SMTP and QUEUE compile
340 flags. Pointed out by Jon Forrest of the Sequoia 2000
341 project at Berkeley.
342 Properly handle \! hack -- it was treating host\!user as one
343 token (host!user) instead of three (host, !, user).
344 Fix from Eric Wassenaar of NIKHEF-H.
345 Fix compilation problem in getauthinfo() if IDENTPROTO is off.
346 Turn off DEFNAMES and DNSRCH when getting the hostsignature
347 (i.e., MX records) in level 1 configuration files; this
348 matches the old behaviour. From Motonori Nakamura of
349 Kyoto University.
350 Improve error message printing -- if sent through an alias,
351 error messages include the name of the alias in the
352 message. Unfortunately, in order to make this work
353 properly in queue runs, this changes the format of the
354 C line in the qf file. The relatively uselessness of
355 the previous information was pointed out to me by
356 Allan E Johannesen of WPI.
357 Add XLA compile flag to add hooks to Christophe Wolfhugel's
358 extended load average code. This is still in very early
359 form. For information regarding the guts of the xla
360 code, contact Christophe.Wolfhugel@grasp.insa-lyon.fr.
361 Additional hooks for detecting tempfails in rewriting rules
362 (that is, in map lookups).
363
3646.53/6.25 93/04/15
365 Properly diagnose ruleset zero returning null (instead of a mailer
366 triple). From Motonori Nakamura of Kyoto University.
367 More generalization of socket code for other protocols.
368 Shorten timeouts on reverse name lookups -- since they are done
369 during connection establishment, long timeouts here can
370 cause higher level timeouts. This mainly serves to accept
371 mail from hosts that do not have proper reverse (PTR) DNS
372 records set up.
373 Reset e_statmsg before each mailer invocation to avoid bogus
374 messages in the log.
375 Redefine $r, $s, and $_ in error envelopes so you don't get
376 incorrect cruft in the error message. Problem noted by
377 Motonori Nakamura of Kyoto University.
378 Fix a problem that can cause failure to return errors to Postmaster
379 in certain cases. From Motonori Nakamura.
380 Fix a problem that can cause some systems to give duplicate error
381 messages when a bad syntax address such as "<a" is presented
382 to an SMTP server. It doesn't seem to occur on all
383 machines. From Motonori Nakamura.
384 Default IDENTPROTO off for Ultrix and HPUX, which apparently have
385 the interesting "feature" that when they receive a "Host
386 unreachable" message they closes all open connections to
387 that host. However, some firewall gateways send this message
388 if you try to connect to an unauthorized port, such as the
389 IDENT port (113). Thus, no email can be received from such
390 hosts. There is some evidence that versions of Ultrix before
391 4.3 do not have this problem. Thanks to Tom Ivar Helbekkmo
392 for pointing out this behaviour to me and to Michael Corrigan
393 of U.C. San Diego for informing me about the HPUX problem.
394 Allow IPC mailers to return a colon-separated list of hosts in the
395 $@ clause; these are searched in order as though they were
396 MX records.
397 When sending an error report, print the list of addresses tagged
398 as bad. Requested by Allan E Johannesen of WPI.
399 Change map function calls to return a status code. This gets
400 passed back as the result of rewrite. Parseaddr marks
401 the address as a QUEUEUP address if the return code is
402 EX_TEMPFAIL. All this to queue properly if the name
403 server is down. This code is not well tested. This code
404 changes the interface to map lookup functions (a fifth
405 parameter, int *statp, is added). Feature requested by
406 Dan Oscarsson.
407 Don't delete quotes (in the dequote map) if there are spaces in
408 the string, since this would cause them to be replaced by
409 the SpaceSub character.
410 Accept BODY=8BITMIME on SMTP MAIL command. This isn't advertised
411 because the 8BIT to 7BIT translation doesn't exist yet.
412 This does add a "bodytype" field to both envelope and
413 queue file and a -B command line flag to pass the type in
414 during direct invocations.
415 Discard return error messages only on responses to responses to
416 responses, not on responses to responses. That is, the
417 algorithm is to try return to sender, then return to
418 postmaster, then discard. Previously it discarded
419 immediately if the return to sender pass failed.
420 CONFIG: back out change to hide unqualified hostnames behind %-hack.
421 This screws up local aliases and .forward files.
422 CONFIG: add FEATURE(nocanonify) to turn off calls to $[ ... $];
423 some sites only handle completely canonified names.
424 Requested by John Gardiner Myers of CMU.
425 CONFIG: some UUCP code was still included even if FEATURE(nouucp)
426 was specified.
427
4286.52/6.24 93/04/10
429 Clean up some minor glitches on error return messages pointed out
430 by Motonori Nakamura of Kyoto University.
431 Fix reply() to not reset SmtpReplyBuffer on fatal errors; this
432 was supposed to reset SmtpMsg Buffer. This makes the
433 client side code virtually useless. Reported by Allan
434 E Johannesen of WPI and Phil Brandenberger of Swarthmore.
435 Better debug messages if fuzzy is disabled, suggested by Allan
436 E Johannesen of WPI.
437 Offset SmtpReplyBuffer by four in usersmtp when checking for
438 loopback. From Eric Wassenaar.
439 Don't set $s until after runinchild in srvrsmtp -- otherwise
440 it gets cleared. From Eric Wassenaar.
441 Implement IDA-style $&x for deferred macro expansion.
442 More POSIX compatibility.
443 CONFIG: Hide unqualified hostnames behind %-hack using $s as the
444 actual sender. This is only done if $r is non-null, that
445 is, if this is not locally submitted mail.
446 CONFIG: Add FEATURE(bitdomain) allowing mapping of BITNET host
447 names to internet domains. A program contributed by
448 John Gardiner Myers of CMU to create the maps is included
449 in the contrib directory (in the "misc" tar file).
450 CONFIG: Add FEATURE(uucpdomain) for a similar mapping for UUCP
451 hosts. There is currently no tool to create this map.
452
4536.51/6.23 93/04/04
454 Add D= mailer flag to specify a path of possible working directories
455 in which to execute the mailer. This is intended for the
456 prog mailer; some shells can get upset if they don't have
457 access to the current directory.
458 Add RFC 1413 (IDENT) protocol support. This is only very loosely
459 tested. This adds a $_ macro to be the authenticated
460 info (in ``user@domain [address]'' form) and debug flag
461 9 to trace the protocol.
462 Check for loopbacks in usersmtp instead of srvrsmtp -- there is no
463 reason for a local agent to not be talking to the localhost
464 (although the inverse is not true).
465 Add a few hooks for automated map rebuilding. This is certainly
466 not done yet.
467 CONFIG: Have prog mailer specify a path of ``D=$z:/'' -- that is,
468 user's home directory then the root.
469 CONFIG: Log RFC 1413 identification in Received: line.
470
4716.50/6.22 93/04/01
472 Fixes to requeueing code to make it compute priority, nrcpts,
473 and the like properly.
474
4756.49/6.22 93/04/01
476 Diagnose incorrect privacy flags. Suggested by Bryan Costales
477 of ICSI.
478 Some ANSI C fixes.
479 Arrange to quote backslashes as well as other special characters
480 in the phrase part of a route-addr.
481 Some fixes to FallBackMX code suggested by Motonori Nakamura of
482 Kyoto University.
483 More vigorous zeroing of CurHostAddr to avoid logging of bogus
484 host addresses when you are actually just printing
485 information from the MCI structure; problem noted by
486 Michael Corrigan of U.C. San Diego.
487 Don't ignore rest of queue if any job is not runnable. This can
488 also cause an incorrect job to be lost. Fix from
489 Eric Wassenaar.
490 Always respond "quickly" to RCPT command; do alias expansion and
491 the like later. This also means that mail for lists that
492 have errors will be acccepted, and an error sent back
493 later. This is done by instantiating the queue file
494 and then immediately running and requeueing it.
495
4966.48/6.22 93/03/30
497 Fix incorrect diagnosis of infinite loop in ruleset. Problem noted
498 by several people.
499 Improve information printed when infinite loops are discovered.
500 Zero CurHostAddr to fix erroneous internet addresses in log when no
501 addresses can be bound. Pointed out by Motonori Nakamura
502 of Kyoto University.
503 "Probe" SMTP connections using RSET instead of NOOP "just in case".
504 Suggested by John Gardiner Myers of CMU.
505 Don't warn about -f if you are setting sender to yourself.
506
5076.47/6.22 93/03/29
508 Fix incompatible call to endmailer in smtpquit which causes core
509 dumps. Noted by Allan E Johannesen of WPI.
510 HPUX portability changes from Michael J. Corrigan of UC San Diego.
511 Require MAIL before RCPT command in srvrsmtp.c. This had been
512 intentional from the 821 draft days when the order wasn't
513 clear, but is silly now.
514 Fix bug in nis_magic routine that was initializing parameters
515 incorrectly. Fix from Takahiro Kanbe of Fuji Xerox
516 Information Systems Co., Ltd.
517 Change default for PrivacyFlags in conf.c to 0 -- since it always
518 "or"s in new values, there was no way to turn off the
519 AuthWarning stuff.
520 Add O option to set SMTP daemon options.
521 Add V option to set fallback MX host. This always sorts at lower
522 priority than anything it gets from the name server. It
523 should only be used for environments with very bad network
524 connectivity. Requested by several people.
525 Log sending info. It's not clear this is a good idea.
526 CONFIG: fix typo in mailertable code. Noted by Phil Brandenberger
527 of Swarthmore.
528 CONFIG: add confDAEMON_OPTIONS and confFALLBACK_MX to set options
529 O and V, respectively.
530
5316.46/6.21 93/03/26
532 Fix botch in server SMTP that broke transactions that did not
533 use HELO first (like MH). Fix from Michael Corrigan
534 of U.C. San Diego.
535 Fall back to other MX records if there is an error anywhere
536 in delivery (actually on MAIL or DATA -- RCPT is harder).
537 Suggested by John Gardiner Myers and Motonori Nakamura.
538 Revert to non-prototypes -- it turns out that our ANSI C
539 compiler is more forgiving than most others about
540 mixing prototyped extern declarations with non-prototyped
541 function definitions.
542 Fix a problem with multi-word class matching pointed out by
543 Neil Rickert. Given:
544 CX b a.b.c
545 R$+ $=X $+ $: $1 < $2 > $3
546 the input "user@a.b.c" failed instead of being properly
547 rewritten as "user@a.<b>.c".
548 Neil also convinced me that it was correct that $~ should match
549 only one token -- the problem is that it's always possible
550 to add another token, so $~ matches far too eagerly.
551
5526.45/6.21 93/03/25
553 Implement multi-word classes (properly!).
554
5556.44/6.21 93/03/25
556 Add X-Authentication-Warning: headers to clue users into possible
557 attempts to forge mail. This is on the authwarnings
558 privacy flag, but is the default. Suggested by Bryan
559 Costales of ICSI.
560 Pass default units for convtime in so they can be more reasonable.
561 Allow config files to always add a new Comments: header (i.e.,
562 they will be added even if an old one already exists).
563 Suggested by Bryan Costales of ICSI.
564 Allow config files to delete an existing Return-Path: header.
565 These should only be added at final delivery. Suggested
566 by Bryan Costales of ICSI.
567 Some debugging additions. Suggested by Bryan Costales of ICSI.
568 Clean up logging of Family 0 addresses. Noted by David Muir
569 Sharnoff and others.
570 Add a "dequote" map class. This allows config files to strip
571 quotes off of addresses. Note that this is not a builtin
572 map, just a class -- so you have to define the map
573 using the K line.
574 Fix a bug in the queueup() loop getting a locked tf where in
575 very odd cases it can fall off the bottom and core dump.
576 Of course, it was P{r Emanuelsson who found it....
577 Open a new transcript when splitting an envelope. Problem found
578 by Allan E Johannesen of WPI.
579 Improved error output in endmailer if the mailer core dumps.
580 CONFIG: Fix typo in UUCP mailer definition.
581 CONFIG: Default several of the new options on: eight bit input,
582 privacy flags set to "authwarnings", and message warning
583 set to 4h.
584 CONFIG: Use dequote map.
585
5866.43/6.20 93/03/23
587 Fix problem with assumption of an sa_len field in a generic
588 sockaddr -- it turns out that most vendors haven't
589 picked up this (very important) fix.
590 Change compilation flags for daemon code -- select one or both
591 of NETINET or NETISO, but don't ever set DAEMON manually.
592 CONFIG: add FEATURE(mailertable) to do IDA-style mailertables.
593
5946.42/6.19 93/03/19
595 Use Postmaster as default fallback return address, not root.
596 POSIX changes for file descriptor handling.
597 Diagnose errors writing new queue file.
598 If you change the owner using an owner- alias, also change the
599 error mode to EM_MAIL so that errors don't get dropped
600 into an inappropriate directory. Problem noted by
601 Allan E Johannesen of WPI.
602 If you are su'ed to root, send email as who you really are, not
603 as root. From Brian Kantor of U.C. San Diego.
604 Allow warning messages to be sent after a configurable interval
605 has passed without delivery. The message is sent only
606 once per envelope. This changes the format of the qf
607 file to have an F line, and the format of the T option
608 to accept take the format "return/warn" (both intervals).
609 Don't force all local names to lower case -- this was left over
610 from the wierd handling of case mapping on aliases. It
611 is now driven (as expected) by the "u" mailer flag.
612 Problem noted by P{r Emanuelsson.
613 Fix problem that caused headers on returned email to be trashed;
614 they were getting freed, but are still accessible via
615 BlankEnvelope.
616 Fix problem that caused bogus ids to be created on returned
617 mail.
618 Add support for ISO and other non-INET networking. This is by
619 no means finished yet. This does assume a lot of other
620 system support, like a version of gethostbyname that
621 returns non-AF_INET addresses.
622 CONFIG: change default on prog mailer to keep upper case in
623 user names (i.e., in the program command line).
624 CONFIG: strip trailing dots off of hosts in uucp mailer before
625 convert to bang format.
626 CONFIG: create new "relay" mailer for $R (LOCAL_RELAY) and $H
627 (MAIL_HUB) delivery that doesn't add local domain. Note
628 that this violates 821, but is probably "more correct"
629 for what we are trying to do. Problem pointed out by
630 Michael Graff of Iowa State.
631
6326.41/6.18 93/03/18
633 Clean up unnecessary creates of queue ids (i.e., empty qf files)
634 when not needed, such as when starting up an SMTP
635 connection.
636 Fix problem where split envelopes aren't instantiated in the queue.
637 This is quite a serious bug.
638 Owner- aliases had problems with leading spaces causing a
639 premature delimitation.
640
6416.40/6.18 93/03/18
642 Have ending 250 (after DATA) include the id; suggested by
643 Brian Kantor of UC San Diego.
644 Add logging on envelope splitting.
645 Change queue ids to have one more letter encoding the hour of
646 the day so that during a single day there is a greater
647 likelihood of uniqueness; requested by Brian Kantor.
648
6496.39/6.18 93/03/18
650 Fix minor compile problem if LOCKF is defined.
651 Define size of tobuf in conf.h. Observed by Toshinari Takahashi
652 of Toshiba.
653 Restore e_sender -- this is equivalent to e_from.q_paddr without
654 decorations such as angle brackets and comments.
655 OSF/1 on Alpha changes from Allan E Johannesen of WPI.
656 CONFIG: fix typo in S3 for list syntax (;: => :;). Thanks to
657 Christopher Hoover for noting the problem.
658
6596.38/6.17 93/03/17
660 Pass envelope to disconnect to avoid another use of CurEnv, which
661 can apparently end up being null at inopportune times.
662 Log "received from" as "relay=" for consistency (suggested by
663 John Gardiner Myers).
664 Fix major bug in header handling: if no From: line existed in
665 the header (so sendmail inserts one), and the sender is
666 an alias that has an owner, the From: line shows the
667 owner (as well as the envelope). Fixed by early binding
668 the headers (which will change debugging output).
669 HPUX portability patches from Michael J. Corrigan of UC San Diego.
670 Some attempts to adapt better to out of open file conditions.
671 Some changes to ctladdr handling in queue files.
672
6736.37/6.17 93/03/16
674 MAJOR CHANGE: delete e_sender and e_returnpath (why are these
675 different from e_from?) and $< macro.
676 Log correct IP address in relay= field even if the connection
677 times out.
678 Log "received from [RESPONSE]" on EF_RESPONSE messages (from
679 John Gardiner Myers).
680 Fixes to SysExMsg logging (sometimes just got "message: %s"
681 instead of "message: error message"), noted by Eric
682 Wassenaar. Also reported by Motonori Nakamura.
683 Improvements to MX piggybacking code, from Motonori Nakamura.
684 Fix case where CurHostName points to an auto variable that has
685 been deallocated (from Motonori Nakamura).
686 Fix bug causing newlines to be included in aliases if option
687 "n" (check alias RHS) is set; bug noted by David Muir
688 Sharnoff.
689 Fix problem causing user names that should be mapped to lower
690 case to not be mapped if they are sent during a queue
691 run. This greatly simplifies the case mapping code.
692 Problem noted by Allan E Johannesen of WPI.
693 Don't do recipient address rewriting in buildaddr. This
694 improperly did recipient rewriting on sender addresses,
695 and just seems bogus in general -- but the change could
696 break some .cf files.
697 Pass TZ envariable to child processes for System V.
698 CONFIG: allow LOCAL_RULE_1 and LOCAL_RULE_2 if you want to
699 define those rulesets.
700 KNOWN PROBLEM: I have seen some problems on SunOS that causes
701 the User Data Base to give errors on some addresses. I
702 have tracked the problem back at least as far as 93.02.15
703 (version 6.22). Running with debugging on makes it
704 go away, so I conclude that it is referencing uninitialized
705 stack data. I haven't been able to track this down yet.
706
7076.36/6.16 93/03/08
708 Allow local mailer to specify $@host -- this lets you assign the
709 "foo" part of jgm+foo to $h for passing in to the local
710 mailer.
711 Additional debug printing in getcanonname (show query type).
712 Don't add the e_fromdomain on sender addresses -- this interacts
713 wierdly with the owner- code.
714 Improve delivery logging to not log obvious or meaningless stuff.
715 Include numeric IP address in Received: lines per RFC 1123 section
716 5.2.8.
717 Fixed a bug in checking stat() return value if restrictmailq is
718 set. Also, check the entire group set instead of just the
719 primary group. Both from John Gardiner Myers.
720 Don't have usrerr automatically print errno, since this is often
721 misleading.
722 Use transienterror() in makeconnection after connect() fails and
723 in openmailer after execve() fails (from Eric Wassenaar).
724 Also moved transienterror() from util.c to conf.c.
725 Clean up from= logging on response messages.
726 Undo patch allowing prescan to return a null vector -- it breaks
727 too many things.
728 Config: FEATURE(notsticky) lets you use UDB for everything coming
729 in to the machine, even if it is specifically targetted
730 to this machine. Without it, UDB is bypassed if the user
731 name is fully qualified.
732 Config: fix another minor botch with <> (local mailer wasn't
733 mapping them properly).
734
7356.35/6.15 93/03/05
736 Fix getrealhostname to return null if sinlen <= 0 -- this can
737 occur if stdin is a pipe.
738 Avoid infinite loop in getcanonname if name server return
739 NO_DATA (for example).
740 Config: avoid having C flag qualify list syntax and error syntax.
741
7426.34/6.14 93/03/05
743 Fix logging in deliver to not pass too many parameters to Ultrix
744 versions of syslog.
745 Don't write the pid file until after the daemon has actually
746 opened and conditioned the connection.
747 Consider addresses "different" if their q_uids differ (so that
748 two users forwarding to the same program will be seen
749 as different, rather than the same).
750 Fix problem with bad parameters in main() -- they set ExitStat
751 but don't exit.
752 Fix null pointer references through RealHostName -- painfully
753 discovered by Allan E Johannesen of WPI.
754 Fix bug causing user@@localhost to core dump (yuch).
755 Config: don't put two @host.dom.ain on users in $=E in SMTP
756 mailer. Also, catch user@ (no host) in ruleset 0.
757
7586.33/6.13 93/03/03
759 Config: add confCW_FILE as the name of the cw configuration file
760 (defaults to /etc/sendmail.cw). From P{r Emanuelsson.
761 Allow prescan to return a pointer to an empty list -- this is
762 not an error. Also, clean up error reporting to avoid
763 double errors (prescan reports once, then the caller
764 reports again).
765 Changes to avoid trusting T_ANY queries -- run them, but if you
766 don't get the info you expected, do T_A and T_MX queries
767 anyhow. This also fixes an oversight where _res.options
768 bits were being ignored.
769 If PRIV_NOVRFY is set, use 252 response code instead of 502 per
770 RFC 1123 section 5.2.3. It's not 100% clear that this
771 is correct, but it probably works better with stupid
772 mailers that do a VRFY and only check the first digit.
773
7746.32/6.12 93/03/02
775 Fix uninitialized variable "protocol" in smtp code.
776 Include <unistd.h> in sendmail.h -- move towards POSIX/ANSI.
777 Additional hooks for RFC 1427 (ESMTP SIZE extension). This
778 includes requiring that enoughspace() know the system
779 block size, which will undoubtedly break most ports.
780 Trace flag 19 in use for srvrsmtp.c.
781 Additional logging -- notably the sending mailer name. This
782 also changes the delivery logging to strict field=value
783 syntax.
784 Fix some problems with messages getting sent even to addresses
785 that had been marked bad -- from Eric Wassenaar.
786 More WIDE changes: accept host name inside [...] as non-MXed
787 host. This is intended ONLY for use inside firewalled
788 environments, where the MX points at the gateway.
789 Change .cf file conventions so that mapping for <> addresses
790 don't have an @ in them (to avoid confusing the C mailer
791 flag). Pointed out by Neil Rickert.
792 Config extensions for Sam Leffler's FlexFAX software.
793
7946.31/6.10 93/02/28
795 Fix some more bugs in alias owner code -- there were some wierd
796 cases where an error in a non-aliased name would override
797 the return info in an aliased name with an owner.
798 Changes from WIDE Project, forwarded to me by Motonori Nakamura:
799 Log actual delivery host (after MX et al); from
800 yasuhiro@dcl.co.jp.
801 Log daemon startup.
802 Deliver Postmaster copies without a body.
803 Better logging of SMTP senders.
804 Send all program email as daemon even when local.
805 As requested in various forms from many people, accept -qIstring
806 to limit queue runs to jobs with queue-id matching string.
807 Similarly for -qRstring for recipients, -qSstring for
808 senders.
809 Initial hooks for ESMTP support (see RFC 1425).
810 Fixed a syntax error in the UUCP mailer specification that caused
811 core dumps on startup.
812 Check for missing A= or P= arguments in mailer definitions.
813
8146.30/6.10 93/02/27
815 Require FROZENCONFIG compilation flag to include frozen
816 configuration code. Frozen configuration is really
817 not a very good idea any more, particularly in shared
818 library environments.
819 Do better checking of errno after opens of :include: and .forward
820 files to defer delivery on network and other transient
821 errors. Suggestion from Craig Everhart.
822 Fix minor botch in read timeout macro processing.
823 Add FEATURE(nouucp) to config files for sites that know absolutely
824 nothing about UUCP.
825 Add built cf files to distribution tape and clarify how to build
826 them if you don't have the Berkeley make.
827 Some sizeof(long) portability changes for the Alpha, from Allan
828 E Johannesen.
829 Add "restrictmailq" privacy flag -- if set, only people in the same
830 group as your queue directory can print the queue. If you
831 set this, be sure you also restrict access to log files....
832 Fix another bug in owner-list stuff that can cause data files to
833 be "lost".
834 Fix a bug with queue runs that cause forwards to yourself to go
835 into alias/forwarding loops. I'm still iffy about this
836 fix.
837 Fix from Eric Wassenaar for suppression of return message code.
838
8396.29/6.9 93/02/24
840 Fix yet another problem in alias owner code -- put the wrong return
841 address on the enclosed return-to-sender letter.
842
8436.28/6.9 93/02/24
844 Fix botch in alias owner code that caused it to not operate if the
845 error was detected locally.
846
8476.27/6.9 93/02/24
848 M_LOCAL => M_LOCALMAILER to avoid conflict with Ultrix include
849 file <sys/mount.h>.
850 Miscellaneous bug fixes from Eric Wassenaar:
851 sendmail -bv -t logs the from line even though in verify
852 mode only.
853 sendmail -v can go into queue mode if shouldqueue returns
854 TRUE.
855 Add route-addr pruning per RFC 1123 section 5.3.3. This can be
856 disabled using the "R" option.
857 Delete (always undocumented) -R flag (save original recipients);
858 there are ways to syslog(3) these now.
859 Clean up SMTP reply codes -- specify them as needed in the code,
860 instead of in conf.c -- this was needed during the NCP to
861 TCP transition, but seems silly now. This also changes
862 parameters to message and nmessage.
863 Have mailstats read the .cf file to find the sendmail.st file and
864 get text versions of mailer names. An initial version of
865 this code was provided by Tuominen Keijo (although the
866 comments indicate the good bits were written by "E.V.").
867 Add yet more System V compatibility hacks.
868 Fix bug in VRFY code (assumes everything must be a local user).
869 Allow specification of any of the hard-wired pathnames in the
870 Makefile.
871 Delete concept of "trusted users" -- this really didn't provide
872 any security anyway, and caused some problems.
873 Delete last vestige of support for the word "at" as an equivalent
874 to the character "@".
875 Propagate owner-foo alias information into the envelope sender.
876 Based on code from John Gardiner Myers. This is a major
877 semantic change -- beware!
878 Allow $@ on LHS to indicate "match zero" -- this is used to match
879 the null expression.
880
8816.26/6.8 93/02/21
882 Don't "lose" queue runs. Very important fix from (who else?)
883 Eric Wassenaar.
884 Completely reset state on RSET command -- from Eric Wassenaar.
885 Send error messages and return receipts using an envelope sender
886 of <> regardless of the setting of $n. Rewriting rules
887 can undo this if they feel the necessity, as might be
888 needed for networks that don't understand the syntax.
889 This is permitted by RFC 821 section 3.6 and required by
890 RFC 1123 section 5.3.3. THIS REQUIRES VERSION 4 CONFIG
891 FILES because the rulesets must be able to parse <>
892 properly.
893 Don't ever send error messages to "<>" -- they will get sent to
894 the local postmaster or dumped in /usr/tmp/dead.letter
895 instead. Per RFC 1123 section 5.3.3.
896 Explicitly check for email to yourself as a dotted quad. You
897 have to call $[ [ ... ] $] to get this.
898 Up the message timeout to five days per RFC 1123 section 5.3.1.1.
899 Make all read timeouts individually configurable, as strongly
900 recommended by RFC 1123 section 5.3.2.
901 Use f_bavail (blocks available to regular users) instead of f_bfree
902 (blocks available to superuser) in free block checks.
903 Change $d macro to be the current time, not the origination time,
904 since this is consistent with how it is used now.
905 Generalization of enoughspace from Eric Wassenaar covering
906 SGI, Apollo, HPUX, Ultrix, and SunOS.
907 Ignore process group signals -- some front ends can do this if
908 you kill a window too quickly. From Eric Wassenaar.
909 Change umask to 022.
910
9116.25/6.8 93/02/20
912 Close all cached connections before calling mailers and after
913 forking for delivery (caused double closes which resulted
914 in false errors).
915 Add FEATURE(redirect) in config files -- this allows you to alias
916 old addresses to a pointer to the new address that will
917 give a 551 error message, but not deliver the mail.
918 Some code changes to make the 551 errors look pretty.
919 Names of M4 program paths in config files have changed -- they
920 are all XXX_MAILER_PATH now, to match XXX_MAILER_FLAGS.
921 Fix a bug in the QSELFREF code having to do with empty .forward
922 files, reported by Eric Wassenaar.
923 Add option "p" (privacy flags); this allows you to tune how
924 picky the SMTP server will be. This also adds the
925 confPRIVACY_FLAGS M4 macro in the config files.
926 Add option "b" (minimum blocks free). If there are fewer than
927 this number of blocks free on the filesystem containing
928 the queue directory, the SMTP MAIL command will return
929 a 452 response and ask you to try again later. This
930 also adds the confMIN_FREE_BLOCKS M4 macro in the config
931 files.
932 Made VRFY just verify (doesn't expand aliases and .forward files);
933 EXPN does full expansion. RCPT in queue-only mode also
934 doesn't chase aliases and .forward.
935
9366.24/6.7 93/02/19
937 Increase the number of domain search entries in domain.c to allow
938 for the extra "" entry indicating the root domain.
939 Reported by Motonori Nakamura of Kyoto U.
940 Add a "SMART_HOST" in the configs for UUCP-connected sites that
941 want to forward all mail with extra "@"s to that site.
942 Also allows SMART_HOST, LOCAL_RELAY, and MAIL_HUB to
943 be specified as ``mailer:hostname'' to use an alternate
944 mailer.
945 Clarified and updated some wording in the Operations Guide.
946 Add the "c" mailer flag -- this suppresses all comment parts of
947 addresses (requested by John Curran of NEARnet).
948 Have -v print prompts in -bt mode even if stdin is not a terminal
949 (default behaviour is to be silent if not reading from
950 a terminal). Suggested by Bryan Costales, ICSI.
951 Move the metacharacters from C0 space (\001-\037) into C1 space
952 (\201-\237). This also fixes a bunch of potential bugs
953 with G1 characters (\240-\276) in headers relating to
954 negative numbers passed to isspace() et al.
955 Add YP_LAST_MODIFIED and YP_MASTER_NAME to DBM version of alias
956 database if YPCOMPAT is #defined. Enhancement from
957 Takahiro Kanbe of Fuji Xerox Information Systems Co., Ltd.
958 Add "list" Precedence (-30); this can be used with old sendmails
959 which will map to precedence 0 (which will return error
960 messages). Suggested by Stephen R. van den Berg.
961 Many bug fixes from Eric Wassenaar of the National Institute for
962 Nuclear and High-Energy Physics, Amsterdam:
963 Clear timeouts properly on open failures in include().
964 Don't dereference through NULL if no home directory found.
965 Re-establish SIGCHLD signal on System 5 in reapchild().
966 Avoid NULL pointer reference on -pFOO flag.
967 Properly handle backslash escapes in comments.
968 Correctly check reply status on SMTP NOOP command.
969 Properly save SMTP error message if peer gives
970 "Service Shutting Down" message.
971 Avoid writing to the transcript if it couldn't be opened.
972 Signal errors in SMTP children to parent properly.
973 Handle self references in a list more globally (include a
974 QSELFREF bit in the address flags). This enhancement
975 was suggested by Eric Wassenaar.
976 Use initgroups() in hpux, even though it's System-V based. The
977 HASINITGROUPS compile flag can set this on other systems.
978 This HPUX behaviour was pointed out by Eric Wassenaar.
979
9806.23/6.6 93/02/16
981 Clean up handling of LogLevel to make it easier to figure out
982 what's on what level.
983 Change log levels to have some consistency:
984 1 serious system failures, security problems
985 2 lost communications, protocol failures
986 3 other serious failures
987 4 minor errors
988 5 message collection
989 6 vrfy logging, creation of return-to-sender
990 7 delivery failures
991 8 delivery successes
992 9 delivery tempfails (queue ups)
993 10 database expansion
994 >64 debugging
995 Allow IDA-style separated processing on S= and R= in Mailer
996 definition lines. Note that rulesets 1 and 2 are
997 still used for both addresses as before. Bruce Lilly
998 gave a convincing argument that RFC976 insists on
999 this behaviour.
1000 Added some time zones to arpatounix -- they may not be in the
1001 standards, but they are in use. However, I may delete
1002 arpatounix entirely -- there appears to be no reason
1003 for it to exist.
1004 Change to UUCP mailer (in cf directory) to try to do a saner job.
1005 I'm still not certain about this mailer in general.
1006
10076.22/6.5 93/02/15
1008 Fix bug that prevents saving letters in ~/dead.letter.
1009 Don't add angle brackets in VRFY command if angle brackets already
1010 exist in the address.
1011 Fix bogus error message in udbexpand.
1012 Null terminate host buffers in buildaddr (broken in 6.21) --
1013 IMPORTANT FIX!!
1014
10156.21/6.5 93/02/15
1016 Fix another incorrect error message in alias.c, found by Azuma
1017 Okamoto.
1018 Fix a couple of problems in the more-configurable config files,
1019 found by Tom Ivar Helbekkmo.
1020 Fix problem with quoted :include: entries.
1021 Don't duplicate the filename on verbose printing of .forward and
1022 :include: contents.
1023 Extend size of prescan buffer (to allow bigger addresses). Also,
1024 detect some buffer overflows.
1025 Log user SMTP protocol errors (log level 4).
1026
10276.20/6.4 93/02/14
1028 Fix another problem in the MCI state machine caused when there
1029 were errors generated from the other end to commands
1030 other than RCPT.
1031
10326.19/6.4 93/02/14
1033 Include load average support for DEC Alpha running OSF/1.
1034 Fix multiple-response problem with errors in MAIL From: line.
1035 Fix SMTP reply codes for invalid address syntaxes (give 501;
1036 never give multiple error messages for a single message).
1037 Fix problem where a cached connection timeout rejects all
1038 later connects to that host.
1039 Fix incorrect error message if alias.c is compiled with DBM only.
1040 Additional changes to fix nested conditionals (from Bruce Lilly).
1041 Recover more gracefully from operating system failures, particularly
1042 NULL returns from openmailer (from Noritoshi Demizu,
1043 OMRON Corporation).
1044 Log forward, alias, and userdb expand operations on log level 10;
1045 concept suggested by P{r (Pell) Emanuelsson.
1046 Changes for HPUX 8.07 compatibility.
1047
10486.18/6.4 93/02/12
1049 Allow any config option to be set using an M4 define.
1050 Change UNAME compile flag to HASUNAME for IDA compatibility
1051 (besides, it's a better name).
1052 Note in README that on SunOS it must be linked -Bstatic.
1053 Fairly major change in domain.c to handle wildcard MX records
1054 more rationally. NOTE: the "w" option (no wildcard MX
1055 records match local domain) has been eliminated.
1056 Fix some unset variable references pointed out by Bruce Lilly.
1057 Fix host name in process titles when using cached connection.
1058
10596.17/6.3 93/01/28
1060 Fix System 5 compatibility changes to be compatible with the rest
1061 of the world.
1062
10636.16/6.3 93/01/28
1064 Experimental fix for problem handling errors in the SMTP
1065 protocol in conjunction with connection caching.
1066 System 5 compatibility changes.
1067
10686.15/6.3 93/01/26
1069 Fix a bug that causes local mail delivered using -odq to be
1070 eliminated as a duplicate (because it matched the
1071 ctladdr, now passed in as a C line). These changes
1072 are pretty tricky......
1073
10746.14/6.3 93/01/25
1075 Add debugging for some MCI errors.
1076
10776.13/6.3 93/01/22
1078 Fix -e compatibility flag to take a value.
1079 Fix a couple of minor compilation warnings on Sun cc.
1080 Improve error messages in a few cases to be more self-explanatory.
1081
10826.12/6.3 93/01/21
1083 Fix yet-another problem with environment handling, pointed out
1084 by Yoshitaka Tokugawa and Tom Ivar Helbekkmo.
1085 Some heuristics to try to limit resource exhaustion problems
1086 if a downstream host has been down for a long time.
1087 Fix problem with incorrect host name being logged in "Connection
1088 timed out" messages (from Tom Ivar Helbekkmo).
1089 Fix some ANSI C problems (from Takahiro Kanbe).
1090 Properly log message sender on returned mail during queue run.
1091 Count number of recipients properly.
1092 Fix a problem in yp map code.
1093 Diagnose "message timed out" (from Motonori Nakamura).
1094
10956.11/6.3 93/01/20
1096 Fix problem with address delimitor inside quotes.
1097 Define $k and $=k to be the UUCP name (from the uname call)
1098 based on code from Bruce Lilly.
1099
11006.10/6.2 93/01/18
1101 Implement arpatounix (largely code from Bruce Lilly).
1102 Log more info (suggested by John Myers).
1103 Allow nested $?...$|...$. (inspired by code from Bruce Lilly of
1104 Sony US).
1105 POSIX compatibility (noted by Keith Bostic).
1106 Handle SMTP MAIL command errors properly (urged by several people,
1107 notably John Myers of CMU).
1108 Do early diagnosis of .cf errors (notably referencing a RHS
1109 substitution that isn't on the LHS).
1110 Adjust checkpointing to better handle batched recipients, suggested
1111 by John Myers.
1112 Fix miscellaneous bugs.
1113 (config files:) Implement MAIL_HUB for all local mail (to handle
1114 NFS-mounted directories) as urged by Tom Ivar Helbekkmo
1115 of the Norwegian School of Economics.
1116
11176.9/6.1 93/01/13
1118 Environment handling simplification/bug fix -- child processes
1119 get a minimal, fixed environment. This avoids different
1120 behaviour in queue runs.
1121 Handle commas inside comments properly.
1122 Properly limit large messages submitted in -obq mode.
1123
11246.8/6.1 93/01/10
1125 Check mtime of thaw file against .cf and sendmail binary, based on
1126 code from John Myers.
1127
11286.7/6.1 93/01/10
1129 MX piggybacking, based on code from John Myers@CMU.
1130 Allow checkcompat to return -1 to mean tempfail.
1131 Bug fix in m_mno computation.
1132
11336.6/6.1 93/01/09
1134 Tuning of queueing functions as recommended by John Gardiner Myers.
1135 Return mail headers (no body) on messages with negative precedence.
1136 Minor other bug fixes.
1137
11386.5/6.1 93/01/03
1139 Fix botch causing queued headers to have ?XX? prefixes.
1140
11416.4/6.1 93/01/02
1142 Changes to recognize special mailer types (e.g., file) early.
1143
11446.3/6.1 93/01/01
1145 Pass timeouts to sfgets.
1146 Check for control characters in addresses.
1147 Fixed deferred error reporting.
1148 Report duplicate aliases.
1149 Handle mixed case recursive aliases.
1150 Misc bug fixes.
1151
11526.2/6.1 92/12/30
1153 Put return-receipt-to on a conf.c flag (but don't set it).
1154 Fix minor syslog problem.