Skip Menu |

This queue is for tickets about the Net-FTPSSL CPAN distribution.

Report information

Subject: Protection Buffer Size / Protect Level set?
Log sample below. Have tried with variety of options, including useSSL, OverrideHELP. Believe it's a server incompatibility issue. <<< 220 FTP Server Ready Show quoted text
>>> USER +++++++
<<< 3 Show quoted text
>>> PASS *******
<<< 31 User name accepted, password required. Show quoted text
>>> TYPE I
<<< 2 Show quoted text
>>> CWD /uploaded/links
<<< 30-Welcome 3936692 <<< 230 Show quoted text
>>> PWD
<<< 2 Show quoted text
>>> PBSZ 0
<<< 00 Type set to I. Show quoted text
>>> PROT P
<<< 2 Show quoted text
>>> PASV
<<< 50 CWD command successful. --- Host () Port () <<+ 214 The ALLO command is supported. Show quoted text
>>> ALLO 20653
<<< 2 Show quoted text
>>> STOR add_link.html
<<< 57 "/uploaded/links/" is the current directory. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Buffer Size set: 0. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Levet set: P. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 27 Entering passive mode (10,5,3,130,239,193). Show quoted text
>>> PASV
<<< 4 --- Host () Port () <<+ 214 The ALLO command is supported. Show quoted text
>>> ALLO 3010
<<< 25 Can't build data connection. Show quoted text
>>> STOR clothing-and-accessories.html
<<< 5 Show quoted text
>>> PBSZ 0
<<< 00 'ALLO': command not understood. Show quoted text
>>> PROT P
<<< 1 Show quoted text
>>> PBSZ 0
<<< 50 Opening BINARY mode data connection for add_link.html. Show quoted text
>>> PROT P
<<< 2 Show quoted text
>>> PASV
<<< 26 Transfer complete. <<+ 555 Can't parse the PASV response. --- Host () Port () <<+ 214 The ALLO command is supported. Show quoted text
>>> ALLO 3005
<<< 2 Show quoted text
>>> STOR gifts-gadgets-and-toys.html
<<< 00 Protection Buffer Size set: 0. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Levet set: P. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Buffer Size set: 0. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Levet set: P. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Buffer Size set: 0. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Levet set: P. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 27 Entering passive mode (10,5,3,130,239,194). Show quoted text
>>> PASV
<<< 4 --- Host () Port () <<+ 214 The ALLO command is supported. Show quoted text
>>> ALLO 3010
<<< 25 Can't build data connection. Show quoted text
>>> STOR travel-and-entertainment.html
<<< 5 Show quoted text
>>> PBSZ 0
<<< 00 'ALLO': command not understood. Show quoted text
>>> PROT P
<<< 1 Show quoted text
>>> QUIT
<<< 50 Opening BINARY mode data connection for clothing-and-accessories.html.
Subject: Re: [rt.cpan.org #73115] Protection Buffer Size / Protect Level set?
Date: Thu, 8 Dec 2011 23:09:04 +0100
To: bug-Net-FTPSSL [...] rt.cpan.org
From: Marco Dalla Stella <m.dallastella [...] gmail.com>
Which sì the server? Il giorno 08/dic/2011 22:17, "Ryan Gran via RT" <bug-Net-FTPSSL@rt.cpan.org> ha scritto: Show quoted text
> Thu Dec 08 16:17:39 2011: Request 73115 was acted upon. > Transaction: Ticket created by ryangran > Queue: Net-FTPSSL > Subject: Protection Buffer Size / Protect Level set? > Broken in: 0.19 > Severity: (no value) > Owner: Nobody > Requestors: ryan@cnvi.com > Status: new > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=73115 > > > > Log sample below. Have tried with variety of options, including useSSL, > OverrideHELP. > Believe it's a server incompatibility issue. > > <<< 220 FTP Server Ready
> >>> USER +++++++
> <<< 3
> >>> PASS *******
> <<< 31 User name accepted, password required.
> >>> TYPE I
> <<< 2
> >>> CWD /uploaded/links
> <<< 30-Welcome 3936692 > <<< 230
> >>> PWD
> <<< 2
> >>> PBSZ 0
> <<< 00 Type set to I.
> >>> PROT P
> <<< 2
> >>> PASV
> <<< 50 CWD command successful. > --- Host () Port () > <<+ 214 The ALLO command is supported.
> >>> ALLO 20653
> <<< 2
> >>> STOR add_link.html
> <<< 57 "/uploaded/links/" is the current directory.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Buffer Size set: 0.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Levet set: P.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 27 Entering passive mode (10,5,3,130,239,193).
> >>> PASV
> <<< 4 > --- Host () Port () > <<+ 214 The ALLO command is supported.
> >>> ALLO 3010
> <<< 25 Can't build data connection.
> >>> STOR clothing-and-accessories.html
> <<< 5
> >>> PBSZ 0
> <<< 00 'ALLO': command not understood.
> >>> PROT P
> <<< 1
> >>> PBSZ 0
> <<< 50 Opening BINARY mode data connection for add_link.html.
> >>> PROT P
> <<< 2
> >>> PASV
> <<< 26 Transfer complete. > <<+ 555 Can't parse the PASV response. > --- Host () Port () > <<+ 214 The ALLO command is supported.
> >>> ALLO 3005
> <<< 2
> >>> STOR gifts-gadgets-and-toys.html
> <<< 00 Protection Buffer Size set: 0.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Levet set: P.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Buffer Size set: 0.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Levet set: P.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Buffer Size set: 0.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Levet set: P.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 27 Entering passive mode (10,5,3,130,239,194).
> >>> PASV
> <<< 4 > --- Host () Port () > <<+ 214 The ALLO command is supported.
> >>> ALLO 3010
> <<< 25 Can't build data connection.
> >>> STOR travel-and-entertainment.html
> <<< 5
> >>> PBSZ 0
> <<< 00 'ALLO': command not understood.
> >>> PROT P
> <<< 1
> >>> QUIT
> <<< 50 Opening BINARY mode data connection for > clothing-and-accessories.html. >
Hi Ryan, I got your ticket. The problem below shows me that the command responses don't go with the commands being executed. So your server is responding to requests very strangely indeed. Servers are supposed to respond in one of two ways: 1) xyz message (response complete) 2) xyz-message (response isn't complete, get the next message as well) It looks like your server is responding: 1) x 2) yz message And my code is interpreting the 1st "x" as a response complete message, and the yz as the response to the next command. I'm going to need from you the entire log to help verify this. So make sure you have the following 2 debug commands in your new() call: my $ftps = Net::FTPSSL->new (server, Debug => 1, DebugLogFile => "myLog.txt"); Then send me the entire myLog.txt file as an attachment. This log will also tell me what OS & Perl version you are using with this software. This looks like it might be a case where every white space printed to the log is going to be critical to me in parsing such a strange non-standard response without breaking this for everyone else. Also do you know what FTPS software your FTPS server is running? This might turn out to be a case where you should be reporting a bug against it or the organization whose FTPS server it is. But I need to know more from your logs 1st. Once I get the full logs, I'll see what needs to happen next to help you out. Curtis On Thu Dec 08 16:17:39 2011, ryangran wrote: Show quoted text
> Log sample below. Have tried with variety of options, including > useSSL, OverrideHELP. > Believe it's a server incompatibility issue. > > <<< 220 FTP Server Ready
> >>> USER +++++++
> <<< 3
> >>> PASS *******
> <<< 31 User name accepted, password required.
> >>> TYPE I
> <<< 2
> >>> CWD /uploaded/links
> <<< 30-Welcome 3936692 > <<< 230
> >>> PWD
> <<< 2
> >>> PBSZ 0
> <<< 00 Type set to I.
> >>> PROT P
> <<< 2
> >>> PASV
> <<< 50 CWD command successful. > --- Host () Port () > <<+ 214 The ALLO command is supported.
> >>> ALLO 20653
> <<< 2
> >>> STOR add_link.html
> <<< 57 "/uploaded/links/" is the current directory.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Buffer Size set: 0.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Levet set: P.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 27 Entering passive mode (10,5,3,130,239,193).
> >>> PASV
> <<< 4 > --- Host () Port () > <<+ 214 The ALLO command is supported.
> >>> ALLO 3010
> <<< 25 Can't build data connection.
> >>> STOR clothing-and-accessories.html
> <<< 5
> >>> PBSZ 0
> <<< 00 'ALLO': command not understood.
> >>> PROT P
> <<< 1
> >>> PBSZ 0
> <<< 50 Opening BINARY mode data connection for add_link.html.
> >>> PROT P
> <<< 2
> >>> PASV
> <<< 26 Transfer complete. > <<+ 555 Can't parse the PASV response. > --- Host () Port () > <<+ 214 The ALLO command is supported.
> >>> ALLO 3005
> <<< 2
> >>> STOR gifts-gadgets-and-toys.html
> <<< 00 Protection Buffer Size set: 0.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Levet set: P.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Buffer Size set: 0.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Levet set: P.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Buffer Size set: 0.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 00 Protection Levet set: P.
> >>> PBSZ 0
> <<< 2
> >>> PROT P
> <<< 27 Entering passive mode (10,5,3,130,239,194).
> >>> PASV
> <<< 4 > --- Host () Port () > <<+ 214 The ALLO command is supported.
> >>> ALLO 3010
> <<< 25 Can't build data connection.
> >>> STOR travel-and-entertainment.html
> <<< 5
> >>> PBSZ 0
> <<< 00 'ALLO': command not understood.
> >>> PROT P
> <<< 1
> >>> QUIT
> <<< 50 Opening BINARY mode data connection for clothing-and- > accessories.html.
From: ryan [...] cnvi.com
It's basically the same log as before. I will add that lftp and FileZilla are able to connect successfully. I have no doubt that it might be the server side; however I have zero control over that. I'm almost 100% positive this was working at one point, so I'm not sure if the server side software changed or our client side Net::FTPSSL version got upgraded. Net-FTPSSL Version: 0.19 Perl: 5.008008 [5.8.8], OS: linux Server (port): ftp.storesonlinepro.com (990) <<< 220 FTP Server Ready Show quoted text
>>> USER +++++++
<<< 3 Show quoted text
>>> PASS *******
<<< 31 User name accepted, password required. Show quoted text
>>> TYPE I
<<< 2 Show quoted text
>>> CWD /uploaded/links
<<< 30-Welcome 3936692 <<< 230 Show quoted text
>>> PWD
<<< 2 Show quoted text
>>> PBSZ 0
<<< 00 Type set to I. Show quoted text
>>> PROT P
<<< 2 Show quoted text
>>> PASV
<<< 50 CWD command successful. --- Host () Port () <<+ 214 The ALLO command is supported. Show quoted text
>>> ALLO 20653
<<< 2 Show quoted text
>>> STOR add_link.html
<<< 57 "/uploaded/links/" is the current directory. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Buffer Size set: 0. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Levet set: P. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 27 Entering passive mode (10,5,3,130,232,165). Show quoted text
>>> PASV
<<< 4 --- Host () Port () <<+ 214 The ALLO command is supported. Show quoted text
>>> ALLO 3010
<<< 25 Can't build data connection. Show quoted text
>>> STOR clothing-and-accessories.html
<<< 5 Show quoted text
>>> PBSZ 0
<<< 00 'ALLO': command not understood. Show quoted text
>>> PROT P
<<< 1 Show quoted text
>>> PBSZ 0
<<< 50 Opening BINARY mode data connection for add_link.html. Show quoted text
>>> PROT P
<<< 2 Show quoted text
>>> PASV
<<< 26 Transfer complete. <<+ 555 Can't parse the PASV response. --- Host () Port () <<+ 214 The ALLO command is supported. Show quoted text
>>> ALLO 3005
<<< 2 Show quoted text
>>> STOR gifts-gadgets-and-toys.html
<<< 00 Protection Buffer Size set: 0. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Levet set: P. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Buffer Size set: 0. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Levet set: P. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Buffer Size set: 0. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 00 Protection Levet set: P. Show quoted text
>>> PBSZ 0
<<< 2 Show quoted text
>>> PROT P
<<< 27 Entering passive mode (10,5,3,130,232,167). Show quoted text
>>> PASV
<<< 4 --- Host () Port () <<+ 214 The ALLO command is supported. Show quoted text
>>> ALLO 3010
<<< 25 Can't build data connection. Show quoted text
>>> STOR travel-and-entertainment.html
<<< 5 Show quoted text
>>> PBSZ 0
<<< 00 'ALLO': command not understood. Show quoted text
>>> PROT P
<<< 1 Show quoted text
>>> QUIT
<<< 50 Opening BINARY mode data connection for clothing-and-accessories.html.
From: ryan [...] cnvi.com
Followup with log as attachment
Subject: ftpssl.log
Download ftpssl.log
application/octet-stream 1.9k

Message body not shown because it is not plain text.

Thanks for sending the log as an attachment. Some servers send a greeting, during connections and it helps to know the particulars of your environment. Could you send me the new() options you used? It may help me a bit. It looks like you are using OverrideHELP & IMP_CRYPT, but once we fix the issue with talking to your server, the OverrideHELP option probably won't be needed. I can also see that your code never tested to see if the requested FTPS command ever succeeded. I'm not surprised that those 2 ftps tools work with your server. They have a much wider user base than I do that report bugs/exceptions back to them. I'm just glad you opened the ticket against this problem. I did fix a minor bug in the response code in v0.17 that was causing other servers to break. So v0.16 might work for you, but if it doesn't, then it was definitely a change on the server side. But I do want to get FTPSSL working for you going forward. Just as an FYI, to get things working for you, the logs should have looked something like the following. I'm providing it here so that I have documentation on what I'm expecting to happen so that I can more easily develop a patch to send you. Following the pattern below, it looks like your server sends a single digit status and then follows up with sending the rest of the response instead of all together like the other FTPS servers I work with. Without a server to test directly against, it may take a few tries to get a working patch unless you can give me a login to test with. If you can, send the login credentials to cleach@cpan.org instead of putting it in the ticket. Otherwise let me know if you'd be willing to beta test my patch. Curtis <<< 220 FTP Server Ready Show quoted text
>>> USER +++++++
<<< 3 <<< 31 User name accepted, password required. Show quoted text
>>> PASS *******
<<< 2 <<< 30-Welcome 3936692 <<< 230 Show quoted text
>>> TYPE I
<<< 2 <<< 00 Type set to I. Show quoted text
>>> CWD /uploaded/links
<<< 2 <<< 50 CWD command successful. Show quoted text
>>> PWD
<<< 2 <<< 57 "/uploaded/links/" is the current directory. Show quoted text
>>> PBSZ 0
<<< 2 <<< 00 Protection Buffer Size set: 0. Show quoted text
>>> PROT P
<<< 2 <<< 00 Protection Levet set: P. Show quoted text
>>> PASV
<<< 2 <<< 27 Entering passive mode (10,5,3,130,232,165). --- Host (xxx.xx.xx.xx) Port (xx) [I'm not going to calculate it here] <<+ 214 The ALLO command is supported. Show quoted text
>>> ALLO 20653
... On Thu Dec 08 20:24:31 2011, ryangran wrote: Show quoted text
> It's basically the same log as before. I will add that lftp and > FileZilla are able to connect > successfully. I have no doubt that it might be the server side; > however I have zero control > over that. I'm almost 100% positive this was working at one point, so > I'm not sure if the > server side software changed or our client side Net::FTPSSL version > got upgraded. > > Net-FTPSSL Version: 0.19 > > Perl: 5.008008 [5.8.8], OS: linux > > Server (port): ftp.storesonlinepro.com (990) > > <<< 220 FTP Server Ready >
From: ryan [...] cnvi.com
The log you have is based on the following new() command: $ftp = Net::FTPSSL->new( $host, Port => $port, Encryption => 'I', Timeout => 120, LocalAddr => '174.122.123.200', OverridePASV => $host, Trace => 'on', Debug => 1, DebugLogFile => '/tmp/ftpssl.log', OverrideHELP => 1 ); Will contact you via email regarding access and testing.
Ryan, Just so you know, all you need is the following once things are working for you. Those other options have no meaning except for some other problem servers I had no easy work around for. Believe it or not there are some really strange servers out there. ftp = Net::FTPSSL->new( $host, Encryption => 'I', Croak =>1, Debug=>1, DebugLogFile = "/tmp/ftpssl.log"); Port 990 is the default for Implicit Encryption, while Port 21 is the default otherwise. So there is no need to provide it unless you are using non-standard ports. I added the Croak option so that the code will automatically call die() for you if any method fails since I see from the trace that you don't check on the status of any individual FTPSSL calls in your code. But it's probably best to leave Croak off until after we've got ourselves a new release. I'm working on a new patch today & tomorrow, so hopefully I'll have a beta of 0.20 soon assuming I don't run into issues with the "paying" job. Curtis ftp = Net::FTPSSL->new( $host, Encryption => 'I') On Fri Dec 09 21:48:02 2011, ryangran wrote: Show quoted text
> The log you have is based on the following new() command: > > $ftp = Net::FTPSSL->new( $host, Port => $port, > Encryption => 'I', Timeout => 120, > LocalAddr => '174.122.123.200', OverridePASV => $host, Trace => 'on', > Debug => 1, > DebugLogFile => '/tmp/ftpssl.log', OverrideHELP => 1 ); > > Will contact you via email regarding access and testing. > >
Ryan, It looks like the patch was fairly simple after all. I've done some initial testing and it hasn't broken any of the FTPS servers I usually test against. But I still have more testing to do tomorrow to verify this. In the mean time, let me know how this beta works out for you. I'd like to see some new logs to see if I'm on the right track or not. Curtis On Sun Dec 11 15:57:44 2011, CLEACH wrote: Show quoted text
> Ryan, > > Just so you know, all you need is the following once things are working > for you. Those other options have no meaning except for some other > problem servers I had no easy work around for. Believe it or not there > are some really strange servers out there. > > ftp = Net::FTPSSL->new( $host, Encryption => 'I', Croak =>1, Debug=>1, > DebugLogFile = "/tmp/ftpssl.log"); > > Port 990 is the default for Implicit Encryption, while Port 21 is the > default otherwise. So there is no need to provide it unless you are > using non-standard ports. > > I added the Croak option so that the code will automatically call die() > for you if any method fails since I see from the trace that you don't > check on the status of any individual FTPSSL calls in your code. But > it's probably best to leave Croak off until after we've got ourselves a > new release. > > I'm working on a new patch today & tomorrow, so hopefully I'll have a > beta of 0.20 soon assuming I don't run into issues with the "paying" job. > > Curtis > > > ftp = Net::FTPSSL->new( $host, Encryption => 'I') > On Fri Dec 09 21:48:02 2011, ryangran wrote:
> > The log you have is based on the following new() command: > > > > $ftp = Net::FTPSSL->new( $host, Port => $port, > > Encryption => 'I', Timeout => 120, > > LocalAddr => '174.122.123.200', OverridePASV => $host, Trace => 'on', > > Debug => 1, > > DebugLogFile => '/tmp/ftpssl.log', OverrideHELP => 1 ); > > > > Will contact you via email regarding access and testing. > > > >
> >
Subject: FTPSSL.pm

Message body is not shown because it is too large.

Ryan, Have you had the chance to test out the Net-FTPSSL patch I sent you last weekend? I'm really interested in if it works for you so that I can make it an official release if it works. Or else tweak the patch some more if necessary. Curtis On Sun Dec 11 17:23:21 2011, CLEACH wrote: Show quoted text
> Ryan, > > It looks like the patch was fairly simple after all. I've done some > initial testing and it hasn't broken any of the FTPS servers I usually > test against. But I still have more testing to do tomorrow to verify
this. Show quoted text
> > In the mean time, let me know how this beta works out for you. I'd like > to see some new logs to see if I'm on the right track or not. > > Curtis >
From: ryan [...] cnvi.com
Sorry, somehow I entirely missed the status update. I just tried the patch and it still failed. I'm attaching a new log. On Thu Dec 15 12:54:01 2011, CLEACH wrote: Show quoted text
> Ryan, > > Have you had the chance to test out the Net-FTPSSL patch I sent you last > weekend? I'm really interested in if it works for you so that I can > make it an official release if it works. Or else tweak the patch some > more if necessary.
Subject: ftpssl.log
Download ftpssl.log
application/octet-stream 2.4k

Message body not shown because it is not plain text.

Ryan, Thank you for the updated logs. According to the logs, the original problem has been fixed. The responses now goes with the command being issued. :) As to why you are looping between the PBSZ & PROT commands I'd have to see a code sample of what your are trying to do to see what's happening there. I have a suspicion that it has something to do with how my code is interpreting the response over multiple lines vs a single line to get needed information from it in combination with your options to new(). But I'll need a code sample from you to confirm it. I saw at least one place I'll need to make a code change, but it doesn't look like that's the code causing you your problems. Once I see what code you are trying to execute I can see about adding some additional debug lines in the next beta to see if we can quickly fix the remaining issues. Curtis On Thu Dec 15 13:20:26 2011, ryangran wrote: Show quoted text
> Sorry, somehow I entirely missed the status update. I just tried the > patch and it still failed. I'm > attaching a new log. > > On Thu Dec 15 12:54:01 2011, CLEACH wrote:
> > Ryan, > > > > Have you had the chance to test out the Net-FTPSSL patch I sent you
> last
> > weekend? I'm really interested in if it works for you so that I can > > make it an official release if it works. Or else tweak the patch
> some
> > more if necessary.
From: ryan [...] cnvi.com
On Thu Dec 15 13:59:31 2011, CLEACH wrote: Show quoted text
> Ryan, > > Thank you for the updated logs. According to the logs, the original > problem has been fixed. The responses now goes with the command being > issued. :) > > As to why you are looping between the PBSZ & PROT commands I'd have to > see a code sample of what your are trying to do to see what's happening > there.
Pretty simple code block actually. I've gone over the code, and the FTPSSL statements being executed boil down to: print "Before PUT<br>\n"; print 'PUT: ' . $ftp->put( $tmpfn, $file ) . "<br>\n" or die; print "After PUT<br>\n"; print 'RESULT: ' . $ftp->last_message . "<br>\n" or die; It's in a foreach loop that creates $tmpfn and $file, but that's about it.
Ryan, I need the entire sample program, not just the one statement generating the bug. Without the context, especially the new() options, I don't have enough to work with. Now that we've fixed the original problem, I can emulate that server's behavior and try to reproduce your new problem locally. But I need a short test program from you that you say will reproduce the problem. Once I get it I'll just provide values for the server & log in credentials & then I should be able to reproduce your problem locally. So far I haven't been able to do that. Curtis On Thu Dec 15 15:58:27 2011, ryangran wrote: Show quoted text
> On Thu Dec 15 13:59:31 2011, CLEACH wrote:
> > Ryan, > > > > Thank you for the updated logs. According to the logs, the original > > problem has been fixed. The responses now goes with the command
> being
> > issued. :) > > > > As to why you are looping between the PBSZ & PROT commands I'd have
> to
> > see a code sample of what your are trying to do to see what's
> happening
> > there.
> > Pretty simple code block actually. I've gone over the code, and the > FTPSSL statements being > executed boil down to: > > print "Before PUT<br>\n"; > print 'PUT: ' . $ftp->put( $tmpfn, $file ) . "<br>\n" or die; > print "After PUT<br>\n"; > print 'RESULT: ' . $ftp->last_message . "<br>\n" or die; > > It's in a foreach loop that creates $tmpfn and $file, but that's about > it.
Ryan, I sent you a couple of betas off line. The last one I sent this morning should fix things. It's the same one (v0.19_06) attached to this response. Can you please test it and resend me the log file generated? I also returned your test programs with a few recommended changes. You shouldn't need the vast majority of options that you selected. The main change being: # Croak=>1 turns on auto die if a FTPSSL call fails. # Remove this option if it causes problems with your testing. my $ftps = Net::FTPSSL->new('server.com', Encryption => IMP_CRYPT, Trace=>1, Debug=>1, DebugLogFile=>'/tmp/ftpssl.log', Croak=>1); I'm fairly confident that this beta will work for you. So once I see the logs I'll know for sure and I'll see about generating an official v0.20 that doesn't have all the debug statements in it. Curtis On Thu Dec 15 20:14:56 2011, CLEACH wrote: Show quoted text
> Ryan, > > I need the entire sample program, not just the one statement generating > the bug. Without the context, especially the new() options, I don't > have enough to work with. > > Now that we've fixed the original problem, I can emulate that server's > behavior and try to reproduce your new problem locally. But I need a > short test program from you that you say will reproduce the problem. > > Once I get it I'll just provide values for the server & log in > credentials & then I should be able to reproduce your problem locally. > So far I haven't been able to do that. > > Curtis >
Subject: FTPSSL.pm

Message body is not shown because it is too large.

From: ryan [...] cnvi.com
On Fri Dec 16 15:01:14 2011, CLEACH wrote: Show quoted text
> Ryan, > > I sent you a couple of betas off line. The last one I sent this morning > should fix things. It's the same one (v0.19_06) attached to this > response. Can you please test it and resend me the log file generated?
Not sure what happened, I didn't receive the offline emails nor the notice of new activity on this ticket. In any case, tried 0.19_06 this morning and everything seems to be working OK. I see some messages in the log related to ALLO which aren't working, but at least everything is failing gracefully. If you need any other tests prior to a release, please let me know -- I'll keep checking the ticket until you close it.
Subject: ftpssl.log
Download ftpssl.log
application/octet-stream 16.1k

Message body not shown because it is not plain text.

Ryan, Part of your problem now is that you are using options in your call to new() that you shouldn't need to be using for your server. That's a source of some of your issues now. Change it to: my $ftps = Net::FTPSSL->new('server.com', Encryption => IMP_CRYPT, Trace=>1, Debug=>1, DebugLogFile=>'/tmp/ftpssl.log'); Then rerun your tests & send me your logs files. I wouldn't be surprised if it will completely work with this beta once these extra options are removed. Curtis On Sat Dec 17 11:27:01 2011, ryangran wrote: Show quoted text
> On Fri Dec 16 15:01:14 2011, CLEACH wrote:
> > Ryan, > > > > I sent you a couple of betas off line. The last one I sent this
> morning
> > should fix things. It's the same one (v0.19_06) attached to this > > response. Can you please test it and resend me the log file
> generated? > > Not sure what happened, I didn't receive the offline emails nor the > notice of new activity on this > ticket. In any case, tried 0.19_06 this morning and everything seems > to be working OK. I see > some messages in the log related to ALLO which aren't working, but at > least everything is failing > gracefully. If you need any other tests prior to a release, please > let me know -- I'll keep > checking the ticket until you close it.
Ryan, Have you had the chance to redo your test by making the changes below? Curtis On Sat Dec 17 16:53:18 2011, CLEACH wrote: Show quoted text
> Ryan, > > Part of your problem now is that you are using options in your call to > new() that you shouldn't need to be using for your server. That's a > source of some of your issues now. > > Change it to: > my $ftps = Net::FTPSSL->new('server.com', Encryption => IMP_CRYPT, > Trace=>1, Debug=>1, DebugLogFile=>'/tmp/ftpssl.log'); > > Then rerun your tests & send me your logs files. I wouldn't be > surprised if it will completely work with this beta once these extra > options are removed. > > Curtis > > On Sat Dec 17 11:27:01 2011, ryangran wrote:
> > On Fri Dec 16 15:01:14 2011, CLEACH wrote:
> > > Ryan, > > > > > > I sent you a couple of betas off line. The last one I sent this
> > morning
> > > should fix things. It's the same one (v0.19_06) attached to this > > > response. Can you please test it and resend me the log file
> > generated? > > > > Not sure what happened, I didn't receive the offline emails nor the > > notice of new activity on this > > ticket. In any case, tried 0.19_06 this morning and everything seems > > to be working OK. I see > > some messages in the log related to ALLO which aren't working, but at > > least everything is failing > > gracefully. If you need any other tests prior to a release, please > > let me know -- I'll keep > > checking the ticket until you close it.
> >
From: ryan [...] cnvi.com
I removed the OverrideHELP option, which from my understanding would be the only one affecting commands -- still seeing some ALLO errors. Show quoted text
> Have you had the chance to redo your test by making the changes below? >
Subject: ftpssl.log
Download ftpssl.log
application/octet-stream 16.4k

Message body not shown because it is not plain text.

Thanks for the logs. It helped a lot with understanding some of the behavior of your FTPS server. It looks like Help wasn't supported on your FTPS server. So when supported() get's called, it's always returning false. So you can ignore the ALLO message the "<<+ 502" it's telling me that the command isn't going to your server since it's unknown. Your previous log was actually sending the ALLO command and returning an error that was ignored. I'm going to call this beta a success since besides the ALLO issue you said it was working for you and it's not causing you any issues. Quite a few servers require the ALLO command to work, but yours just ignores it. I'll try to get the version without the debug statements out before the new year. Thanks for your help. Curtis On Thu Dec 22 11:23:35 2011, ryangran wrote: Show quoted text
> I removed the OverrideHELP option, which from my understanding would > be the only one > affecting commands -- still seeing some ALLO errors. > >
> > Have you had the chance to redo your test by making the changes
> below?
> >
Ryan, I've just uploaded the official 0.20 release of Net-FTPSSL with the debug lines removed and several minor tweaks to the code. It should be available for download in a few hours. Feel free to let me know if you end up having any issues with this release. I'll be closing this ticket in the next couple of days. Curtis On Thu Dec 22 17:11:51 2011, CLEACH wrote: Show quoted text
> Thanks for the logs. It helped a lot with understanding some of the > behavior of your FTPS server. > > It looks like Help wasn't supported on your FTPS server. So when > supported() get's called, it's always returning false. So you can > ignore the ALLO message the "<<+ 502" it's telling me that the command > isn't going to your server since it's unknown. Your previous log was > actually sending the ALLO command and returning an error that was ignored. > > I'm going to call this beta a success since besides the ALLO issue you > said it was working for you and it's not causing you any issues. Quite > a few servers require the ALLO command to work, but yours just ignores > it. I'll try to get the version without the debug statements out before > the new year. > > Thanks for your help. > > Curtis > > On Thu Dec 22 11:23:35 2011, ryangran wrote:
> > I removed the OverrideHELP option, which from my understanding would > > be the only one > > affecting commands -- still seeing some ALLO errors. > > > >
> > > Have you had the chance to redo your test by making the changes
> > below?
> > >
> >