Re: 让aMule支持DLP的源码补丁(1月24日更新了~)
发表于 : 2010-02-21 16:23
这回的编译过了,但是minimule和easymule2的选项没了啊,是都直接modstring_soft了?
根据SDC的说法,easyMule2和miniMule已经被zz_fly(eMule Xtreme Mod、官方DLP的开发者)确认为吸血骡,所以这次就不提供选项了。happyaron 写了:这回的编译过了,但是minimule和easymule2的选项没了啊,是都直接modstring_soft了?
Bill Lee 写了:DLP3905更新了
更新说明:这次改动较大,所以呢,就把版本号直接定为 3905
- 把所有检测移动到 BaseClient ,并修正了从吸血客户端下载的 bug
- 增加了对幽灵客户端( Ghost Mod )的检测
- 跟随 SDC-39005-Develop1 更新了 antiLeech
- 增加对Fake Shareaza、Wrong Hello Order(detect a German leecher) 的检测
到现在,可以说 DLP 已经移植得差不多了,目前还剩下的问题有现在我也读高二第二学期了,没多少时间可以上网了,希望有人能继续 DLP 的开发。
- 由于平台问题,对 Fake ModString 的检测未能实现
- 封杀吸血骡时采用封 IP 的方式,可能株连使用 NAPT 网关的其他客户端(这是 aMule 本来存在的问题)
- antiLeech 未能模块化,理想的方式是以动态库的形式加载,就和 eMule 一样(这要研究动态库、还要可能要修改Makefile)
- 部分杂项检测还未加入
对了忘记说,SDC的Develop版本的检测其实只是我一时兴起才写出来的,并没有经过像官方DLP那种长期的测试,而且有时候比较容易产生误杀,所以如果是稳定版那么建议就不要加入那些检测了……Bill Lee 写了:DLP3905更新了
更新说明:这次改动较大,所以呢,就把版本号直接定为 3905
- 把所有检测移动到 BaseClient ,并修正了从吸血客户端下载的 bug
- 增加了对幽灵客户端( Ghost Mod )的检测
- 跟随 SDC-39005-Develop1 更新了 antiLeech
- 增加对Fake Shareaza、Wrong Hello Order(detect a German leecher) 的检测
到现在,可以说 DLP 已经移植得差不多了,目前还剩下的问题有现在我也读高二第二学期了,没多少时间可以上网了,希望有人能继续 DLP 的开发。
- 由于平台问题,对 Fake ModString 的检测未能实现
- 封杀吸血骡时采用封 IP 的方式,可能株连使用 NAPT 网关的其他客户端(这是 aMule 本来存在的问题)
- antiLeech 未能模块化,理想的方式是以动态库的形式加载,就和 eMule 一样(这要研究动态库、还要可能要修改Makefile)
- 部分杂项检测还未加入
模块化DLP这当然是需要做成跨平台的……就像官方DLP用的是MFC写的,除非是大幅度改动代码,否则是没办法直接在其他系统使用的midoriumi 写了:Bill Lee 写了:DLP3905更新了
更新说明:这次改动较大,所以呢,就把版本号直接定为 3905
- 把所有检测移动到 BaseClient ,并修正了从吸血客户端下载的 bug
- 增加了对幽灵客户端( Ghost Mod )的检测
- 跟随 SDC-39005-Develop1 更新了 antiLeech
- 增加对Fake Shareaza、Wrong Hello Order(detect a German leecher) 的检测
到现在,可以说 DLP 已经移植得差不多了,目前还剩下的问题有现在我也读高二第二学期了,没多少时间可以上网了,希望有人能继续 DLP 的开发。
- 由于平台问题,对 Fake ModString 的检测未能实现
- 封杀吸血骡时采用封 IP 的方式,可能株连使用 NAPT 网关的其他客户端(这是 aMule 本来存在的问题)
- antiLeech 未能模块化,理想的方式是以动态库的形式加载,就和 eMule 一样(这要研究动态库、还要可能要修改Makefile)
- 部分杂项检测还未加入
模块化倒非难事,难在于aMule是跨平台的,我们模块化DLP要不要也做成扩平台的?如果只做支持Linux的话很简单,调那几个系统函数就行了。跨平台的话还要去研究其他操作系统如何动态加载动态库,那就麻烦了。
另外膜拜高二大牛……大四党惭愧飘过~毕业论文什么的太麻烦了
依然编译有问题:Bill Lee 写了:DLP3905更新了
更新说明:这次改动较大,所以呢,就把版本号直接定为 3905
- 把所有检测移动到 BaseClient ,并修正了从吸血客户端下载的 bug
- 增加了对幽灵客户端( Ghost Mod )的检测
- 跟随 SDC-39005-Develop1 更新了 antiLeech
- 增加对Fake Shareaza、Wrong Hello Order(detect a German leecher) 的检测
到现在,可以说 DLP 已经移植得差不多了,目前还剩下的问题有现在我也读高二第二学期了,没多少时间可以上网了,希望有人能继续 DLP 的开发。
- 由于平台问题,对 Fake ModString 的检测未能实现
- 封杀吸血骡时采用封 IP 的方式,可能株连使用 NAPT 网关的其他客户端(这是 aMule 本来存在的问题)
- antiLeech 未能模块化,理想的方式是以动态库的形式加载,就和 eMule 一样(这要研究动态库、还要可能要修改Makefile)
- 部分杂项检测还未加入
我在编译时也有这些信息,不过是 warning, 不是 error, 编译可以通过且函数重载正确,可以正确地工作。happyaron 写了:依然编译有问题:Bill Lee 写了:DLP3905更新了
更新说明:这次改动较大,所以呢,就把版本号直接定为 3905
- 把所有检测移动到 BaseClient ,并修正了从吸血客户端下载的 bug
- 增加了对幽灵客户端( Ghost Mod )的检测
- 跟随 SDC-39005-Develop1 更新了 antiLeech
- 增加对Fake Shareaza、Wrong Hello Order(detect a German leecher) 的检测
到现在,可以说 DLP 已经移植得差不多了,目前还剩下的问题有现在我也读高二第二学期了,没多少时间可以上网了,希望有人能继续 DLP 的开发。
- 由于平台问题,对 Fake ModString 的检测未能实现
- 封杀吸血骡时采用封 IP 的方式,可能株连使用 NAPT 网关的其他客户端(这是 aMule 本来存在的问题)
- antiLeech 未能模块化,理想的方式是以动态库的形式加载,就和 eMule 一样(这要研究动态库、还要可能要修改Makefile)
- 部分杂项检测还未加入
<!-- m --><a class="postlink" href="http://launchpadlibrarian.net/40047680/ ... /40047680/ ... ILD.txt.gz</a><!-- m -->
根据 warning 也可以看到重载匹配是正确的antiLeech.cpp: In function ‘const char* DLPCheckNameAndHashAndMod(CString, CString&, CString&)’:
antiLeech.cpp:1122: warning: unused variable ‘endpos’
antiLeech.cpp:1206: warning: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:
/usr/include/c++/4.4/bits/basic_string.h:735: note: candidate 1: typename _Alloc::rebind<_CharT>::other::reference std::basic_string<_CharT, _Traits, _Alloc>::operator[](typename _Alloc::rebind<_CharT>::other::size_type) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>]
antiLeech.cpp:1206: note: candidate 2: operator[](const char*, int) <built-in>
antiLeech.cpp:1206: warning: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:
/usr/include/c++/4.4/bits/basic_string.h:735: note: candidate 1: typename _Alloc::rebind<_CharT>::other::reference std::basic_string<_CharT, _Traits, _Alloc>::operator[](typename _Alloc::rebind<_CharT>::other::size_type) [with _CharT = char, _Traits = std::char_traits<char>, _Alloc = std::allocator<char>]
antiLeech.cpp:1206: note: candidate 2: operator[](const char*, int) <built-in>
antiLeech.cpp:1206: warning: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:
/usr/include/c++/4.4/bits/basic_string.h:735: note: candidate 1: typename _Alloc::rebind<_CharT>::other::reference std::basic_string<_CharT, _Traits, _Alloc>::operator[](typename _Alloc::rebind<_CharT>::other::size_type) [with _CharT = char, _Traits = std::char_traits<char>,