Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2016
483
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.18 KB | None | 0 0
  1. from socket import *
  2. msg = "\r\n I love computer networks!"
  3. endmsg = "\r\n.\r\n"
  4. # Choose a mail server (e.g. Google mail server) and call it mailserver
  5. mailserver = ("smtp.gmx.com", 25) #Fill in start #Fill in end
  6. # Create socket called clientSocket and establish a TCP connection with mailserver
  7. #Fill in start
  8. clientSocket = socket(AF_INET,SOCK_DGRAM)
  9. clientSocket.connect(mailserver)
  10. #Fill in end
  11. recv = clientSocket.recv(1024).decode()
  12. print(recv)
  13. if recv[:3] != '220':
  14. print('220 reply not received from server.')
  15. # Send HELO command and print server response.
  16. heloCommand = 'HELO Alice\r\n'
  17. clientSocket.send(heloCommand.encode())
  18. recv1 = clientSocket.recv(1024).decode()
  19. print(recv1)
  20. if recv1[:3] != '250':
  21. print('250 reply not received from server.')
  22.  
  23. # Send MAIL FROM command and print server response.
  24. # Fill in start
  25. mailFrom = "Mail From: <fhool@uci.edu>\r\n"
  26. clientSocket.send(mailFrom)
  27. recv2 = clientSocket.recv(1024)
  28. recv2 = recv2.decode()
  29. print("After Mail From: " + recv2)
  30. # Fill in end
  31. # Send RCPT TO command and print server response.
  32. # Fill in start
  33. rcptTo = "RCTP to:<fhool@uci.edu>\r\n"
  34. clientSocket.send(rcptTo.encode())
  35. recv3 = clientSocket.recv(1024)
  36. recv3 = recv3.decode()
  37. print("After RCPT: " + recv3)
  38. # Fill in end
  39. # Send DATA command and print server response.
  40. # Fill in start
  41. data = "DATA\r\n"
  42. clientSocket.send(data.encode())
  43. recv4 = clientSocket.recv(1024)
  44. recv4 = recv4.decode()
  45. print("After DATA command: "+recv4)
  46. # Fill in end
  47. # Send message data.
  48. # Fill in start
  49. subject = "Subject: testing my client\r\n\r\n"
  50. clientSocket.send(subject.encode())
  51. date = time.strftime("%a, %d %b %Y %H:%M:%S +0000", time.gmtime())
  52. date = date + "\r\n\r\n"
  53. # Fill in end
  54. # Message ends with a single period.
  55. # Fill in start
  56. clientSocket.send(date.encode())
  57. clientSocket.send(msg.encode())
  58. clientSocket.send(endmsg.encode())
  59. recv_msg = clientSocket.recv(1024)
  60. print("Response after sending message body:"+recv_msg.decode())
  61. # Fill in end
  62. # Send QUIT command and get server response.
  63. # Fill in start
  64. quit = "QUIT\r\n"
  65. clientSocket.send(quit.encode())
  66. recv5 = clientSocket.recv(1024)
  67. print(recv5.decode())
  68. clientSocket.close()
  69. # Fill in end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement