[comp.unix.aix] Mail problem in AIX PS/2 V1.2

vlcek@mit-caf.MIT.EDU (Jim Vlcek) (09/06/90)

I've just installed AIX PS/2 V1.2 on a Model 80, and loaded the mail
utility with sendmail (no MH) for electronic mail.  I used the
sendmail.cf that came with the utility, making only the necessary
changes to put in place the machine name.  Now, I can get email out of
the system to other machines just fine (via the Ethernet port using
TCP/IP), but I can't seem to get mail delivered into the machine.
Here's what I get whenever I try to send something into the machine
from elsewhere:

From: MAILER-DAEMON@foobar.mit.edu (Mail Delivery Subsystem)
Subject: Returned mail: Service unavailable
   ----- Transcript of session follows -----
>>> HELO foobar.mit.edu
<<< 553 foobar.mit.edu Do not communicate with self
554 <root@FOOBAR.MIT.EDU>... Service unavailable: No such file or directory

All of the Internet services (finger, rlogin, ftp, etc) are working
just fine; only just the mail seems to be screwed up.  I suspect I'm
doing something wrong in sendmail.cf, although I can't imagine what.
I haven't made any changes to it other than the machine name and
domain information.

Anybody have any suggestions as to what I'm doing wrong?

Jim Vlcek  (vlcek@caf.mit.edu  vlcek@athena.mit.edu)

resnick@cogsci.uiuc.edu (Pete Resnick) (09/06/90)

vlcek@mit-caf.MIT.EDU (Jim Vlcek) writes:

>From: MAILER-DAEMON@foobar.mit.edu (Mail Delivery Subsystem)
>Subject: Returned mail: Service unavailable
>   ----- Transcript of session follows -----
>>>> HELO foobar.mit.edu
><<< 553 foobar.mit.edu Do not communicate with self
>554 <root@FOOBAR.MIT.EDU>... Service unavailable: No such file or directory

>All of the Internet services (finger, rlogin, ftp, etc) are working
>just fine; only just the mail seems to be screwed up.  I suspect I'm
>doing something wrong in sendmail.cf, although I can't imagine what.
>I haven't made any changes to it other than the machine name and
>domain information.

It is clearly that your machine is not recognizing it's own host name.
A few things to check:

1. Make sure your hostname is it /etc/hosts or on the nameserver.
2. Make sure that exact hostname is what is defined in sendmail.cf
   as well as the domain name. AIX sendmail is a little strange
   in that the domain name is pinned on to any hostname or class
   (alternate) name you provide. Make sure your machine knows
   who it is. Maybe check the From field.
3. Make sure that /etc/master is using the same name as the hostname
   (i.e. the first name).
4. If there are other host names that are available for this machine,
   make sure they are in sendmail.cf in the class names.

Hope that helps.
pr
--
Pete Resnick             (...so what is a mojo, and why would one be rising?)
Graduate assistant - Philosophy Department, Gregory Hall, UIUC
System manager - Cognitive Science Group, Beckman Institute, UIUC
Internet/ARPAnet/EDUnet  : resnick@cogsci.uiuc.edu
BITNET (if no other way) : FREE0285@UIUCVMD

jackv@turnkey.tcc.com (Jack F. Vogel) (09/06/90)

In article <5050@mit-caf.MIT.EDU> vlcek@caf.mit.edu (Jim Vlcek) writes:
 
>From: MAILER-DAEMON@foobar.mit.edu (Mail Delivery Subsystem)
>Subject: Returned mail: Service unavailable
>   ----- Transcript of session follows -----
>>>> HELO foobar.mit.edu
><<< 553 foobar.mit.edu Do not communicate with self
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>554 <root@FOOBAR.MIT.EDU>... Service unavailable: No such file or directory
 
>Anybody have any suggestions as to what I'm doing wrong?
 
I always have loved this error message :-}! Your problem is that the fully
qualified name "foobar.mit.edu" is not resolving to the local mailer, instead
it is resolving to the tcp mailer and it then tries to talk smtp to itself!
As it happens I just saw this problem the other day in our San Diego subdomain.
What you need to do to fix this is make sure you have the D,E,F... macros
defined. You should have the following lines:

DDmit.edu
DEmit
DFedu

If you look at the cf file there is an example of this in the comments. I am
fairly sure doing that will eliminate the error. Good luck!

Disclaimer: I may administer LCC mail, but I don't speak for the company :-}.

-- 
Jack F. Vogel			jackv@locus.com
AIX370 Technical Support	       - or -
Locus Computing Corp.		jackv@turnkey.TCC.COM

vlcek@mit-caf.MIT.EDU (Jim Vlcek) (09/07/90)

I've gotten a number of replies to my question about a sticky mail
problem with AIX PS/2 V1.2, in which all mail sent to the machine
bounces with the following retort:

From: MAILER-DAEMON@foobar.mit.edu (Mail Delivery Subsystem)
Subject: Returned mail: Service unavailable
   ----- Transcript of session follows -----
>>> HELO foobar.mit.edu
<<< 553 foobar.mit.edu Do not communicate with self
554 <root@FOOBAR.MIT.EDU>... Service unavailable: No such file or directory

People first suspected the name and domain macro and class definitions
in sendmail.cf, so here's what I've got there:

Dwfoobar
Cwfoobar
DDmit.edu
DEmit
DFedu
DG
DH
CE$E
CF$F
CG$G
CH$H
Dj$w$?D.$D$.

Does that wave any red flags?  Eliminating the null definitions of G
and H didn't help any.  Everything else looks exactly as it should.

Pete Resnick brought up four points:

1. Make sure your hostname is it /etc/hosts or on the nameserver.

It's listed in /etc/hosts alright, and is set up on the nameserver.  I
can do an nslookup on it from another host.  I'm not running named on
foobar, but instead have the following entries in resolv.conf:

domain  mit.edu
nameserver      18.71.0.151
nameserver      18.72.0.3
nameserver      18.70.0.160

2. Make sure that exact hostname is what is defined in sendmail.cf
   ... Maybe check the From field.

See above.  The From field seems to be just fine.

3. Make sure that /etc/master is using the same name as the hostname
   (i.e. the first name).

How do I accomplish this?  I edited /etc/master (had to chmod it
first, which was a bit ominous), and it seemed like the only thing
that would bear changing was the "name" parameter; I changed the
`default = "aixps"' line to `default = "foobar"'.  This had no effect.

4. If there are other host names that are available for this machine,
   make sure they are in sendmail.cf in the class names.

I've tried all of the following:

Cwfoobar
Cwfoobar foobar.mit.edu
Cwfoobar foobar.mit.edu local

"foobar" is the only host name the machine uses, anyway.  None of
these worked.

Any other ideas?!

PS - One strange thing is that, just before the prompt for login name
on the console, the system prints out "(noname)", as if the system
name is not defined.  Where does it get this name from?  Doing
"uname -n" or "chparm nodename" give the correct response ("foobar"),
but yet something doesn't seem to know the machine's name.

Jim Vlcek  (vlcek@caf.mit.edu  vlcek@athena.mit.edu)

vlcek@mit-caf.MIT.EDU (Jim Vlcek) (09/07/90)

Well, I've got the problem fixed now.  Turns out it _was_ the null
definitions of $G and $G that screwed things up:

Dwfoobar
Cwfoobar
DDmit.edu
DEmit
DFedu
DG             <- Should be commented out: #DG
DH             <- Should be commented out: #DH
CE$E
CF$F
CG$G
CH$H
Dj$w$?D.$D$.

I had tried this once, and it didn't seem to work.  But what was
really happening was that I was mailing to root@foobar.mit.edu from an
outside machine, and then checking my mail on foobar.  But, on foobar,
I had logged in as vlcek and then su'd to root.  When I then checked
the mail, I would be informed "No mail for root", strangely enough.
Only two hours later, when I logged in directly as root, did I find
that mail had gotten through.  Of course, by that time, I wasn't sure
what particular variation in sendmail.cf was the winner, and I had to
backtrack a bit.

Anyone know why mail checking doesn't seem to work sanely when you su
to a different username?

Many thanks to all the people who replied to my initial message, both
email and in postings.

Jim Vlcek  (vlcek@caf.mit.edu  vlcek@athena.mit.edu)

n160ao@tamuts.tamu.edu (Mark Lehmann) (09/07/90)

In article <5050@mit-caf.MIT.EDU> vlcek@caf.mit.edu (Jim Vlcek) writes:
>I've just installed AIX PS/2 V1.2 on a Model 80, and loaded the mail
>utility with sendmail (no MH) for electronic mail.  I used the
>sendmail.cf that came with the utility, making only the necessary
>changes to put in place the machine name.  Now, I can get email out of
>the system to other machines just fine (via the Ethernet port using
>TCP/IP), but I can't seem to get mail delivered into the machine.
>Here's what I get whenever I try to send something into the machine
>from elsewhere:

I worked on this for months and sent the problem to AIX technical support.
They said that it was a bug.  I called the Defect Support Line, but Defect
Support never did anything about it.  Maybe if you called it into the
1-800-237-5511 number, they would see that this really is a problem.
Give the problem a high severity.

Mark Lehmann
n160ao@tamuts.tamu.edu

garnett@cs.utexas.edu (John William Garnett) (09/08/90)

In article <5057@mit-caf.MIT.EDU> vlcek@mit-caf.UUCP (Jim Vlcek) writes:
>I've gotten a number of replies to my question about a sticky mail
>problem with AIX PS/2 V1.2, in which all mail sent to the machine
>bounces with the following retort:
>From: MAILER-DAEMON@foobar.mit.edu (Mail Delivery Subsystem)
>Subject: Returned mail: Service unavailable
>   ----- Transcript of session follows -----
>>>> HELO foobar.mit.edu
><<< 553 foobar.mit.edu Do not communicate with self
>554 <root@FOOBAR.MIT.EDU>... Service unavailable: No such file or directory
>People first suspected the name and domain macro and class definitions
>in sendmail.cf, so here's what I've got there:
>Dwfoobar
>Cwfoobar
[ remainder of message deleted ]

I have received this same message in the past.  My mistake
was to use only one argument to the Cw macro when it actually
requires two (or none).  It appears that this may be the problem you
are experiencing.

I would try "Cw foobar barfoo" or just "Cw".

Make sure to recompile the sendmail database after changing
sendmail.cf.  I believe you can do this with "/usr/lib/sendmail -bz"
and "/usr/lib/sendmail -bi".  You might also want to restart
the sendmail daemon (not sure if this is necessary or not).

You should also run the hostname command to make sure that
your host sees itself as foobar.mit.edu.





-- 
John Garnett
                              University of Texas at Austin
garnett@cs.utexas.edu         Department of Computer Science
                              Austin, Texas

jeffe@sandino.austin.ibm.com (Peter Jeffe 512.823.4091) (09/09/90)

In article <58@persian.cs.utexas.edu> garnett@cs.utexas.edu (John William Garnett) writes:
>>[ transcript of bounced mail from Jim Vlcek ]
>><<< 553 foobar.mit.edu Do not communicate with self
>>[...]
>I have received this same message in the past.  My mistake
>was to use only one argument to the Cw macro when it actually
>requires two (or none).  It appears that this may be the problem you
>are experiencing.
>
>I would try "Cw foobar barfoo" or just "Cw".

Just to straighten this up a bit, the above problem was caused by two
macros being defined as null strings, when they should have been left
undefined (i.e., commented-out).  In the sendmail.cf file, there is
a rewrite rule that looks something like:

R$+<@$=w$?E.$=E$.$?F.$=F$.$?G.$=G$.$?H.$=H$.>   $@$1<@LOCAL.D>

whose intent is to see if the address in question is the local machine.
While this is a litle hard to read, the "$?M" contruct is a simple if-then
statement that tests whether the M macro has been defined; if so, it checks
for it in the address, preceded by a dot (".$=M").  So when Jim had the G
and H macros defined as null strings, the rule was checking to see if the
address matched "foobar.mit.edu.." instead of "foobar.mit.edu", and of
course it wasn't matching, and therefore it didn't recognize it as itself,
and it accordingly tried to connect to itself as a remote server.

The w class should specify all of the hostnames that your host can be known
by; likewise, the E, F, G, and H classes should specify all of the domain
parts that your host can be known by.  The "$=w" construct will then match
any of these names, and thereby allow you to receive mail that is addressed
to any of your domain names.  So if you are known as both foobar.mit.edu
and barfoo.mit.edu, then you would need to do:

Cw foobar barfoo

Otherwise, just the "Cw foobar" would be sufficient.

-------------------------------------------------------------------------------
Peter Jeffe   ...uunet!cs.utexas.edu!ibmaus!auschs!sandino.austin.ibm.com!jeffe
        first they want a disclaimer, then they make you pee in a jar,
                   then they come for you in the night