Xref: utzoo comp.unix.xenix.sco:2070 comp.unix.sysv386:6505 comp.unix.wizards:24619 comp.unix.admin:1441 Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!know!theep!rk From: rk@theep.boston.ma.us (Robert A. Kukura) Newsgroups: comp.unix.xenix.sco,comp.unix.sysv386,comp.unix.wizards,comp.unix.admin Subject: Re: sendmail on SCO ODT + uucp Message-ID: Date: 31 Mar 91 17:24:39 GMT References: <1991Mar29.175919.17154@edm.isac.CA> Sender: rk@theep.boston.ma.us (Robert A. Kukura) Organization: Theeptronics Lines: 71 In-Reply-To: steve@edm.isac.CA's message of 29 Mar 91 17:59:19 GMT In article <1991Mar29.175919.17154@edm.isac.CA> steve@edm.isac.CA (Steve Hole) writes: In the orginal article Scott Simpers writes: > We are having a peculiar problem with sendmail, and I would > appreciate any ideas, suggestions, or solutions. > > Sendmail is running on an SCO ODT 1.0 system, which is our UUCP > gateway. The problem appears sending UUCP mail from other hosts on > our Lan to UUCP sites. It works fine delivering, via SMTP, to all > our local machines, and sometimes works OK when sending, via UUCP, > to other hosts. > > The probem is that it will someimes get into a state where it says > "Cannot exec '/usr/bin/uux' errno=13". This doesn't seem to be a > problem when sending UUCP mail from the local (ODT) system, but > rather when another systemon our networkis attempting to get it to > send UUCP mail. Once it gets into this state where it will only > send local UUCP mail, the only solution appears to be to kill and > restart sendmail. > Most likely, if this is the problem I've seen before, incoming SMTP mail is not being reliably delivered either. OK, Scott, you are not going crazy. I have noticed the identical problem, except that I am running smail v3.19. First of all let me refine the occurrence of the problem a little. The problem occurs on our machine under the following conditions: 1. If I start sendmail from the rc as a an stmp daemon with the following arguments: /usr/lib/sendmail -bd -q1h the any messages recieved via SMTP and routed to an external connection via uucp will fail with a similar error message to the one you show above. If I kill the daemon started by the rc, and run it from the command line, everything works fine. 2. If I start smtpd via inetd.conf, it fails similarly every time. Therefore, it would seem that smtp daemon processes started without a controlling terminal cannot execute uux. I have absolutely no idea why. Perhaps something in the environment of a process started from a shell command line is required and not present when started from either the rc or inetd. Its not the controlling terminal or the environment, its SCO's infamous security feature, the LUID, or login user id. The init process that runs the rc scripts does not have one, and therefore the sendmail daemon started from the rc script does not have one either. This means that the kernel prevents the sendmail daemon from execing /usr/bin/uux, which I believe (I'm not on an SCO system at the moment), has the SUID bit set. When a user sends mail, the sendmail that is invoked has the user's LUID, so it is permitted to exec /usr/bin/uux, and delivery succeeds. When mail arrives via SMTP for forwarding, its handled by the sendmail daemon with no LUID and it fails. If you kill and restart the sendmail daemon by hand, it has your LUID, and succeeds. The solution is to give the sendmail daemon started by init an LUID by editing /etc/rc2.d/S85tcp to read something like: /bin/su root -c "/usr/lib/sendmail -bd -q1h" I hope this helps. -- -Bob Kukura internet: rk@theep.boston.ma.us uucp: spdcc!theep!rk