Francois PIETTE wrote: >> however the server obviously didn't call Data.ShutDown(1) >> for some reason? > > One reason you could no see the shutdown packet is that the receiver > stopped to receive data and the TCP window is full.
How would that be logged? I've nothing noted like that. > > btw: What do you use to format pcap data so that it is more readble ? This one is view-filtered by ports, you can of course set capture filters as well. > (I don't use Ethereal, I use LanWatch which nicely show data captured > and decoded headers). Is that opensource/freeware as well? WireShark is great at least in order to share packet dumps, since everybody may use it w/o charge, I like it very much and don't miss any feature so far. -- Arno Garrels [TeamICS] http://www.overbyte.be/eng/overbyte/teamics.html > > -- > Contribute to the SSL Effort. Visit > http://www.overbyte.be/eng/ssl.html -- > [EMAIL PROTECTED] > http://www.overbyte.be > > > > ----- Original Message ----- > From: "Arno Garrels" <[EMAIL PROTECTED]> > To: "ICS support mailing" <twsocket@elists.org> > Sent: Friday, April 20, 2007 7:04 PM > Subject: Re: [twsocket] 501 > CannotRETR.Error-SocketwithicsFtpServ(V6forDelphi7) > > >>>> May i send you my captured .pcap - file (148 KB) ? >>> >>> Yes, please send it. >> >> Got it, uploaded a filtered version so others can take >> a look at it as well: >> http://www.duodata.de/misc/Patric-Flt1.pcap >> >> This log shows that after the LIST command data was sent, >> however the server obviously didn't call Data.ShutDown(1) >> for some reason? Subsequent RETR however worked fine, is >> this with latest ICS-Beta download available? >> >> -- >> Arno Garrels [TeamICS] >> http://www.overbyte.be/eng/overbyte/teamics.html >> >> >> Arno Garrels wrote: >>> Patrick Schmidt - STEP Software GmbH wrote: >>>>> Possibly G6 works around that, have you tried Serv-U as well as >>>>> FileZilla server? If they all handle your client correctly we have >>>>> to find a workaround. >>>> I tried Filezilla Server and Serv-U. Both worked, see log. >>> >>> Ohh, that's very interesting! >>> >>> I logged two sequences with Ethereal, both Ftptst demo, >>> one against FtpSrv demo another against Serv-U. >>> (Only 1 byte was transfered, so each file has only 15 lines) >>> http://www.duodata.de/misc/ICSFtpSrv-DataClose1.pcap >>> http://www.duodata.de/misc/Serv-U-DataClose1.pcap >>> >>>>> From these logs it seems that Serv-U doesn't wait for the >>> client until it closes the connection but sends "226 File sent ok" >>> at once. >>> This might be the reason why your client fails with the ICS >>> server, though I guess that your client is not RFC conform. >>> >>> Francois and all what do you think, should we tweak the TFtpSrv >>> to send the response earlier? >>> >>>> May i send you my captured .pcap - file (148 KB) ? >>> >>> Yes, please send it. >>> >>> -- >>> Arno Garrels [TeamICS] >>> http://www.overbyte.be/eng/overbyte/teamics.html >>> >>>> >>>> best regards >>>> Patrick Schmidt >>>> >>>> ----- Original Message ----- >>>> From: "Arno Garrels" <[EMAIL PROTECTED]> >>>> To: "ICS support mailing" <twsocket@elists.org> >>>> Sent: Friday, April 20, 2007 1:56 PM >>>> Subject: Re: [twsocket] 501 Cannot RETR. >>>> Error -SocketwithicsFtpServ(V6forDelphi7) >>>> >>>> >>>>> Patrick Schmidt - STEP Software GmbH wrote: >>>>>>> I bet the delay starts after the server called Data.ShutDown(1) >>>>>>> in FtpSrv.pas, TFtpServer.WMFtpSrvCloseData, can you please >>>>>>> set a breakpoint there and check whether that this is true? >>>>>> I'm not shure, I set a breakpoint to this row: " >>>>>> Data.ShutDown(1); { Wilfried 24/02/04 } " >>>>>> but debugging goes on (leaves the procedure) >>>>> >>>>> Can you confirm that the delay happens somewhere after >>>>> Data.ShutDown(1)? This meant that the FTP client doesn't handle >>>>> the shutdown sequence correctly but expects that the server will >>>>> close the data connection. Since that never happens the client >>>>> application drops the connection after its own timeout has >>>>> expired. >>>>> >>>>> A network sniffer like Ethereal (now WireShark) could prove that. >>>>> >>>>> At the bottom of the page below you'll find a nice table that >>>>> explains the bidirectional socket shutdown sequence step by step: >>>>> http://msdn2.microsoft.com/en-us/library/ms738547.aspx >>>>> >>>>> Note that in non-passive mode the server represents the client >>>>> side! >>>>> >>>>>> If I try other client (eg Filezilla) it >>>>>> works and if i try other >>>>>> server (G6 FTP Server) with the console it works, too! :-( >>>>> >>>>> Possibly G6 works around that, have you tried Serv-U as well as >>>>> FileZilla server? If they all handle your client correctly we have >>>>> to find a workaround. >>>>> >>>>> -- >>>>> Arno Garrels [TeamICS] >>>>> http://www.overbyte.be/eng/overbyte/teamics.html >>>>> >>>>>> >>>>>> >>>>>> I also tried your Sample-Application (OverbyteIcsFtpSrv.dpr), it >>>>>> behaves the same way. >>>>>> <snip> >>>>>> < 192.168.200.179 LIST >>>>>>> 192.168.200.179 150 Opening data connection for directory list. >>>>>>> Here occurs the delay 192.168.200.179 501 Cannot RETR. Error - >>>>>>> Connection aborted (#10053) >>>>>> ! 192.168.200.179 Data session closed. Error #10053 >>>>>> < 192.168.200.179 PORT 192,168,200,179,4,128 >>>>>>> 192.168.200.179 200 Port command successful. >>>>>> <snip> >>>>>> >>>>>> If i use another FTP-Server the log looks like this: >>>>>> <snip> >>>>>>> LIST >>>>>>> 150 Opening data connection for directory list. >>>>>>> 226 File sent ok. >>>>>>> PORT 192,168,200,179,4,145 >>>>>>> 200 Port command successful. >>>>>> >>>>>> <snip> >>>>>> >>>>>> Patrick Schmidt >>>>>> >>>>>> ----- Original Message ----- >>>>>> From: "Arno Garrels" <[EMAIL PROTECTED]> >>>>>> To: "ICS support mailing" <twsocket@elists.org> >>>>>> Sent: Wednesday, April 18, 2007 7:17 PM >>>>>> Subject: Re: [twsocket] 501 Cannot RETR. Error - Socket >>>>>> withicsFtpServ(V6forDelphi7) >>>>>> >>>>>> >>>>>>> Patrick Schmidt - STEP Software GmbH wrote: >>>>>>>>> Later you change to that directory and request a dir list. The >>>>>>>>> server somewhat hang creating the directory list. After 2 >>>>>>>>> minutes the connection is >>>>>>>>> closed (probably an inactivity timeout at server side). >>>>>>>> After this time (and error-message) the client gets the list >>>>>>>> and loads every file in the list! >>>>>>>> That's strange... >>>>>>> >>>>>>> I bet the delay starts after the server called Data.ShutDown(1) >>>>>>> in FtpSrv.pas, TFtpServer.WMFtpSrvCloseData, can you please >>>>>>> set a breakpoint there and check whether that this is true? >>>>>>> >>>>>>> -- >>>>>>> Arno Garrels [TeamICS] >>>>>>> http://www.overbyte.be/eng/overbyte/teamics.html >>>>>>> >>>>>>>> >>>>>>>>> Try with passive mode. >>>>>>>> Passive mode is not possible, my client is a (Hardware- >>>>>>>> )Lighting- console. The only options to configure in console >>>>>>>> are: IP, user, pw and a directory >>>>>>>> >>>>>>>>> Can you reproduce this behaviour using another FTP client >>>>>>>>> software using the >>>>>>>>> same conditions ? >>>>>>>> No, only this combination. If I try other client (eg >>>>>>>> Filezilla) it works and if i try other >>>>>>>> server (G6 FTP Server) with the console it works, too! :-( >>>>>>>> >>>>>>>> best regards >>>>>>>> Patrick Schmidt >>>>>>>> >>>>>>>> ----- Original Message ----- >>>>>>>> From: "Francois PIETTE" <[EMAIL PROTECTED]> >>>>>>>> To: "ICS support mailing" <twsocket@elists.org> >>>>>>>> Sent: Wednesday, April 18, 2007 4:20 PM >>>>>>>> Subject: Re: [twsocket] 501 Cannot RETR. Error - Socket with >>>>>>>> icsFtpServ (V6forDelphi7) >>>>>>>> >>>>>>>> >>>>>>>>>> My FTP-Client send a "LIST" which is not handled correctly. >>>>>>>>>> After the "LIST" >>>>>>>>>> it takes about 2 minutes until the error is displayed and >>>>>>>>>> after that the client >>>>>>>>>> gets the direcory listing. >>>>>>>>>> Answer to client: 550 'F:\PROJ\grandMA ftp\slp': can't create >>>>>>>>>> directory. >>>>>>>>> >>>>>>>>> You are creating a directory and you don't have permission. >>>>>>>>> Maybe already exists. Should not be the problem. >>>>>>>>> >>>>>>>>>> ! Answer to client: 150 Opening data connection for >>>>>>>>>> directory list. !!! Here the communication hang for nearly >>>>>>>>>> 2 minutes !!! ! Answer to client: 501 Cannot RETR. Error - >>>>>>>>>> Socket is not connected >>>>>>>>> >>>>>>>>> Later you change to that directory and request a dir list. The >>>>>>>>> server somewhat hang creating the directory list. After 2 >>>>>>>>> minutes the connection is >>>>>>>>> closed (probably an inactivity timeout at server side). >>>>>>>>> >>>>>>>>> Try with passive mode. >>>>>>>>> >>>>>>>>> Can you reproduce this behaviour using another FTP client >>>>>>>>> software using the >>>>>>>>> same conditions ? >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Contribute to the SSL Effort. Visit >>>>>>>>> http://www.overbyte.be/eng/ssl.html -- >>>>>>>>> [EMAIL PROTECTED] >>>>>>>>> http://www.overbyte.be >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> ----- Original Message ----- >>>>>>>>> From: "Patrick Schmidt - STEP Software GmbH" <[EMAIL PROTECTED]> >>>>>>>>> To: <twsocket@elists.org> >>>>>>>>> Sent: Wednesday, April 18, 2007 4:08 PM >>>>>>>>> Subject: [twsocket] 501 Cannot RETR. Error - Socket with >>>>>>>>> icsFtpServ (V6 forDelphi7) >>>>>>>>> >>>>>>>>> >>>>>>>>>> STEP >>>>>>>>>> My FTP-Client send a "LIST" which is not handled correctly. >>>>>>>>>> After the "LIST" >>>>>>>>>> it >>>>>>>>>> takes about 2 minutes until the error is displayed and after >>>>>>>>>> that the client >>>>>>>>>> gets >>>>>>>>>> the direcory listing. >>>>>>>>>> >>>>>>>>>> See log-file: >>>>>>>>>> 192.168.200.167 connected >>>>>>>>>> Client-Command: USER MA >>>>>>>>>> Answer to client: 331 Password required for MA. >>>>>>>>>> Client-Command: PASS ma >>>>>>>>>> Login Username:MA Password:ma >>>>>>>>>> Answer to client: 230 User MA logged in. >>>>>>>>>> Client-Command: TYPE I >>>>>>>>>> Answer to client: 200 Type set to I. >>>>>>>>>> Client-Command: MKD slp >>>>>>>>>> Make Directory: F:\PROJ\grandMA ftp\slp >>>>>>>>>> Answer to client: 550 'F:\PROJ\grandMA ftp\slp': can't create >>>>>>>>>> directory. Client-Command: CWD slp >>>>>>>>>> Change Directory: F:\PROJ\grandMA ftp\slp\ >>>>>>>>>> Answer to client: 250 CWD command successful. >>>>>>>>>> "F:/PROJ/grandMA ftp/slp/" is >>>>>>>>>> current directory. >>>>>>>>>> Client-Command: PORT 192,168,200,167,4,205 >>>>>>>>>> Answer to client: 200 Port command successful. >>>>>>>>>> Client-Command: LIST >>>>>>>>>> ! Answer to client: 150 Opening data connection for >>>>>>>>>> directory list. !!! Here the communication hang for nearly >>>>>>>>>> 2 minutes !!! ! Answer to client: 501 Cannot RETR. Error - >>>>>>>>>> Socket is not connected (#10057) >>>>>>>>>> >>>>>>>>>> best regards >>>>>>>>>> Patrick Schmidt >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> To unsubscribe or change your settings for TWSocket mailing >>>>>>>>>> list please goto >>>>>>>>>> http://www.elists.org/mailman/listinfo/twsocket Visit our >>>>>>>>>> website at http://www.overbyte.be >>>>>>>>> >>>>>>>>> -- >>>>>>>>> To unsubscribe or change your settings for TWSocket mailing >>>>>>>>> list please goto >>>>>>>>> http://www.elists.org/mailman/listinfo/twsocket Visit our >>>>>>>>> website at http://www.overbyte.be >>>>>>> -- >>>>>>> To unsubscribe or change your settings for TWSocket mailing list >>>>>>> please goto http://www.elists.org/mailman/listinfo/twsocket >>>>>>> Visit our website at http://www.overbyte.be >>>>> -- >>>>> To unsubscribe or change your settings for TWSocket mailing list >>>>> please goto http://www.elists.org/mailman/listinfo/twsocket >>>>> Visit our website at http://www.overbyte.be >> -- >> To unsubscribe or change your settings for TWSocket mailing list >> please goto http://www.elists.org/mailman/listinfo/twsocket >> Visit our website at http://www.overbyte.be -- To unsubscribe or change your settings for TWSocket mailing list please goto http://www.elists.org/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be