smtp邮件服务器实验报告及源代码

smtp邮件服务器实验报告及源代码

ID:16717633

大小:599.48 KB

页数:14页

时间:2018-08-24

smtp邮件服务器实验报告及源代码_第1页
smtp邮件服务器实验报告及源代码_第2页
smtp邮件服务器实验报告及源代码_第3页
smtp邮件服务器实验报告及源代码_第4页
smtp邮件服务器实验报告及源代码_第5页
资源描述:

《smtp邮件服务器实验报告及源代码》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、SMTP邮件服务器实验1.实验内容和实验环境描述实验任务:使用SocketAPI编写一个SMTP邮件服务器程序实验内容:1)作为SMTP服务器,接收邮件客户端程序的TCP连接请求,接收SMTP命令和邮件数据,将邮件保存在文件中;2)作为SMTP客户端,建立到实际邮件服务器的TCP连接,发送SMTP命令,将保存的邮件发送给实际邮件服务器;3)提供邮件差错报告:将实际邮件服务器的差错报告转发给邮件客户端软件;4)支持一封邮件多个接收者,要求接收者属于不同的域(如bupt.edu.cn、163.com、aliyun.com

2、,…);5)提供发件人和收件人Email地址格式检查功能,例如下列邮件地址是错误的:chengli,chengli@,bupt.edu.cn,….。实验环境:MicrosoftVisualStudio20102.软件设计(1)数据结构:charmail_from[4096];//存发件地址charrcpt_to[5][4096];//存收件地址chardata[4096];//存Datacharimf[4096];//存邮件标准格式WORDA;//加载套接字库WSADATAB;//储存调用WSAStartup函数返回

3、的WindowsSockets初始化信息interr;//报错标志SOCKETsockSrv;//创建用于监听客户端的套接字SOCKADDR_INaddrSrv;//作为服务器端的socket地址charrecvBuf[4096]="";//接收客户端SMTP指令(2)模块结构:[1]main();//服务器端,用于从客户端接收储存邮件[2]main_clicenet(SOCKETs);//客户端,用于将收到的邮件转发到邮件服务器,同时将邮件服务器的错误报告通过SOCKETs转发给客户端[3]ValidEmail(c

4、har*addr);//收发件地址(addr)合法性监测(3)算法流程:画出流程图,描述算法的主要流程。otherstaffoftheCentre.Duringthewar,ZhuwastransferredbacktoJiangxi,andDirectorofthenewOfficeinJingdezhen,JiangxiCommitteeSecretary.Startingin1939servedasrecorderoftheWestNorthOrganization,SecretaryoftheSpecialC

5、ommitteeAfterthevictoryofthelongMarch,hehasbeentheNorthwestOfficeoftheFederationofStateenterprisesMinister,ShenmufuguSARmissions,DirectorofNingxiaCountypartyCommitteeSecretaryandrecorderoftheCountypartyCommitteeSecretary,Ministersand13/14Main()LoadWindowsSocket

6、s;创建用于监听的socket;绑定socket和sockaddr;将socket设为监听模式;While(1)请求队列非空则抽取第一个链接建立连接;打开邮件储存文件;Send:220recv:EHLO;Send:250OKrecv:MAILFROM:<...>T发件地址合法FSend:550InvalidUser;continueSend:250OKrecv:RCPTTO:<....>;检查合法性While(recv!=DATA)recv:RCPTTO:<....>;检查合法性Send:250OKRecv:DATA

7、send:354Startmailinput;endwith.rrecv:DATAfragment,...bytesSend:250recv:IMF;send250recv:.Send:QUIT调用客户端程序关闭套接字关闭文件指针释放分配的套接字资源(4)主要功能模块的实现要点[1]main();//服务器端,用于从客户端接收储存邮件实现要点:与客户端建立连接,根据SMTP协议标准进行通信。[2]main_clicenet(SOCKETs);//客户端,用于将收到的邮件转发到邮件

8、服务器,同时将邮件服务器的错误报告通过SOCKETs转发给客户端实现要点:与服务器端建立连接,根据SMTP协议标准进行通信。[3]ValidEmail(char*addr);//收发件地址(addr)合法性监测实现要点:根据标准email地址格式进行合法性监测3实验结果演示及分析(1)对于你所实现的功能,逐个进行测试,并将输出截图。普通邮件群发

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。