Keeping idle conncetions

Technical discussion about the NMDC and <a href="http://dcpp.net/ADC.html">ADC</A> protocol. The NMDC protocol is documented in the <a href="http://dcpp.net/wiki/">Wiki</a>, so feel free to refer to it.

Moderator: Moderators

Locked
Dj_Offset
Posts: 48
Joined: 2003-02-22 19:22
Location: Oslo, Norway
Contact:

Keeping idle conncetions

Post by Dj_Offset » 2003-02-22 19:36

Hi, I have a question.
How can one keep an idle connection after "download complete" if there was no download. I know that sounds weird, but here is an example;

I'm working on QuickDC and click "Browse user" on a DC++ user.
I request a connection, log in properly and send;

$Get MyList.bz2$xxxx|

I get:

$FileLength yyyy|

Hm, that file is complete, then, now what?
I cannot "$Get" another file, unless $Send was called.
It's no point in $Send'ing unless you don't have that file.
DC++ doesn not support the $Canceled command either...

How should this be done?
I wrote QuickDC - A DC++ compatible client for Linux and FreeBSD.

arnetheduck
The Creator Himself
Posts: 296
Joined: 2003-01-02 17:15

Post by arnetheduck » 2003-02-24 04:40

It can't (currently). I didn't consider this to be very important considering that bz lists seldom become larger than a few 100 k's...

Dj_Offset
Posts: 48
Joined: 2003-02-22 19:22
Location: Oslo, Norway
Contact:

Post by Dj_Offset » 2003-02-24 04:43

arnetheduck wrote:It can't (currently). I didn't consider this to be very important considering that bz lists seldom become larger than a few 100 k's...
OK, but what about other files in general?

If a file is n bytes long should I:

SEND: $Get file$n+1|
RECV: $FileLength n|
SEND: $Send| (nothing happens)

and the connection is idle?
I wrote QuickDC - A DC++ compatible client for Linux and FreeBSD.

arnetheduck
The Creator Himself
Posts: 296
Joined: 2003-01-02 17:15

Post by arnetheduck » 2003-02-24 05:07

Dunno, try? It was definately more than half a year I wrote that code...

Dj_Offset
Posts: 48
Joined: 2003-02-22 19:22
Location: Oslo, Norway
Contact:

Post by Dj_Offset » 2003-02-24 12:35

That worked with DC++. I'll test it with the others aswell (dctc gives some really weird results most of the times...)
I wrote QuickDC - A DC++ compatible client for Linux and FreeBSD.

Locked