Advertisement
Guest User

Untitled

a guest
Mar 4th, 2018
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.97 KB | None | 0 0
  1. from socket import *
  2. import base64
  3. import time
  4.  
  5. msg = "\r\n I love computer networks!"
  6. endmsg = "\r\n.\r\n"
  7. mailserver = ("smtp.gmx.com", 25) #Fill in start #Fill in end
  8. clientSocket = socket(AF_INET, SOCK_STREAM)
  9. clientSocket.connect(mailserver)
  10. recv = clientSocket.recv(1024)
  11. recv = recv.decode()
  12. print("Message after connection request:" + recv)
  13. if recv[:3] != '220':
  14.     print('220 reply not received from server.')
  15. heloCommand = 'EHLO Alice\r\n'
  16. clientSocket.send(heloCommand.encode())
  17. recv1 = clientSocket.recv(1024)
  18. recv1 = recv1.decode()
  19. print("Message after EHLO command:" + recv1)
  20. if recv1[:3] != '250':
  21.     print('250 reply not received from server.')
  22.  
  23. #Info for username and password
  24. username = "xxxxxx"
  25. password = "xxxxxx"
  26. base64_str = ("\x00"+username+"\x00"+password).encode()
  27. base64_str = base64.b64encode(base64_str)
  28. authMsg = "AUTH PLAIN ".encode()+base64_str+"\r\n".encode()
  29. clientSocket.send(authMsg)
  30. recv_auth = clientSocket.recv(1024)
  31. print(recv_auth.decode())
  32.  
  33. mailFrom = "MAIL FROM:<xxxxxxxx>\r\n"
  34. clientSocket.send(mailFrom.encode())
  35. recv2 = clientSocket.recv(1024)
  36. recv2 = recv2.decode()
  37. print("After MAIL FROM command: "+recv2)
  38. rcptTo = "RCPT TO:<xxxxxxxxxx>\r\n"
  39. clientSocket.send(rcptTo.encode())
  40. recv3 = clientSocket.recv(1024)
  41. recv3 = recv3.decode()
  42. print("After RCPT TO command: "+recv3)
  43. data = "DATA\r\n"
  44. clientSocket.send(data.encode())
  45. recv4 = clientSocket.recv(1024)
  46. recv4 = recv4.decode()
  47. print("After DATA command: "+recv4)
  48. subject = "Subject: testing my client\r\n\r\n"
  49. clientSocket.send(subject.encode())
  50. date = time.strftime("%a, %d %b %Y %H:%M:%S +0000", time.gmtime())
  51. date = date + "\r\n\r\n"
  52. clientSocket.send(date.encode())
  53. clientSocket.send(msg.encode())
  54. clientSocket.send(endmsg.encode())
  55. recv_msg = clientSocket.recv(1024)
  56. print("Response after sending message body:"+recv_msg.decode())
  57. quit = "QUIT\r\n"
  58. clientSocket.send(quit.encode())
  59. recv5 = clientSocket.recv(1024)
  60. print(recv5.decode())
  61. clientSocket.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement