Hello.
eMule creates incorrect links for files which size is divisible by 9728000 (9500 * 1024) (9.28 MB).
1) I created 3 random files with size of 9728000 bytes. Then I created links for these files using eMule (Shared Files -> Reload):
ed2k://|file|0.bin|9728000|00000000000000000000000000000000|h=BW6PJSPSWQHGXQZM3K34VDVRL4WQSXGN|/
ed2k://|file|1.bin|9728000|00000000000000000000000000000000|h=JTFG3GALWGTNHYQV2LIZTWFWJ2BJHOJ3|/
ed2k://|file|2.bin|9728000|00000000000000000000000000000000|h=5ZAMTHGWQOKYPZ44YBR4ZZLCKEMR5GV5|/
eMule showed only the first file. It thinks that these files are equal.
Then I created links for these files using eMule Link Creator v0.7:
ed2k://|file|0.bin|9728000|A5D6CD16A61D5CE78442C55963D8E3CB|h=BW6PJSPSWQHGXQZM3K34VDVRL4WQSXGN|/
ed2k://|file|1.bin|9728000|AB72B9A2AF56A99792DB4CC002369B9E|h=JTFG3GALWGTNHYQV2LIZTWFWJ2BJHOJ3|/
ed2k://|file|2.bin|9728000|917F93CBA14E62A0AA91BDDF3668F45E|h=5ZAMTHGWQOKYPZ44YBR4ZZLCKEMR5GV5|/
2) For files with size of two or more parts of 9.28 MB, eMule doesn't append MD4 hash of a blank string to the file Hashset.
eMule:
ed2k://|file|3.bin|19456000|54857656761F1EB2A56B90E306976367|h=DNL2GHKFYOV35H2ICMQWOOKIEVP7PAMI|/
eMule Link Creator:
ed2k://|file|3.bin|19456000|AA2D3F8B321065E1C4E45414C9DDEE7F|h=DNL2GHKFYOV35H2ICMQWOOKIEVP7PAMI|/
Page 1 of 1
V0.70a Incorrect File Links (hashes) Incorrect links for files which size is divisible by 9728000
#2
Posted 02 August 2024 - 07:19 PM
Thanks for your investigation and report.
Fix for the issue should be in the next build.
Fix for the issue should be in the next build.
#4
Posted 03 August 2024 - 05:18 PM
#5
Posted 04 August 2024 - 02:49 PM
emule_user_downunder, on 03 August 2024 - 08:18 PM, said:
This bug is in CKnownFile::CreateFromFile and was introduced in version 0.70a.
This post has been edited by BuyukBang: 04 August 2024 - 02:53 PM
I’m working on a new project based on eMule v0.70b Community Release, planning to release it by the end of 2024. # SCREENSHOTS # List of completed features:
IPv6 Support & UTP NAT Traversal: Enables IPv6 and LowID to LowID transfers between mod users. (Improved version of David Xanatos’s reference implementation)
Client History: Stores and reloads all clients. Enables long-term banning/punishment intervals, tracking suspicious activities, editable client notes, shared files statistics.
Protection Panel: Detects 28 types of bad clients, bans/punishes with 12 levels. Uses customizable text-based definitions within Shield.conf instead of binary DLP.dll.
Blacklist Panel: Keyword-based file blacklisting for search results. Very fast (Processes 850+ definitions on search results under 1 sec).
Download Checker: Skips known/downloaded/canceled downloads automatically by checking file name similarities and file hashes.
Files List: Lists and categorizes all known files and duplicate files. Fast loading (Loads 200k items under 1 sec).
GeoLite2: Replaced legacy IP2Country, supports IPv6, lists both cities and countries.
Several Connection Tweaks: A fast and reliable connection checker; retry failed TCP connection attempts; reask sources & inform queued clients after IP change.
Empty Fake File & DRM Detection: Automatically removes trash files from the download list.
Fast Kad: Provides much faster KAD searches comparable to eServer search speed.
Auto Query Shared Files: A new way of finding files!
Highly Responsive GUI, Automatic File Extension Correction, Automatic & Manual Saving All App Data, Added Column Filters To All Lists, Intelligent Chunk Selection, Client Emulation, Selectable Credit Systems, Save & Load File Sources, And many more additional features, bug fixes and optimizations…
To do: IPv6 support for KAD, NAT-T support for eServer, Dark Mode, more...
IPv6 Support & UTP NAT Traversal: Enables IPv6 and LowID to LowID transfers between mod users. (Improved version of David Xanatos’s reference implementation)
Client History: Stores and reloads all clients. Enables long-term banning/punishment intervals, tracking suspicious activities, editable client notes, shared files statistics.
Protection Panel: Detects 28 types of bad clients, bans/punishes with 12 levels. Uses customizable text-based definitions within Shield.conf instead of binary DLP.dll.
Blacklist Panel: Keyword-based file blacklisting for search results. Very fast (Processes 850+ definitions on search results under 1 sec).
Download Checker: Skips known/downloaded/canceled downloads automatically by checking file name similarities and file hashes.
Files List: Lists and categorizes all known files and duplicate files. Fast loading (Loads 200k items under 1 sec).
GeoLite2: Replaced legacy IP2Country, supports IPv6, lists both cities and countries.
Several Connection Tweaks: A fast and reliable connection checker; retry failed TCP connection attempts; reask sources & inform queued clients after IP change.
Empty Fake File & DRM Detection: Automatically removes trash files from the download list.
Fast Kad: Provides much faster KAD searches comparable to eServer search speed.
Auto Query Shared Files: A new way of finding files!
Highly Responsive GUI, Automatic File Extension Correction, Automatic & Manual Saving All App Data, Added Column Filters To All Lists, Intelligent Chunk Selection, Client Emulation, Selectable Credit Systems, Save & Load File Sources, And many more additional features, bug fixes and optimizations…
To do: IPv6 support for KAD, NAT-T support for eServer, Dark Mode, more...
Page 1 of 1