读书人

UUENCODE消息格式的SMTP分析,该如何处

发布时间: 2012-03-09 21:42:53 作者: rapoo

UUENCODE消息格式的SMTP分析
UUENCODE消息格式的SMTP分析
问题是使用邮件客户端发送邮件,如果发送的纯文本格式的UUENCODE编码的邮件
它有一下特点
1.没有Boundary
2.使用\r\n作为分隔符
3.附件以begin xxx filename.xxx开头

不知道这种邮件有没有官方的协议可查,目前我还没有看到,我只需要知道它的消息格式
比如,如何区分正文,附件的开始和结束

谢谢。

[解决办法]
UUENCODE编码:一些较老的邮件服务器上这种编码使用较多,目前的Ftp Mail等服务器也是使用此编码(如MrCool下载的文件等)。UUENCODE编码的主要特征是编码首行由BeginXXX开始,结束一行为End,且通常其中的每一行开始均为“M”,只要有了以上几个特征,就能确定是UUENCODE编码。
UUEncode相对MIME来讲似乎简单一些,如果有附件的话在正文后面会跟上附件,附件
的样子是这样的:
begin 600 seamail.exe
M.......
M.......
end

很明显的标志是begin 600 ,而且是一行的开头.你可以用CString::Find来查找
"\r\nbegin 600 "这个字符串,查找到 "\r\nend "则表明当前的附件编码数据已经
结束了.

得到的附件编码数据用UUEncode解码了,^_^,跟MIME解码差不多.

读书人网 >C++

热点推荐