DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
Managing mail with MMDF

Smtp cannot establish a remote connection

You can have a working TCP/IP configuration with successful implementation of most TCP/IP functions (telnet, rlogin, ftp, and rcp) between the local machine and a remote machine, but the /usr/mmdf/chans/smtp program may be unable to establish a connection with the remote site.

You may see an error message like this in /usr/mmdf/log/chan.log when you attempt to send mail to the remote site if you have the logging level set to Every diagnostic possible (FTR in the mmdftailor(F) file):

   trying 89.0.0.3
   can't get connection (115)
   [SYSERR(115) connection refused] a3000.your_company.com(59000003) no open
   sm_gethostid (a3000.your_company.COM)
   tb_k2val (smtp.chn, first=0, a3000.your_company.COM)
   tb_k2val failed
   qu_wrply()
   (DHST) 'Remote host unavailable'
   qu_wrec() (15) "Remote host unavailable"
   qu_radr
   qu_rrec ()
   (4) "aend"
   qu_wrply()
   (DHST) 'no valid addresses'
   qu_wrec() (51) "no valid addresses"
   qu_mend
   hd_end ()
   qu_pkend
   wend
   qu_end
When inetd(ADMN) is started it reads /etc/inetd.conf and /etc/services. It then creates a socket for each server and binds each socket to the port for that server.

inetd listens on multiple ports for incoming connection requests. When it receives a request it spawns the appropriate server.

The above error message indicates that the local smtp program did not establish a socket connection. This means that the inetd process on the remote machine did not open a socket for smtp at port 25 because the smtp entry was omitted in /etc/inetd.conf and /etc/services.

To resolve the problem:

  1. Log in as root on the remote machine.

  2. If the smtp entry is missing from /etc/inetd.conf, edit inetd.conf and add this line:
       smtp  stream  tcp nowait mmdf /usr/mmdf/chans/smtpd smtpd
       	/usr/mmdf/chans/smtpsrvr smtp
    


    NOTE: This long entry is all one line.

  3. If the smtp entry is missing from /etc/services, edit services and add this line:
       smtp      25/tcp      mail
    
    The line in /etc/services consists of service name, port number and protocol type (separated by /), and an optional alias name.

  4. Restart inetd by entering this when in multiuser mode:
       ps -ef | grep inetd
    
    If you see an output similar to this:
       root  257 1 0  May 11  ?  0:01 inetd
    
    then kill inetd by entering:
       kill -1 257
    
    Where 257 is the process id.

If the remote machine (to which mail is being directed) is not an SCO OpenServer system, see the appropriate documentation for your system.

See also:


Next topic: UUCP channel delays mail delivery
Previous topic: MMDF delivers mail twice or not at all

© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003