Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <winsock2.h>
- #include <windows.h>
- #include <stdio.h>
- void SendMail(const char* _From, const char* _To, const char* _SMTP,
- const char* _Subject, const char* _MessageFormat, ...) {
- int iProtocolPort = 0;
- char szBuffer[4096] = "";
- SOCKET hServer;
- LPHOSTENT lpHostEntry;
- LPSERVENT lpServEntry;
- SOCKADDR_IN SockAddr;
- lpHostEntry = gethostbyname(_SMTP);
- if(!lpHostEntry) return ;
- if(hServer == INVALID_SOCKET) return ;
- lpServEntry = getservbyname("mail", 0);
- if(!lpServEntry) iProtocolPort = htons(IPPORT_SMTP);
- else iProtocolPort = lpServEntry->s_port;
- SockAddr.sin_family = AF_INET;
- SockAddr.sin_port = iProtocolPort;
- SockAddr.sin_addr = *((LPIN_ADDR) *lpHostEntry->h_addr_list);
- connect(hServer, (PSOCKADDR) &SockAddr, sizeof(SockAddr));
- printf("%d\n", WSAGetLastError());
- return ;
- recv(hServer, szBuffer, sizeof(szBuffer), 0);
- sprintf(szBuffer, "HELO %s\r\n", _SMTP);
- send(hServer, szBuffer, strlen(szBuffer), 0);
- recv(hServer, szBuffer, sizeof(szBuffer), 0);
- sprintf(szBuffer, "MAIL FROM:<%s>\r\n", _From);
- send(hServer, szBuffer, strlen(szBuffer), 0);
- recv(hServer, szBuffer, sizeof(szBuffer), 0);
- sprintf(szBuffer, "RCPT TO:<%s>\r\n", _To);
- send(hServer, szBuffer, strlen(szBuffer), 0);
- recv(hServer, szBuffer, sizeof(szBuffer), 0);
- sprintf(szBuffer, "DATA\r\n");
- send(hServer, szBuffer, strlen(szBuffer), 0);
- recv(hServer, szBuffer, sizeof(szBuffer), 0);
- sprintf(szBuffer, "Subject: %s\n", _Subject);
- send(hServer, szBuffer, strlen(szBuffer), 0);
- sprintf(szBuffer, "From: %s\n", _From);
- send(hServer, szBuffer, strlen(szBuffer), 0);
- sprintf(szBuffer, "To: %s\n\n", _To);
- send(hServer, szBuffer, strlen(szBuffer), 0);
- va_list message_parts;
- va_start(message_parts, _MessageFormat);
- char message[65536];
- vsprintf(message, _MessageFormat, message_parts);
- va_end(message_parts);
- send(hServer, message, strlen(message), 0);
- sprintf(szBuffer, "\r\n.\r\n");
- send(hServer, szBuffer, strlen(szBuffer), 0);
- recv(hServer, szBuffer, sizeof(szBuffer), 0);
- sprintf(szBuffer, "QUIT\r\n");
- send(hServer, szBuffer, strlen(szBuffer), 0);
- recv(hServer, szBuffer, sizeof(szBuffer), 0);
- closesocket(hServer);
- return ;
- }
- int main(void) {
- WSADATA wsaData;
- int iResult;
- iResult = WSAStartup(MAKEWORD(2, 2), &wsaData);
- if(!SendMail("juip782@gmail.com", "juip782@gmail.com", "smtp.googlemail.com", "buka", "buka")) printf("abc\n");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement