The MAIL FROM: command of the SMTP
transaction is used to convey the address of the envelope sender.
RFC821 requires that the envelope sender address always be fully
qualified. That is, it must always have a user part, an
@ character, and a domain part, in that order.
The normal behavior of sendmail is to reject the
envelope sender if it is not fully qualified. For example:
MAIL FROM: <you>
553 5.5.4 <you>... Domain name required
This rejection is done for network connections only. When reading the
envelope sender via the standard input under the
-bs command-line switch (-bs), a missing @domain part is OK:
% /usr/sbin/sendmail -bs
220 yourhost.domain ESMTP Sendmail 8.12.7/8.12.7; Fri, 13 Dec 2002 14:13:09 -0700
HELO yourhost
250 yourhost.domain Hello your@yourhost.domain, pleased to meet you
MAIL FROM: <bob>
250 2.1.0 <bob>... Sender ok
If machines at your site routinely send unqualified envelope sender
addresses (addresses without the @domain part), you will find that
mail is being rejected.
Your first attempt at a solution should be to fix the broken software
that is sending unqualified addresses. If that fails, or if you lack
the permission or authority, you can use this
accept_unqualified_senders feature to force
sendmail to accept unqualified envelope sender
addresses:
FEATURE(`accept_unqualified_senders')
Another way to handle this problem is with the (V8.10 and above)
DaemonPortOptions option's
Modifier key value (See this section).
If that value includes a u character, unqualified
envelope sender addresses are accepted even if this feature is
omitted. Even if this feature is included, the presence of an
f in the DaemonPortOptions
option's Modifier key value
causes the normal behavior of enforcing fully qualified addresses.