
我们俩的联系方式![]()
Similar entries
友情链接导航 |
Milter 协议
由 qyb 于 星期三, 2007-08-15 18:30 发表
milter 是个好东东,但不知道出于什么样阴暗的心理,sendmail 的家伙们居然一直没有把这么重要的协议整理出正式的文档。开发者要么去使用 libmilter 函数库,要么老老实实去啃代码吧。 libmilter 应该说也实现的不错,而且还有 python binding,但它自己实现了一个事件循环,让现在酷爱 Twisted 的俺稍稍有些不爽。 感谢为 Milter 写 Perl 模块的程序员,也随代码同时提供了一封非官方的 milter protocol 说明。在这份文档的帮助下,很快就在 Twisted 框架下实现了 Milter Server 的骨架,大概 200 行代码吧。 Milter 协议最核心的就是:所有的 packet 都是首先 4 个字节表示接下来数据的长度,然后分析数据即可。另外就是在实践中发现一次 recv 中出现了两个甚至更多的 packet,协议分析需要注意。 另: twisted 2.5 的 epoll 似乎 memory leak 的厉害,本来想建议用 gc module 来试着解决的,结果换回缺省的 selectreactor 就好了 |
最新评论
1 小时 3 分钟之前
1 周 3 天之前
1 周 5 天之前
1 周 6 天之前
8 周 5 天之前
8 周 5 天之前
8 周 6 天之前
11 周 22 小时之前
11 周 1 天之前
12 周 10 小时之前