Reported by ruuk on 26 Oct 2007 10:47:06 UTC
First off, as always, thanks for KVIrc to all those who put their time
into it.
I'm getting ready to release an FServe script, and in the process of
writing it (it's about 12000 lines now) I've found a few bugs.
I am using the version I got from SVN on Oct 10 (20070817), but have had
the problems in earlier versions as well.
Most important to my script are some problems with the dcc.send command.
Anyway, when the FServe has been running for a while, sends begin to
fail to resume.
What appears to be happening is that kvirc is mixing up sends. It sends
the accept to the wrong nick which results in a timeout, or it sends the
accept to the correct nick with information from an old send which
results in an acknowledge error. Clearing the terminated sends in the
transfer window seems to alleviate this to some degree, but not
completely. Restarting kvirc fixes the problems. For example I can have
a resume fail ten times in a row, restart kvirc and it works.
Here is some console output and transfer log output to illustrate (I've
edited the filenames):
Where you see the no such nick/channel message that is in response to
the previous resume. As you can see the nick is wrong. Where you don't
see that the resume failed but the ACCEPT went to an online nick. I have
verified that the ACCEPT is going to the wrong person with the socket spy.
[12:31:59] Pelushe: No such nick/channel
[12:31:59] loondre: No such nick/channel
[12:32:00] Processing DCC RESUME request from xTopdawgxx
[~eatshit at 3cbc6b2b.1328406c.ph.cox.net](DCC RESUME "filename.avi" 30001
154163860)
[12:32:04] Processing DCC RESUME request from gssyi
[~gssyi at 8d7465b.1f06bfc3.static.theplanet.com](DCC RESUME
"filename.avi" 30002 51331158)
[12:33:01] Pelushe: No such nick/channel
[12:33:01] loondre: No such nick/channel
[17:08:36] Processing DCC RESUME request from xTopdawgxx
[~eatshit at 3cbc6b2b.1328406c.ph.cox.net](DCC RESUME "filename.avi" 30001
65696616)
[18:58:21] Processing DCC RESUME request from sixpencer
[~mememe at 2aac9c3e.1872b73.onelinkpr.net](DCC RESUME "filename.avi"
30003 28136448)
[18:58:22] Aspire: No such nick/channel
[18:59:21] Processing DCC RESUME request from sixpencer
[~mememe at 2aac9c3e.1872b73.onelinkpr.net](DCC RESUME "filename.avi"
30003 28136448)
[18:59:21] Aspire: No such nick/channel
[19:00:21] Processing DCC RESUME request from sixpencer
[~mememe at 2aac9c3e.1872b73.onelinkpr.net](DCC RESUME "filename.avi"
30003 15519392)
[19:00:22] Aspire: No such nick/channel
When it says the send was aborted, that is because the FServe aborted
the send either because of time or the no such nick message.
[12:31:59] [TRANSFER 26]: Attempting a passive DCC SEND connection
[12:31:59] [TRANSFER 25]: Transfer failed: Remote end has closed the
connection
[12:31:59] [TRANSFER 26]: Listening on interface 192.168.1.100 port 30001
[12:31:59] [TRANSFER 26]: Sent DCC SEND request to Pelushe, waiting for
remote client to connect...
[12:31:59] [TRANSFER 27]: Attempting a passive DCC SEND connection
[12:31:59] [TRANSFER 26]: Transfer failed: Aborted
[12:31:59] [TRANSFER 27]: Listening on interface 192.168.1.100 port 30001
[12:31:59] [TRANSFER 27]: Sent DCC SEND request to loondre, waiting for
remote client to connect...
[12:31:59] [TRANSFER 28]: Attempting a passive DCC SEND connection
[12:31:59] [TRANSFER 27]: Transfer failed: Aborted
[12:31:59] [TRANSFER 28]: Listening on interface 192.168.1.100 port 30001
[12:31:59] [TRANSFER 28]: Sent DCC SEND request to xTopdawgxx, waiting
for remote client to connect...
[12:32:00] [TRANSFER 21]: Accepting RESUME request, transfer will begin
at position 154163860
[12:32:00] [TRANSFER 28]: Connected to 68.106.48.32:62378
[12:32:00] [TRANSFER 28]: Local end is 192.168.1.100:30001
[12:32:00] [TRANSFER 28]: Transferring data
[12:32:00] [TRANSFER 29]: Attempting a passive DCC SEND connection
[12:32:01] [TRANSFER 28]: Transfer failed: Acknowledge error
[12:32:01] [TRANSFER 29]: Listening on interface
[12:32:01] [TRANSFER 29]: Sent DCC SEND request to gssyi, waiting for
remote client to connect...
[12:32:04] [TRANSFER 25]: Accepting RESUME request, transfer will begin
at position 51331158
[12:33:01] [TRANSFER 30]: Attempting a passive DCC SEND connection
[12:33:01] [TRANSFER 29]: Transfer failed: Aborted
[12:33:01] [TRANSFER 30]: Listening on interface 192.168.1.100 port 30001
[12:33:01] [TRANSFER 30]: Sent DCC SEND request to Pelushe, waiting for
remote client to connect...
[12:33:01] [TRANSFER 31]: Attempting a passive DCC SEND connection
[12:33:01] [TRANSFER 30]: Transfer failed: Aborted
[12:33:01] [TRANSFER 31]: Listening on interface 192.168.1.100 port 30001
[12:33:01] [TRANSFER 31]: Sent DCC SEND request to loondre, waiting for
remote client to connect...
[12:33:01] [TRANSFER 31]: Transfer failed: Aborted
[17:08:33] [TRANSFER 33]: Attempting a passive DCC SEND connection
[17:08:33] [TRANSFER 32]: Transfer failed: Connection reset by peer
[17:08:33] [TRANSFER 33]: Listening on interface 192.168.1.100 port 30001
[17:08:33] [TRANSFER 33]: Sent DCC SEND request to xTopdawgxx, waiting
for remote client to connect...
[17:08:36] [TRANSFER 21]: Accepting RESUME request, transfer will begin
at position 65696616
[17:08:37] [TRANSFER 33]: Connected to 68.106.48.32:63435
[17:08:37] [TRANSFER 33]: Local end is 192.168.1.100:30001
[17:08:37] [TRANSFER 33]: Transferring data
[17:08:37] [TRANSFER 33]: Transfer failed: Acknowledge error
[18:11:05] [TRANSFER 34]: Attempting a passive DCC SEND connection
[18:11:05] [TRANSFER 34]: Listening on interface 192.168.1.100 port 30002
[18:11:05] [TRANSFER 34]: Sent DCC SEND request to Anarch, waiting for
remote client to connect...
[18:11:06] [TRANSFER 34]: Connected to 71.199.129.179:1031
[18:11:06] [TRANSFER 34]: Local end is 192.168.1.100:30002
[18:11:06] [TRANSFER 34]: Transferring data
[18:58:20] [TRANSFER 35]: Attempting a passive DCC SEND connection
[18:58:20] [TRANSFER 35]: Listening on interface 192.168.1.100 port 30003
[18:58:20] [TRANSFER 35]: Sent DCC SEND request to sixpencer, waiting
for remote client to connect...
[18:58:21] [TRANSFER 20]: Accepting RESUME request, transfer will begin
at position 28136448
[18:59:20] [TRANSFER 36]: Attempting a passive DCC SEND connection
[18:59:20] [TRANSFER 35]: Transfer failed: Aborted
[18:59:20] [TRANSFER 36]: Listening on interface 192.168.1.100 port 30003
[18:59:20] [TRANSFER 36]: Sent DCC SEND request to sixpencer, waiting
for remote client to connect...
[18:59:21] [TRANSFER 20]: Accepting RESUME request, transfer will begin
at position 28136448
[19:00:20] [TRANSFER 37]: Attempting a passive DCC SEND connection
[19:00:20] [TRANSFER 36]: Transfer failed: Aborted
[19:00:21] [TRANSFER 37]: Listening on interface 192.168.1.100 port 30003
[19:00:21] [TRANSFER 37]: Sent DCC SEND request to sixpencer, waiting
for remote client to connect...
[19:00:21] [TRANSFER 20]: Accepting RESUME request, transfer will begin
at position 15519392
[19:01:21] [TRANSFER 38]: Attempting a passive DCC SEND connection
[19:01:21] [TRANSFER 37]: Transfer failed: Aborted
[19:01:21] [TRANSFER 38]: Listening on interface 192.168.1.100 port 30003
[19:01:21] [TRANSFER 38]: Sent DCC SEND request to m9115m, waiting for
remote client to connect...
[19:01:22] [TRANSFER 38]: Connected to 70.210.219.44:1025
[19:01:22] [TRANSFER 38]: Local end is 192.168.1.100:30003
[19:01:22] [TRANSFER 38]: Transferring data
Migrated from: https://svn.kvirc.de/kvirc/ticket/36