xref: /csrg-svn/usr.sbin/sendmail/KNOWNBUGS (revision 67920)
164566Seric
264566Seric
364566Seric	     K N O W N   B U G S   I N   S E N D M A I L
4*67920Seric			     (for 8.6.9)
564566Seric
664566Seric
764566SericThe following are bugs or deficiencies in sendmail that I am aware of
864566Sericbut which have not been fixed in the current release.  You probably
964566Sericwant to get the most up to date version of this from FTP.CS.Berkeley.EDU
1066354Sericin /ucb/sendmail/KNOWNBUGS.  For descriptions of bugs that have been
1166354Sericfixed, see the file RELEASE_NOTES (in the root directory of the sendmail
1266354Sericdistribution).
1364566Seric
1466354SericThis list is not guaranteed to be complete.
1564566Seric
1664660Seric
1764660Seric* Null bytes are not handled properly.
1864660Seric
1964660Seric  Sendmail should handle full binary data.  As it stands, it handles
2064660Seric  any value from 0x01-0xFF in the body and 0x01-0x80 and 0xA0-0xFF in
2164660Seric  the header.  Notably missing is 0x00, which would require a major
2264660Seric  restructuring of the code -- for example, almost no C library support
23*67920Seric  could be used to handle strings.  Fixed (for the message body only)
24*67920Seric  in 8.7.
2564660Seric
2664678Seric* Duplicate error messages.
2764678Seric
2864678Seric  Sometimes identical, duplicate error messages can be generated.  As
2964678Seric  near as I can tell, this is rare and relatively innocuous.
3064704Seric
3164754Seric* No "exposed users" in "nullrelay" configuration.
3264754Seric
3364754Seric  The "nullrelay" configuration hides all addresses behind the mail
3464754Seric  hub name.  Some sites might prefer to expose some names such as
3564754Seric  root.  This information is always available in Received: lines.
3664754Seric
3764805Seric* $c (hop count) macro improperly set.
3864805Seric
3964805Seric  The $c macro is supposed to contain the current hop count, for use
4064805Seric  when calling a mailer.  This macro is initialized too early, and
4164805Seric  is always zero (or the value of the -c command line flag, if any).
4264805Seric  This macro will probably be removed entirely in a future release;
4364805Seric  I don't believe there are any mailers left that require it.
4464805Seric
4564704Seric* If you EXPN a list or user that has a program mailer, the output of
4664704Seric  EXPN will include ``@local.host.name''.  You can't actually mail to
4764704Seric  this address.  It's not clear what the right behaviour is in this
4864704Seric  circumstance.
4964704Seric
5065096Seric* REDIRECT aliases don't work with `n' option.
5165096Seric
5265096Seric  If you have option `n' set when you use newaliases and have
5365096Seric  REDIRECT addresses in your aliases file, you'll get the error
5465096Seric  messages during the newaliases instead of when email is sent to
5565096Seric  the address in question.  The workaround is to turn off the `n'
5665096Seric  option.
5765096Seric
5865096Seric* MX records that point at non-existent hosts work strangly.
5965096Seric
6065096Seric  Consider the DNS records:
6165096Seric
6265096Seric	hostH	MX	1 hostA
6365096Seric		MX	2 hostB
6465096Seric	hostA	A	128.32.8.9
6565096Seric
6665096Seric  (note that there is no A record for hostB).  If hostA is down,
6765096Seric  an attempt to send to hostH gives "host unknown" -- that is, it
6865096Seric  reflects out the status on the last host it tries, which in this
6965096Seric  case is hostB, which is unknown.  It probably ought to eliminate
7065096Seric  hostB early in processing.
7165096Seric
72*67920Seric* NAME environment variables with commas and unbalanced quotes break.
7365096Seric
7465096Seric  If you define your NAME environment variable to have a comma
7565096Seric  (e.g., ``Lastname, Firstname''), and you are using the $q definition
7665096Seric  that uses ``name <address>'' format, sendmail treats the first and
7765096Seric  last names as two addresses, thus producing a bogus From line.  You
7865096Seric  can work around this by changing the $q definition to use
7965096Seric  ``address (name)''.
8065096Seric
81*67920Seric  If you have an unbalanced double quote (e.g., ``Firstname"Lastname'')
82*67920Seric  the auto-quoting algorithm breaks.
83*67920Seric
8465385Seric* \231 considered harmful.
8565385Seric
8665385Seric  Header addresses that have the \231 character (and possibly others
8765385Seric  in the range \201 - \237) behave in odd and usually unexpected ways.
8865385Seric
8965385Seric* DEC Alphas (OSF/1 1.3) sometimes time out on sending mail.
9065385Seric
9165385Seric  I have one report that DEC Alphas acting as SMTP clients sometimes
9265385Seric  will apparently not see the "250 OK" message in response to the
9365385Seric  dot that indicates the end of the message.  This only happens if
9465385Seric  the message is run from the queue -- if it gets through on first
9565385Seric  try, everything is fine.  I have been unable to reproduce this
9665385Seric  problem at Berkeley.
9765385Seric
9865385Seric* accept() problem on SVR4.
9965385Seric
10065385Seric  Apparently, the sendmail daemon loop (doing accept()s on the network)
10165385Seric  can get into a wierd state on SVR4; it starts logging ``SYSERR:
10265385Seric  getrequests: accept: Protocol Error''.  The workaround is to kill
10365385Seric  and restart the sendmail daemon.  We don't have an SVR4 system at
10465385Seric  Berkeley that carries more than token mail load, so I can't validate
10565385Seric  this.  It is likely to be a glitch in the sockets emulation, since
10665385Seric  "Protocol Error" is not possible error code with Berkeley TCP/IP.
10765385Seric
10865385Seric  I've also had someone report the message ``sendmail: accept:
10965385Seric  SIOCGPGRP failed errno 22'' on an SVR4 system.  This message is
11065385Seric  not in the sendmail source code, so I assume it is also a bug
11165385Seric  in the sockets emulation.  (Errno 22 is EINVAL "Invalid Argument"
11265385Seric  on all the systems I have available, including Solaris 2.x.)
11365385Seric
11465617Seric* Sending user deletion not done properly in :include: lists.
11565588Seric
11665617Seric  If you don't have the "m" (me too) option set, then a person
11765617Seric  sending to a list that contains themselves should not get a copy
11865617Seric  of the message.  However, if that list points to a :include: file
11965617Seric  that has one address per line, this will break, and the sender
12065617Seric  will always get a copy of their own message, just as though the
12165617Seric  "m" option were set.
12265617Seric
12365617Seric  You can eliminate this by adding commas at the end of each line
12465617Seric  of the :include: file.
12565617Seric
12666014Seric* Excessive mailing list nesting can run out of file descriptors.
12765617Seric
12866014Seric  If you have a mailing list that includes lots of other mailing
12966014Seric  lists, each of which has a separate owner, you can run out of
13066014Seric  file descriptors.  Each mailing list with a separate owner uses
13166014Seric  one open file descriptor (prior to 8.6.6 it was three open
13266014Seric  file descriptors per list).  This is particularly egregious if
13366014Seric  you have your connection cache set to be large.
13466014Seric
135*67920Seric(Version 8.19, last updated 11/13/94)
136