in Solaris 9's /etc/mail/sendmail.cf there is the following line
DSmailhost$?m.$m$.
in Solaris 10's /etc/mail/sendmail.cf this line is:
DS
So the smart relay host is unset. This broke mail communication
after an upgrade on a Sun machine.
Does anybody know the reason for this? Shouldn't it contain
the value that was on Solaris 9 in sendmail.cf?
Is this a known bug?
Thanks for any hints, pointers or comments.
Tom
Not out of the box there aint.
> in Solaris 10's /etc/mail/sendmail.cf this line is:
> DS
Which is the default.
> So the smart relay host is unset. This broke mail communication
> after an upgrade on a Sun machine.
> Does anybody know the reason for this? Shouldn't it contain
> the value that was on Solaris 9 in sendmail.cf?
No because someone probabaly used the "subsidiary" mc file or a
derivative of it
to generate your /etc/mail/sendmail.cf. Check the timestamps.
> Is this a known bug?
Its not a bug.
> Thanks for any hints, pointers or comments.
See: /usr/lib/mail/README and the cf directory.
Better to post sendmail specific queries to comp.mail.sendmail
so there was a configuration change on the Solaris 9 box that I missed.
>
>>So the smart relay host is unset. This broke mail communication
>>after an upgrade on a Sun machine.
>>Does anybody know the reason for this? Shouldn't it contain
>>the value that was on Solaris 9 in sendmail.cf?
>
>
> No because someone probabaly used the "subsidiary" mc file or a
> derivative of it
> to generate your /etc/mail/sendmail.cf. Check the timestamps.
>
>
>>Is this a known bug?
>
>
> Its not a bug.
>
>
>>Thanks for any hints, pointers or comments.
>
>
> See: /usr/lib/mail/README and the cf directory.
> Better to post sendmail specific queries to comp.mail.sendmail
>
Thanks for the hints!
Cheers,
Tom
Thomas> in Solaris 10's /etc/mail/sendmail.cf this line is:
Thomas> DS
Let me paint a more complete picture. In Solaris 9, there was a main
and a subsidiary sendmail configuration file. The latter had:
define(`SMART_HOST', `mailhost$?m.$m$.')
in its .mc file whereas the former did not. The idea was that in a
(subsidiary) environment without proper MX records, a "smart" host
would be needed whereas in a properly configured (main) environment,
MX records would take care of everything. Unfortunately, the smart
host macro takes higher priority than MX records, and sendmail's other
options (in version 8.12 and earlier) did not work to resolve this
conflict. So for version 8.13, I invented a new option which would
allow for MX records to be respected when they exist, but allow a fall-
back otherwise, and convinced the Keepers of the Source at sendmail.org
to accept it. (Writing the code and the documentation helped. :-)
The new option name is FallBackSmartHost, and it renders the need for
separate configuration files obsolete. So for Solaris 10, there is
no longer a main and subsidiary pair of .{mc,cf} files but a single
sendmail.{mc,cf} with this entry:
define(`confFALLBACK_SMARTHOST', `mailhost$?m.$m$.')dnl
More on this can be found at
http://blogs.sun.com/jbeck?entry=no_more_main_vs_subsidiary
-- John
Our environment doesn't allow internal systems to route to the Internet.
Instead, like a lot of folks we have have proxies for web and other
protocols. We also use a split DNS config so that our internal hostnames
aren't visible externally. However, our desktops and other internal systems
can resolve Internet names. I don't think this is uncommon.
I compile my own sendmail for our mail servers.
However, we've always used the Sun bundled sendmail and config for
everything else.
With Solaris 10, I can no longer use the Sun provided configs.
Our systems can see MX records for Internet names, but cannot connect
to those sites. So, the Sun provided cf file won't work. I'll have
to either edit the cf/mc to provide a SmartHost or just build my own
binaries and config files.
I can see the value of the FallbackSmartHost idea. However, I doubt
that most customers have the "cannot lookup Internet hostnames"
environment that this was designed for. So, I think you've made
things slightly more difficult for some of your customers and added
an unnecessary surprise for those upgrading to Solaris 10. I'd like
to think that this is trivial for most admins to figure out, but if
they had trouble choosing between main.cf and subsidary.cf...
--
Mike Mondy
Sorry, I misstated the environment you intended this for. I believe
"cannot resolve Internet names, but needs to obey internal MX records"
might be closer.
--
Mike Mondy
Even when this commented out in main.mc, the resultant main.cf
includes:
O FallbackSmartHost=mailhost$?m.$m$
While this error is correct, its not what I expected:
550 5.1.2 <nob...@undefined.example.com>... Host unknown (Name server: mailhost.arl.psu.edu: host not found)
How do I disable FallbackSmartHost from main.mc, /usr/lib/mail/README suggests
it should be undefined by default?
John
groe...@acm.org
How did you comment it out?
dnl define(`confFALLBACK_SMARTHOST', `mailhost$?m.$m$.')dnl
works as expected for me : >
I see
#O FallbackSmartHost=fall.back.host.net
instead of
O FallbackSmartHost=mailhost$?m.$m$.
Good catch thanks.
Sorry for the RTFM mistake. :(
I forgot that the "define" would be interpreted by M4 regardless whether
the line was prefixed by the # comment character which of course is
documented in /usr/lib/mail/README.
John
groe...@acm.org