Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

SMTP: RCPT TO: always empty, instead DATA TO: ?

Posted on 2004-09-06
6
Medium Priority
?
1,853 Views
Last Modified: 2008-02-26
Hey guys,

While programming an application using SMTP, I found this very confusing thing.

Every article, manual, document, you name it, covering SMTP tells me that recipients are added using the RCPT TO: <address@domain.tld> command. However, when I manually send an email using telnet, when I look in my mail root directory (eg. inetpub/mailroot/queue), the email I just sent always lists the 'To:' field as empty, for example when I load the email in Outlook.

After much messing around with it and asking a friend of mine, it seems that the only way to get the 'To:' field to contain addresses, is by setting it in the DATA field. For example:

EHLO
MAIL FROM: me@mydomain.net
RCPT TO: you@yourdomain.net
DATA
Test email
.

If I load this email in Outlook (or edit in a texteditor) it clearly shows that the mail is from me@mydomain.net, with no subject, body 'Test email', but no recipient! However if I do this:

EHLO
MAIL FROM: me@mydomain.net
RCPT TO: you@yourdomain.net
DATA
TO: you@yourotherdomain.net
Test email 2
.

it will show the email to come from me@mydomain.net, no subject, body 'Test email 2' but with recipient you@yourotherdomain.net?!

This confuses me, especially since I can't seem to find an article covering this. Also, what is the point of the RCPT TO: field when somehow it won't accept this for me? Oh and I tried this on 2 different SMTP servers, using remote connections or local connections, so I don't think there can be the problem.

I hope someone can explain this to me! Thanks!

Razzie
0
Comment
Question by:Razzie_
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
6 Comments
 
LVL 34

Accepted Solution

by:
PsiCop earned 400 total points
ID: 11992856
Simply put:

TO: != RCPT TO:

This took me awhile to figger out to.

RCPT TO: is an SMTP command that tells the MTA (Message Transfer Agent) to whom the E-Mail is destined. This is so it can perform lookups, determine if it accepts mail for this Domain and/or user, determine proper routing, etc. etc.

The TO: line in an E-Mail derives from the headers transmitted with the E-Mail itself. That is, your program must *explicitly* transmit a TO: header, during the DATA step, if you want the resultant E-Mail to have a TO: header. RCPT TO: is strictly for the MTA.

This is how things like BCC: are done. The recipients are listed in the RCPT TO: commands during the initial communication with the MTA, but the TO: header is omitted. TO: is mainly for us humans, (and any programs, like ProcMail, that may handle the E-Mail after the MTA has accepted it for delivery).
0
 
LVL 34

Expert Comment

by:PsiCop
ID: 11992908
Whoops. That was my site.Config.m4 I gave you a link to above. Here is my annotated sendmail.mc

http://www.experts-exchange.com/Networking/Email_Groupware/Sendmail/Q_21116293.html
0
 
LVL 34

Expert Comment

by:PsiCop
ID: 11992939
Fudge. Wrong Question. Ignore my last Comment.
0
Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

 
LVL 8

Author Comment

by:Razzie_
ID: 11994610
Ok thanks PsiCop!
0
 
LVL 8

Author Comment

by:Razzie_
ID: 11994613
Btw, it's strange that all articles I read about SMTP do not cover this, I wonder why....
0
 
LVL 34

Expert Comment

by:PsiCop
ID: 11996905
I dunno. I'll Ask Mr. Protocol if he can look into it.
0

Featured Post

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

We are happy to announce a brand new addition to our line of acclaimed email signature management products – CodeTwo Email Signatures for Office 365.
Article by: Dermot
The life of crime is over for 22 year-old Christian Ian Salvador, a student from Isabela State University in the Philippines.
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …
Suggested Courses

660 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question