patchmldonkey, a multi-networks file-sharing client - Patches: patch #5371, EDK: Support for eMule comments...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

patch #5371: EDK: Support for eMule comments (read-only)

Submitter:  Fabiano <fabtar>
Submitted:  Mon 04 Sep 2006 09:36:59 PM UTC
   
 
Category:  Improved interfaces Priority:  5 - Normal
Status:  Done Assigned to:  None
Open/Closed:  Closed

Jump to the original submission

Sat 23 Sep 2006 08:31:29 PM UTC, comment #14: 

Done in patch #5414

spiralvoice <spiralvoice>
Group administrator
Mon 11 Sep 2006 07:23:48 AM UTC, comment #13: 

"file descriptions are only sent when a download is
initiated, so I don't really understand the point of seeing
this stuff in search results"

"- display file rating in server search results (currently displayed in tags column)"

I was writing about the rating, not the comment. This is a
EDK server-only opcode also used by eMule (it displays a small
green icon in front of the filename if a rating is present). Rating
is already displayed as an unparsed tag in the right column, but
its parsed wrongly I suppose atm.


About the rest of your comment: You are absolutely right about it.
After using the patch a bit and thinking about how to implement
rating support I also thought to implement it the way you described, hence with file_ops. Torrents also have comments, its
only a string there.

Another point: Current MLDonkey uses a hashtable for file_magic
strings and another for comment strings. I am planing to merge
these strings tables into one to save a small bit more RAM.

spiralvoice <spiralvoice>
Group administrator
Sun 10 Sep 2006 11:32:54 PM UTC, comment #12: 

The commonFile structure is common to all files, hence its
name.  It should be kept as small as possible since it
applies to all files from all networks and sits in memory
for each and every one of them.  (I'm sure some junk is left
over from when mldonkey was only a donkey client though.)

When a network has a feature that is specific to its type of
files it is added to the structure in the specific plugin's
file structure.  It would be a waste to add it to commonFile
(as well as awkward to work with). I understand that it can
work (lots of bad code can "work"),  but it doesn't really
follow the layout of all the existing code.  In this case it
should be added to donkeyTypes.file. 

Example: Network1 may have file comments that include a
string and an int8.  Network2 might have file comments that
are a string and a list of tags along with an int64.
Whatever the structure, it is specific to that one network,
and the file structures of the network should precisely
match the protocol of the network. That's what those
structures are for! :-)

All commonFiles have file_ops, and these file_ops would
allow something like file_ops.op_num_comments to return an
int from all files for your use in the "html vd list -> # of
comments feature", also guiTypes could be used to create
structures that could encompass file comments from all
networks.  These structures are only filled in on demand,
and hence don't waste memory unlike trying to add these
structures to commonFile. (see op_file_info.)

(BTW, file descriptions are only sent when a download is
initiated, so I don't really understand the point of seeing
this stuff in search results)

After scanning the patch, here are is another comment:

Even though ocaml is not prone to normal C-style buffer
overflows, standard defensive coding must be practiced,
especially when receiving data from a network.

What happens if a nefarious client decides to send many
random strings as file descriptions after you request a file
from them.  The code in this patch blindly accepts these
strings and adds them to the list.

However, since the dummy_file is used as the default
"last_asked_file" and no checks are really performed to
ensure that a valid file request has been made, a file
doesn't even need to be requested before any connected
client could send an infinite number of random string file
descriptions and fill up this file_comment list structure
in the dummy_file (and therefore all RAM?).  It would seem
that any mldonkey running with this patch is prone to a
potential DOS attack.

z <zet>
Group Member
Wed 06 Sep 2006 12:02:39 PM UTC, comment #11: 

"but I still think the structure is not correct"

What is exactly wrong with it?

Looking at eMule users can only add one comment per complete, shared file. Each user can add his/her own comment.

eMule displays comments of downloading files with these columns:
username, filename, rating (parsed but not used in MLDonkey yet) and comment text.

This display is a list of comments, currently I am viewing a file
with two user comments in eMule, the same two comments are also
displayed in MLDonkey.

I agree that the patch must be extended:
- write own comments for shared files and sent them to the network
- display file rating in comments
- display file rating in server search results (currently displayed  in tags column)

spiralvoice <spiralvoice>
Group administrator
Tue 05 Sep 2006 10:03:55 PM UTC, comment #10: 

Yes, but I still think the structure is not correct and the code is prone to other problems, but it can be rewritten later I suppose.

The concern that I have is the lack of following the standard "Release early, release often" motto.  I personally don't care when Gentoo or Debian or Sally's SuperFlyLinuxDistro decides to include a certain version of mldonkey.  :-) I don't think other projects stall development due to lack of inclusion in distro repositories.  It really shouldn't have any effect on the release and development of mldonkey.  By holding off on the inclusion of some working patches for such a very, very long time, I think it has slowed development and limited users of mldonkey, especially those that don't wish to patch their own sources  (the majority of downloads are precompiled binaries).

z <zet>
Group Member
Tue 05 Sep 2006 08:45:35 PM UTC, comment #9: 

I put the comments structures intentionally into common so other network supports can benefit from it if needed.
These comments are the comments of other users, there is currently
no structure to write own comments for shared files, this would
then go into shared_files.ini which is an EDK module-specific file
and be sent to other users using the EDK module.

There is not a real link between MLDonkey devs and Gentoo people, thats the reason things move so slowly there. The Gentoo MLdonkey changelog mentions some people taking care of it:
http://sources.gentoo.org/viewcvs.py/*checkout*/gentoo-x86/net-p2p/mldonkey/ChangeLog

Btw, Debian people are much faster, their current version is a CVS snapshot done after 2.7.7 came out...

spiralvoice <spiralvoice>
Group administrator
Tue 05 Sep 2006 03:40:52 PM UTC, comment #8: 

How exactly is the mldonkey project linked to Gentoo? 

I'm sure the patch can seem to work, but that doesn't mean it is correct.  Comments on the edonkey network are specific to that network.  The structures of this patch are in Common.

z <zet>
Group Member
Tue 05 Sep 2006 03:28:19 PM UTC, comment #7: 

I received different comments from several users for one file already so I think collecting comments, like my patch does, is correct.

Multiuser patch will go into CVS after 2.8.0 is released.
2.8.0 will be released approx. 2 weeks after 2.7.7 is stable on Gentoo x86, which is currently not the case.
http://bugs.gentoo.org/show_bug.cgi?id=138373

spiralvoice <spiralvoice>
Group administrator
Tue 05 Sep 2006 02:22:37 PM UTC, comment #6: 

I don't think this patch implements them correctly. Emule file comments come from 1 user each time a download is started and the logic of this patch isn't complete IMHO.

I've had a patch to add emule coments for a while, but I've been expectantly waiting for the multi user patch (for 6 months or more?) to go into CVS before submitting.  It would be nice if that patch could go in sometime this year.

z <zet>
Group Member
Tue 05 Sep 2006 02:18:31 PM UTC, comment #5: 

Applied 2006/09/05

spiralvoice <spiralvoice>
Group administrator
Mon 04 Sep 2006 09:36:59 PM UTC, comment #4: 

This item has been reassigned from the project mldonkey, a multi-networks file-sharing client task tracker to your tracker.

The original report is still available at task #5336

Following are the information included in the original report:

[field #0]                  Item ID: 5336
[field #1]                 Group ID: 1409
[field #2]              Open/Closed: Open
[field #3]                 Severity: 3 - Normal
[field #4]                  Privacy: Public
[field #5]                    Votes: 1
[field #6]                 Category: eDonkey-plugin
[field #7]             Submitted by: fabtar
[field #8]              Assigned to: None
[field #9]             Submitted on: Montag 20.03.2006 um 20:27
[field #10]                  Summary: Add Ed2k comments
[field #11]      Original Submission: Comments are very useful.
Mulus has already introduced comments in scan_temp area.They works great.
Perhaps submitting comments is complex but Knoker has already implemented the way to acquire them.

[field #13]               Item Group: None
[field #14]                   Status: In Progress
[field #15]        Component Version: None
[field #16]         Operating System: None
[field #17]          Reproducibility: None
[field #18]               Size (loc): None
[field #19]            Fixed Release: None
[field #20]          Planned Release: None
[field #21]                   Effort: 0.00
[field #25]                 Priority: 5 - Normal
[field #26]          Should Start On: Montag 20.03.2006 um 01:00
[field #27]    Should be Finished on: Montag 20.03.2006 um 01:00
[field #28]         Percent Complete: 0%
[field #30]                  Release: None
[field #55]     Custom Select Box #1: None
[field #56]     Custom Select Box #2: None
[field #57]     Custom Select Box #3: None
[field #58]     Custom Select Box #4: None
[field #59]     Custom Select Box #5: None
[field #60]     Custom Select Box #6: None
[field #61]     Custom Select Box #7: None
[field #62]     Custom Select Box #8: None
[field #63]     Custom Select Box #9: None
[field #64]    Custom Select Box #10: None

spiralvoice <spiralvoice>
Group administrator
Mon 04 Sep 2006 09:36:57 PM UTC, comment #3: 

Attached patch is still a bit messy as it changes emule_miscoptions handling, also with some new opcodes.

But comments can be shown in HTML interface, there is a new option
html_mods_vd_comments (default true) which creates a new column
in HTML vd where number of comments/file can be seen.
Comment texts can be seen in javascript popup (if enabled) and
vd #num view.

Comments can currently not be created but its possible to extend
the patch to do this for shared and downloading files as well.

spiralvoice <spiralvoice>
Group administrator
Thu 06 Apr 2006 09:57:16 PM UTC, comment #2: 

Emule permits to post a "Comments" on a file directly in the network (no sites) .The have a protocol to manage comments exchange.
There is a recource rate too.

Fabiano <fabtar>
Thu 06 Apr 2006 09:40:31 AM UTC, comment #1: 

what is a ed2k comment? sounds kind of useful. Can we merge this feature from mulus?

Joakim Verona <jave>
Group Member
Mon 04 Sep 2006 09:36:59 PM UTC, original submission:  

Comments are very useful.
Mulus has already introduced comments in scan_temp area.They works great.
Perhaps submitting comments is complex but Knoker has already implemented the way to acquire them.

Fabiano <fabtar>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attached Files
file #10692:  donkey2.patch added by spiralvoice (22KiB - application/octet-stream)

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

 

Follow 11 latest changes.

Date Changed by Updated Field Previous Value => Replaced by
2006-09-23 spiralvoice StatusIn Progress Done
    Open/ClosedOpen Closed
2006-09-11 spiralvoice StatusDone In Progress
2006-09-05 spiralvoice Open/ClosedClosed Open
2006-09-05 spiralvoice CategoryNone Improved interfaces
    StatusNone Done
    Open/ClosedOpen Closed
2006-09-05 spiralvoice Attached File- Added donkey2.patch, #10692
2006-09-05 spiralvoice Attached File#10688 Removed
2006-09-04 spiralvoice SummaryReassigned item: Add Ed2k comments EDK: Support for eMule comments (read-only)
2006-09-04 spiralvoice Reassign itemFrom group mldonkey, a multi-networks file-sharing client, task tracker To group mldonkey, a multi-networks file-sharing client, patch tracker

Back to the top

Powered by Savane 3.13-bb6a.
Corresponding source code