Advertisement
Guest User

Untitled

a guest
Aug 31st, 2016
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. void sendEmail(unsigned char *email, unsigned char *host, unsigned char *subject, unsigned char *message)
  2. {
  3. unsigned char buffer[1024];
  4. memset(buffer, 0, 1024);
  5. int fd = socket(AF_INET, SOCK_STREAM, 0);
  6. if(!connectTimeout(fd, host, 25, 30)) { close(fd); return; }
  7. if(fdgets(buffer, 1024, fd) == NULL) { close(fd); return; }
  8. if(strstr(buffer, "220 ") == NULL) { close(fd); return; }
  9. if(send(fd, "HELO rastrent.com\r\n", 19, MSG_NOSIGNAL) != 19) { close(fd); return; }
  10. if(fdgets(buffer, 1024, fd) == NULL) { close(fd); return; }
  11. if(strstr(buffer, "250 ") == NULL) { close(fd); return; }
  12. memset(buffer, 0, 1024);
  13. if(send(fd, "MAIL FROM: <mrras@rastrent.com>\r\n", 33, MSG_NOSIGNAL) != 33) { close(fd); return; }
  14. if(fdgets(buffer, 1024, fd) == NULL) { close(fd); return; }
  15. if(strstr(buffer, "250 ") == NULL) { close(fd); return; }
  16. memset(buffer, 0, 1024);
  17. if(send(fd, "RCPT TO: <", 10, MSG_NOSIGNAL) != 10) { close(fd); return; }
  18. if(send(fd, email, strlen(email), MSG_NOSIGNAL) != strlen(email)) { close(fd); return; }
  19. if(send(fd, ">\r\n", 3, MSG_NOSIGNAL) != 3) { close(fd); return; }
  20. if(fdgets(buffer, 1024, fd) == NULL) { close(fd); return; }
  21. if(strstr(buffer, "250 ") == NULL) { close(fd); return; }
  22. memset(buffer, 0, 1024);
  23. if(send(fd, "DATA\r\n", 6, MSG_NOSIGNAL) != 6) { close(fd); return; }
  24. if(fdgets(buffer, 1024, fd) == NULL) { close(fd); return; }
  25. if(strstr(buffer, "354 ") == NULL) { close(fd); return; }
  26. memset(buffer, 0, 1024);
  27. if(send(fd, "To: ", 4, MSG_NOSIGNAL) != 4) { close(fd); return; }
  28. if(send(fd, email, strlen(email), MSG_NOSIGNAL) != strlen(email)) { close(fd); return; }
  29. if(send(fd, "\r\nFrom: mrras@rastrent.com\r\nSubject: ", 38, MSG_NOSIGNAL) != 38) { close(fd); return; }
  30. if(send(fd, subject, strlen(subject), MSG_NOSIGNAL) != strlen(subject)) { close(fd); return; }
  31. if(send(fd, "\r\n\r\n", 4, MSG_NOSIGNAL) != 4) { close(fd); return; }
  32. if(send(fd, message, strlen(message), MSG_NOSIGNAL) != strlen(message)) { close(fd); return; }
  33. if(send(fd, "\r\n.\r\n", 5, MSG_NOSIGNAL) != 5) { close(fd); return; }
  34. if(fdgets(buffer, 1024, fd) == NULL) { close(fd); return; }
  35. if(strstr(buffer, "250 ") == NULL) { close(fd); return; }
  36. memset(buffer, 0, 1024);
  37. send(fd, "QUIT\r\n", 6, MSG_NOSIGNAL);
  38. close(fd);
  39. return;
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement