27.02.2004 20:51 by Ornis
Dear Users!
Finally, the Kademlia supporting eMule v0.42a is open available for all users. The imlemented Kademlia protocol allows eMules to work also without any server. (optional)
Nevertheless we want to point out, that this is an alpha version. Since this version is quite new to the large userbase, the Kad-network is disabled by default, but all curious users and testers can enabled it in the connection preferences.
This was a relative long time since the previous release. The delay is based on the major coding efforts for this new version, but also because of a lack of time for some devs and the known legal hassle recently.
So, enjoy the new version! :)
Download page
Your eMule-Team
The changelog since the last testversion:
-Ornis: Several minor corrections on the GUI
-bluecow: Several changes and optimizations to verbose log options.
-Unk: Hopefully reduced keyword overhead some more by only publishing complete files.
-bluecow: Added new connection state icon showing seperate eD2K and Kad network connection state and seperate LowID/HighID.
-bluecow: Added new AVI file parsing code for getting attributes in File Info dialog.
-bluecow: Added a thread for getting audio/video attributes of multiple files when using File Info dialog.
-bluecow: Added optional support for MediaInfoLib (
http://mediainfo.sourceforge.net) for viewing audio/video attributes of part and shared files. This feature is optional and will only be used if version 0.4.0.1 of MediaInfoLib (MediaInfo.DLL) is copied to eMule application folder.
-bluecow: Added merging of audio/video attributes in File Info dialog. All audio/video attributes from all selected (part) files are merged to verify if selected files are of same audio/video format.
-bluecow: Added new column to search results showing local file info.
-bluecow: Search type or shared files list request is shown in each search results tab.
bluecow: Added automatic creation of 'downloads.txt' file in eMule application folder. This file holds the current part file names and related ed2k links to recover more easily after lost part.met files.
-bluecow: Windows thumbs.db files with missing system file attribute are no longer shared.
-bluecow: Thoroughly handling of max. nick name length.
-bluecow: Tweaked tab controls in server window/chat window to show unread log/chat messages.
-bluecow: Added caching of webservices menu entries.
-bluecow: Fixed multi threading issue with file completion.
-bluecow: Fixed some problems with duplicate entries in known file list and shared file list.
-bluecow: Added a lot of protocol logging and debugging code.
-bluecow: Several optimizations in processing search expressions for keyword index.
-bluecow: Reworked UDP socket exception handling.
-Unk: Split source and keyword indexing to allow specific tweaking later.
-bluecow: Added more logging options in Extended Settings.
-Unk: Kad now allows smaller local networks if you turn off LANIP filtering. (This should only be used for debuging and testing)
-Unk: A lot of Kad has been converted to use CSafeMemFile.. To finish converting all, we need to convert the Kad's Tags and Kad's Taglist to work with it..
-Unk: When duplicates are found in the KnownFileList, the stats are now merged..
-bluecow: Reworked internal storage of preferences.
-bluecow: Fixed bug with downloads added from search result in paused mode which dropped possible found sources.
-unk: Redid the knownfilelist.. Before you could have multi entires.
-bluecow: Fixed bug with Kad keyword publishing list due to renaming a shared file which was completed in current session.
-bluecow:Fixed bug in Kad search with implicit ANDed search expressions.
-.: Merging of the extended trayicon menue [eMule+]
-bluecow: Reworked IP filter
- Optimized IP filter lookup for less CPU load.
- Optimized loading of IP filter files.
- Added merge of overlapping and adjacent filter ranges.
- More safety in determining format of IP filter files (support for eMule IP filter and PeerGuardian file formats).
- More tolerance in eMule IP filter format files (level and description is now optional).
- Added IP filter dialog for basic editing and viewing IP filters (accessible via Tool menu).
- Added IP filter rule hit statistics.
-Unk: Fixed a bug in the UDP port that resent UDP packets to dead clients.
-Unk: Major rewrite of the Kad code..
- Kad is now part of eMule's thread so we don't have to worry about Sync issues.
- Although many will say that this is a performance loss, I feel the the simplification of the code out ways this.
- Kad will now use eMule's UDP port (And eMule's TCP port in the future) instead of their own.
-bluecow: New data (packet + files) processing code for less CPU load.
-Unk: Fixed a few issues that occured when a partfile became a complete file.
-bluecow: Fixed bug with wrong category directory shown for new created downloads.
-bluecow: Fixed printf-flaw with category directories.
-bluecow: Fixed problem with empty file data packets which could corrupt the gap list.
-bluecow: Fixed timing issue in PerfLog module.
-bluecow: Fixed statistics bug with ICH in download session category.
-bluecow: Fixed: If the very first downloaded part of a file was recovered by ICH, the file was though not shared until another part was completed without ICH.
-Unk: Incoming ExtendedFileInfo was done without checking the version number.
- This fix seems to have found that a couple older eMule Mods and Shareaza (And maybe a some other mods) are sending the wrong version number here.
- They say they support the ExtendedFileInfo which makes us send the our info, but they in return do not send it to us when we are expecting it..
-Unk: A part of the ED2K protocol has been redone into a eMule protocol. This allows us to do several ED2K type packets with just one packet hopeing to save overhead.
-Unk: The UDP file reask now updates the FileStatus and it transmits all the ExtendedFileInfo.
-Unk: File reasks have been extended for less overhead.
-Unk: Source exchange times have been adjusted for less overhead. (May have to set the received source request time check back to older values so older clients don't suffer. Needs testing.)
-Unk: The switch for processing sources for a download had some fall through bugs.
-Unk: There was a bug the allowed the client to send a UDP and TCP file reask at the same time.
-Unk: NNP sources was allowed to do a UDP reask which does not update our chunk info.. So, this was a wasted packet..
-Unk: It was possible (But unlikely) for the client to send a UDP reask to a client he has never done a TCP reask..
-Unk: AskForDownload() now returns a result so we know if the source was deleted.
-Unk: Only count sent Kad overhead that was actually sent, not queued or failed..
-Unk: Clients even without a valid file request could still get on the queue.
-Unk: There were three different methods creating a per file upload list. Some of them rebuilt this list each time needed. We now maintain an upload list per each client in real time to avoid this.
- Update: there is a bug that allows the same file to be in the KnownFileList.. This messes up this real time management..
- For the moment, there is a debug code in the client the saves from creating dangling pointers..
- This code will be removed once we fix the issues..
-Unk: Source exhange for a complete file is now like part files, you only send sources that has chunks the user needs.
-Ornis: IPFilter - file can be now in peerguardian-format as well
-Ornis: Preferences/Security: option to download the ipfilter-file from an URL
-Ornis: Fix: Handling of deleting files, which are currently into diskspace allocation
-bluecow: View Shared Files command of remote clients is disabled if client published that he does not support that feature.
-bluecow: Fixed bug in viewing shared files from remote client - shared part files were not shown.
-bluecow: Reduced memory usage of client instances #2.
-bluecow: Fixed Kad UDP socket usage to avoid loss of packets to send.
-bluecow: Optimized client listview controls for less CPU load.
-bluecow: Fixed several flaws in context menus, shortcuts and usage of middle mouse button.
-Unk: Try to filter self sources better.
-Unk: We receive all incoming Kad sources now. (Was a bug that blocked them if the file got a lot of sources from a server or source exchange)
-Unk: Again LowID Callbacks were messing up because of Kad and ED2K states. This is now checked more closly.
-Unk: Nodal searches for publishing extended to allow full publish. Nodal searches for sources is lessened to reduce overhead with very rare files.
-bluecow: Some changes for more proper Winsock initialisation and termination.
-bluecow: Fixed and added some statistics for file data transfer.
-Unk: Nodal lookups are now deleted with a delay when allowed. In other words, we try not to waste delayed incoming result packets.
-Unk: There is a bug with the experation timer to Nodal lookups when you exhausted all pending contacts.
-Unk: Keyword republishing is delayed longer to lower overhead.
The complete changlog with all the development stages and all changes since v0.30e can be viewed here.