Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python3
- import smtplib
- import email
- from email.mime.text import MIMEText
- import random
- import os
- import sys
- host = "smtp.example.com"
- user = "your_username"
- password = "your_password"
- default_from = "from@example.com"
- indirect_to = "to@somewhere-else.com"
- def test_message(mto = "tzs@tzs.net", mfrom = default_from):
- tag = str(os.getpid()) + "." + str(random.randint(1, 1000000))
- msg = MIMEText("test message body " + tag)
- msg['Subject'] = "test " + tag
- msg['To'] = mto
- msg['From'] = mfrom
- msg['Date'] = email.utils.formatdate(localtime=True)
- return msg
- def test25_direct():
- try:
- server = smtplib.SMTP(host, 25)
- server.set_debuglevel(1)
- msg = test_message()
- server.send_message(msg)
- server.quit()
- except:
- print("direct 25 failed:", sys.exc_info()[0])
- def test25_indirect():
- try:
- server = smtplib.SMTP(host, 25)
- server.set_debuglevel(1)
- msg = test_message(indirect_to)
- server.send_message(msg)
- server.quit()
- except:
- print("indirect 25 failed:", sys.exc_info()[0])
- def test25_direct_ssl():
- try:
- server = smtplib.SMTP_SSL(host, 465)
- server.set_debuglevel(1)
- server.login(user, password)
- msg = test_message()
- server.send_message(msg)
- server.quit()
- except:
- print("direct 465 SSL failed:", sys.exc_info()[0])
- def test25_indirect_ssl():
- try:
- server = smtplib.SMTP_SSL(host, 465)
- server.set_debuglevel(1)
- server.login(user, password)
- msg = test_message(indirect_to)
- server.send_message(msg)
- server.quit()
- except:
- print("indirect 465 SSL failed:", sys.exc_info()[0])
- def test25_direct_starttls():
- try:
- server = smtplib.SMTP(host, 587)
- server.set_debuglevel(1)
- server.starttls()
- server.login(user, password)
- msg = test_message()
- server.send_message(msg)
- server.quit()
- except:
- print("direct 587 STARTTLS failed:", sys.exc_info()[0])
- def test25_indirect_starttls():
- try:
- server = smtplib.SMTP(host, 587)
- server.set_debuglevel(1)
- server.starttls()
- server.login(user, password)
- msg = test_message(indirect_to)
- server.send_message(msg)
- server.quit()
- except:
- print("indirect 587 STARTTLS failed:", sys.exc_info()[0])
- #print(test_message())
- #test25_direct()
- #test25_indirect()
- #test25_direct_ssl()
- #test25_indirect_ssl()
- #test25_direct_starttls()
- #test25_indirect_starttls()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement