smtplib, auth and covad

D

David Geller

Hi,

I had been using smptlib to send email via my covad relay previously (several months ago), and it worked fine. Covad requires authentication, and this was accomplished fine with smtp.login(usrname, pwd).

Today when I tried the program, it stopped working. Using the smtp debug option, I determined that when

send: 'AUTH PLAIN abcdef\r\n'

I would get the exception:

smtplib.SMTPServerDisconnected: Connection unexpectedly closed


Soooooo, it turns out that the covad mail server does not like to have the base64 username/password in the same line as the AUTH PLAIN. While it appears that the RFC2554 allows for this, covad does not (anymore).

I had to modify smtplib.login() to do the following:

send 'AUTH PLAIN'
wait for status code 334
send the base64 username/password
wait for status code 235

--------------------------------------- CODE
elif authmethod == AUTH_PLAIN:
(code, resp) = self.docmd("AUTH", AUTH_PLAIN)
if code != 334:
raise SMTPAuthenticationError(code, resp)
(code, resp) = self.docmd(encode_plain(user, password),"")
-------------------------------------------------

Question: should the official smtplib be modified to allow for this situation?

(Python 2.3)

Thanks!

David Geller
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,020
Latest member
GenesisGai

Latest Threads

Top