World: r3wp
[!REBOL3 Schemes] Implementors guide
older newer | first last |
Andreas 11-Jan-2010 [1161] | btw graham, do you happen to have heard of git? |
Graham 11-Jan-2010 [1162] | repository thingy? |
Andreas 11-Jan-2010 [1163x2] | yep |
used it, by any chance? | |
Graham 11-Jan-2010 [1165x2] | yes :) |
nope ... | |
Andreas 11-Jan-2010 [1167] | wow, fixed it :) |
Graham 11-Jan-2010 [1168] | Umm... does Ubuntu use git ?? |
Andreas 11-Jan-2010 [1169] | i use git |
Graham 11-Jan-2010 [1170] | I know I installed something which failed to work for me ... in downloading from the ubuntu repository |
Andreas 11-Jan-2010 [1171] | and if you'd be using it too, developing protos together would be much more fun :) |
Graham 11-Jan-2010 [1172] | so what's the fix? |
Andreas 11-Jan-2010 [1173] | dropped the SYST write from 230 |
Graham 11-Jan-2010 [1174] | I think that might help with directory parsing ... |
Andreas 11-Jan-2010 [1175] | made the last "read client" in the read event handler block conditional: unless client/spec/ready [read client] |
Graham 11-Jan-2010 [1176x2] | in case it's an Amiga ftp server ... |
:) | |
Andreas 11-Jan-2010 [1178x2] | returned "client/spec/ready" instead of "false" from the awake |
one problem remains: the read after RETR does not return | |
Graham 11-Jan-2010 [1180x5] | hmm... my 0.0.5 added a return true |
on a successful download | |
so just comment out line 261 ? | |
write-cmdport/only client [SYST] | |
so where do I set the state then? | |
Andreas 11-Jan-2010 [1185x2] | here's a diff of my changes: http://gist.github.com/274796 |
that's a diff against the 0.0.5 from wik.is | |
Graham 11-Jan-2010 [1187] | wow .. you managed to nuke my 'read ! |
Andreas 11-Jan-2010 [1188x6] | hehe :) |
now what's expected sequence on the cmd connection for RETR? | |
ah!! | |
it completes :) | |
i'll have to print timestamps to even get an idea how long that stalls :) | |
but now i know that it's 150 for when the transfer starts and 226 when it finishes | |
Graham 11-Jan-2010 [1194] | 150 is just a mark ... comment |
Andreas 11-Jan-2010 [1195] | ok |
Graham 11-Jan-2010 [1196x3] | all those can be ignored |
can you email the new version? mine is corrupted now ...with the manually applied diff's! | |
Or upload it ... using the credentials I sent you. | |
Andreas 11-Jan-2010 [1199x7] | sec, still debugging |
closed 12-Jan-2010/2:48:18+1:00 fin 12-Jan-2010/2:51:18+1:00 | |
wow, stalls for precisely 3 minutes | |
ah, found it | |
it takes two to takedown a TCP connection | |
i.e. even if the server closes it's side, until the client also closes, the connection is still open | |
or even more plainly: in the dataport's close handler, you need to close the port as well | |
Graham 11-Jan-2010 [1206x3] | I close cmd ... |
oh ... I read that I don't need to close the port ... | |
oh .. misunderstood ... what I read | |
Andreas 11-Jan-2010 [1209] | if the dataport is closed on you, you need to close it as well |
Graham 11-Jan-2010 [1210] | Clients closing connections The client can simply close the connection without sending QUIT. This saves time and memory for both the client and the server. There are a few broken TCP implementations, such as MacTCP 2.0.6, that fail to acknowledge TCP FINs after a local close. If the client is running on such a host, it shouldn't close the connection until after it sends QUIT and sees the server close the connection; otherwise the server will waste time repeatedly transmitting the FIN until it times out. |
older newer | first last |