📄 old_test.c
字号:
int main(void)
{
#if 0
// create socket
if( (sock_fd = socket(AF_INET, SOCK_STREAM, 0)) == -1 )
{
perror("Socket");
exit(1);
}
// bind address to the socket
serveraddr.sin_family = AF_INET;
serveraddr.sin_addr.s_addr = inet_addr(SMTPADDR);
serveraddr.sin_port = htons(SMTPPORT);
memset(&(serveraddr.sin_zero), '\0', 8);
// connect to server
if( connect(sock_fd, (struct sockaddr*)&serveraddr, sizeof(struct sockaddr)) == -1 )
{
perror("connect");
exit(0);
}
// receive server message
if( (n=recv(sock_fd, buf, MAXDATASIZE-1, 0)) == -1 )
{
perror("Recv");
exit(0);
}
buf[n]='\0';
dbgmsg("%s", buf);
strcpy(buf, "HELO sun.af.mil\r\n");
sendall(sock_fd, buf, strlen(buf));
sleep(1);
// receive server message
if( (n=recv(sock_fd, buf, MAXDATASIZE-1, 0)) == -1 )
{
perror("Recv");
exit(0);
}
buf[n]='\0';
dbgmsg("%s", buf);
strcpy(buf, "MAIL FROM:<");
strcat(buf, MAILFROM);
strcat(buf, ">\r\n");
sendall(sock_fd, buf, strlen(buf));
sleep(1);
// receive server message
if( (n=recv(sock_fd, buf, MAXDATASIZE-1, 0)) == -1 )
{
perror("Recv");
exit(0);
}
buf[n]='\0';
dbgmsg("%s", buf);
strcpy(buf, "RCPT TO:<");
strcat(buf, MAILTO);
strcat(buf, ">\r\n");
sendall(sock_fd, buf, strlen(buf));
sleep(1);
// receive server message
if( (n=recv(sock_fd, buf, MAXDATASIZE-1, 0)) == -1 )
{
perror("Recv");
exit(0);
}
buf[n]='\0';
dbgmsg("%s", buf);
strcpy(buf, "DATA\r\n");
sendall(sock_fd, buf, strlen(buf));
sleep(1);
// receive server message
if( (n=recv(sock_fd, buf, MAXDATASIZE-1, 0)) == -1 )
{
perror("Recv");
exit(0);
}
buf[n]='\0';
dbgmsg("%s", buf);
strcpy(buf, "Date: ");
strcat(buf, MAILDATE);
strcat(buf, "\r\n");
strcat(buf, "From: ");
strcat(buf, MAILFROM);
strcat(buf, "\r\n");
strcat(buf, "To: ");
strcat(buf, MAILTO);
strcat(buf, "\r\n");
sendall(sock_fd, buf, strlen(buf));
// open file and send
if( (infile = fopen(ATTACHMENT, "r")) == NULL )
{
perror("Open");
exit(0);
}
fseek(infile, 0, SEEK_SET); // seek to beginning
// MIME encode and output to temporary file TMPFILE
encode(infile, (FILE *)0, ATTACHMENT, MAILMSG, MAILSUBJECT, headers,
maxsize, ctype, TMPFILE);
usleep(500);
// open MIME file
if( (fp = fopen(TMPFILE, "r")) == NULL )
{
perror("Open");
exit(0);
}
rewind(fp);
// send out the MIME file
while( feof(fp)==0 )
{
n=fread(&raw, 1, 1, fp);
sendall(sock_fd, &raw, 1);
}
// end of mail
strcpy(buf, "\r\n.\r\n");
sendall(sock_fd, buf, strlen(buf));
sleep(1);
// delete tmporary file
fclose(fp);
unlink(TMPFILE);
// receive server message
if( (n=recv(sock_fd, buf, MAXDATASIZE-1, 0)) == -1 )
{
perror("Recv");
exit(0);
}
buf[n]='\0';
dbgmsg("%s", buf);
// quit
strcpy(buf, "QUIT\r\n");
sendall(sock_fd, buf, strlen(buf));
sleep(1);
if( (n=recv(sock_fd, buf, MAXDATASIZE-1, 0)) == -1 )
{
perror("Recv");
exit(0);
}
buf[n]='\0';
dbgmsg("%s", buf);
close(sock_fd);
return 0;
#endif
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -