Link to home
Start Free TrialLog in
Avatar of meyaps
meyaps

asked on

SMTP ?

Is there any method of knowing the possiblee SMTP ccommands
an email server (say SENDMAILD) may issue to its remote SMTP server while sending mails.
I have implemented an email server that speaks SMTP. I am able to send mails to remote SMTP servers but I amm unable to receive mails from them. I have implemented the minimal set of SMTP commands like MAIL,HELO,RCPT,DATA,NOOP,RSET,HELP. Please do explain me the reasons for my inability to receive mails from remote mail servers. But do remember that I am able tto send mails to those servers through mine.So pl. exxplain me if there is any possibility to know the probabale SMTP commands a remote mails systemm may issue to my server so that I may know the reasons for my problem.
Thank You.
ASKER CERTIFIED SOLUTION
Avatar of jhance
jhance

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of meyaps
meyaps

ASKER

I tried by telnetting to my server which was listening at the well defined port 25 for connections,it just worked well but when I tried from a remote machine having sendmail deamon , my server did not respond. Moreover the mail that I tried  to send using the senddmail deamon were queued up in /var/spool/mail/mqueue directory.
I don't really understand your last comment.  Did you diagnose the problem or are you still having trouble?  I've written several SMTP server utilities and will be glad to stay with you on this.
Avatar of meyaps

ASKER

Hi Jhance, I am still havinng the trouble. My server is still unable
tto receive mails. I tried this by sending a mail from an ESMTP server to mine. Since my server allows only SMTP commands it responded to ESMTP EHLO command by sending a 500 reply. But nothing happened after that. Still I am unablle to resolve this problem. But I am able to send mail to that ESMTP server. I did this proggram using C under linux OS. Moreover pl. explain me the procedure by which the mails within a server are delivered. I terminated the sendmail server running in the background, But still I wwas able to send mails. How is thhat happening ?
Moreover what is  the mailer program that iis used in UNIX/LINUX for sending mails . Is it possible to invoke them manually ? If so how ?
If I understand you correctly, your SMTP mailer program (which you are writing in C) will send mail to another SMTP server but it will not receive mail.  Can you try this.  Start your mailer up and then try to connect to it with a telnet window and run the protocol manually like this:

www:~$ telnet www.myhost.com 25
Trying 1.2.3.4...
Connected to www.myhost.com.
Escape character is '^]'.
220 www.myhost.com ESMTP Sendmail 8.8.6/8.6.9 ready at Tue, 10 Mar 1998 06:09:26 -0500
HELO mypc.myhost.com
250 www.myhost.com Hello joe@mypc.myhost.com [1.2.3.5], pleased to meet you
MAIL FROM: billybob@anywhere.com
250 billybob@anywhere.com... Sender ok
RCPT TO: joe@myhost.com
250 joe@myhost.com... Recipient ok
DATA
354 Enter mail, end with "." on a line by itself
This is a test
.
250 GAA01812 Message accepted for delivery
quit
221 www.myhost.com closing connection
Connection closed by foreign host.
www:~$

After you've done this, please post the transcript here.