Skip Menu |

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

Report information
The Basics
Id: 120623
Status: resolved
Priority: 0/
Queue: Net-FTPSSL

People
Owner: Nobody in particular
Requestors: cmanley [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 0.35
Fixed in: 0.37



Subject: login() fails when checking HELP support with FileZilla Server.
To get it to work I have to comment out this line in the login sub: $self->supported ("HELP"); Below is the relevant part of the debug log: Show quoted text
>>> USER +++++++
<<< 331 Password required for <++++++> Show quoted text
>>> PASS *******
<<< 230 Logged on Show quoted text
>>> HELP
<<< 214-The following commands are recognized: <<< ABOR ADAT ALLO APPE AUTH CDUP CLNT CWD <<< DELE EPRT EPSV FEAT HASH HELP LIST MDTM <<< MFMT MKD MLSD MLST MODE NLST NOOP NOP <<< OPTS PASS PASV PBSZ PORT PROT PWD QUIT <<< REST RETR RMD RNFR RNTO SITE SIZE STOR <<< STRU SYST TYPE USER XCUP XCWD XMKD XPWD <<< XRMD <<< 214 Have a nice day. Show quoted text
>>> FEAT
<<< 211-Features: <<< MDTM <<< REST STREAM <<< SIZE <<< MLST type*;size*;modify*; <<< MLSD <<< AUTH SSL <<< AUTH TLS <<< PROT <<< PBSZ <<< UTF8 <<< CLNT <<< MFMT <<< EPSV <<< EPRT <<< 211 End <<+ 111 Auto-adding OPTS Command! Show quoted text
>>> HELP SITE
<<< 214 Command SITE is supported by FileZilla Server Show quoted text
>>> SITE HELP
<<< 504 Command not implemented for that parameter Show quoted text
>>> ABOR
<<< 226 ABOR command successful Show quoted text
>>> QUIT
<<< 221 Goodbye 504 Command not implemented for that parameter
Hi Craig, If you don't want the supported("HELP") command to be run during the login attempt, just use the OverrideHELP option as part of your call to new(). Some servers just don't implement the help command correctly. See the POD for more information, but the simple way to say all FTP commands are valid is to add "OverrideHELP => 1". The reason for the supported() call is because there are some conditional logic in this module that depends on which FTP commands your server will accept. So all you've done by commenting the line out is defer the check until later on in your code to the 1st time the conditional logic was needed. The call in login() was just put in to make debugging the module simpler and make the logs look more consistent. But your log snip showed a new twist that I'll look into. The "HELP SITE" call probably shouldn't be considered a fatal error when it fails. I'll have to review what's happening there to be sure. Curtis On Tue Mar 14 11:37:22 2017, CMANLEY wrote: Show quoted text
> To get it to work I have to comment out this line in the login sub: > $self->supported ("HELP"); > > Below is the relevant part of the debug log:
> >>> USER +++++++
> <<< 331 Password required for <++++++>
> >>> PASS *******
> <<< 230 Logged on
> >>> HELP
> <<< 214-The following commands are recognized: > <<< ABOR ADAT ALLO APPE AUTH CDUP CLNT CWD > <<< DELE EPRT EPSV FEAT HASH HELP LIST MDTM > <<< MFMT MKD MLSD MLST MODE NLST NOOP NOP > <<< OPTS PASS PASV PBSZ PORT PROT PWD QUIT > <<< REST RETR RMD RNFR RNTO SITE SIZE STOR > <<< STRU SYST TYPE USER XCUP XCWD XMKD XPWD > <<< XRMD > <<< 214 Have a nice day.
> >>> FEAT
> <<< 211-Features: > <<< MDTM > <<< REST STREAM > <<< SIZE > <<< MLST type*;size*;modify*; > <<< MLSD > <<< AUTH SSL > <<< AUTH TLS > <<< PROT > <<< PBSZ > <<< UTF8 > <<< CLNT > <<< MFMT > <<< EPSV > <<< EPRT > <<< 211 End > <<+ 111 Auto-adding OPTS Command!
> >>> HELP SITE
> <<< 214 Command SITE is supported by FileZilla Server
> >>> SITE HELP
> <<< 504 Command not implemented for that parameter
> >>> ABOR
> <<< 226 ABOR command successful
> >>> QUIT
> <<< 221 Goodbye > 504 Command not implemented for that parameter
Hi Curtis, I already tried the OverrideHELP => 1, but it didn't work for me either. I repeated the test again to produce the debug log with OverrideHELP => 1: Show quoted text
>>> USER +++++++
<<< 331 Password required for <++++++> Show quoted text
>>> PASS *******
<<< 230 Logged on Show quoted text
>>> FEAT
<<< 211-Features: <<< MDTM <<< REST STREAM <<< SIZE <<< MLST type*;size*;modify*; <<< MLSD <<< AUTH SSL <<< AUTH TLS <<< PROT <<< PBSZ <<< UTF8 <<< CLNT <<< MFMT <<< EPSV <<< EPRT <<< 211 End <<+ 111 Auto-adding OPTS Command! Show quoted text
>>> SITE HELP
<<< 504 Command not implemented for that parameter Show quoted text
>>> ABOR
<<< 226 ABOR command successful Show quoted text
>>> QUIT
<<< 221 Goodbye 504 Command not implemented for that parameter
Please ignore the log above, something went wrong with pasting. I've attached it now as a file.
Subject: log.txt
>>> USER +++++++ <<< 331 Password required for <++++++> >>> PASS ******* <<< 230 Logged on >>> FEAT <<< 211-Features: <<< MDTM <<< REST STREAM <<< SIZE <<< MLST type*;size*;modify*; <<< MLSD <<< AUTH SSL <<< AUTH TLS <<< PROT <<< PBSZ <<< UTF8 <<< CLNT <<< MFMT <<< EPSV <<< EPRT <<< 211 End <<+ 111 Auto-adding OPTS Command! >>> SITE HELP <<< 504 Command not implemented for that parameter >>> ABOR <<< 226 ABOR command successful >>> QUIT <<< 221 Goodbye 504 Command not implemented for that parameter
In the future, please include the entire log file. For things like this, the details dumped via the call to new() can be helpful. I just tried it out locally & OverrideHELP => 1 is not behaving correctly. I must have introduced a bug the last time I touched that section of code. Thanks for letting me know about it. Curtis On Tue Mar 14 18:47:46 2017, CMANLEY wrote: Show quoted text
> Please ignore the log above, something went wrong with pasting. I've > attached it now as a file.
Hi Craig, Your bug has been fixed. OverrrideHELP now works as advertised in the POD. I just uploaded v0.36. It should be ready to download within the hour. Let me know if you are still having any issues that need to be fixed. Curtis On Tue Mar 14 19:58:31 2017, CLEACH wrote: Show quoted text
> In the future, please include the entire log file. For things like > this, the details dumped via the call to new() can be helpful. > > I just tried it out locally & OverrideHELP => 1 is not behaving > correctly. I must have introduced a bug the last time I touched that > section of code. > > Thanks for letting me know about it. > > Curtis > > On Tue Mar 14 18:47:46 2017, CMANLEY wrote:
> > Please ignore the log above, something went wrong with pasting. I've > > attached it now as a file.
Hi Craig, I just noticed that I forgot to make the failure of SITE HELP non-fatal when Croak=>1 is used. I'll get that fix uploaded in the next day or so as a new release. Sorry about missing that one. Curtis On Wed Mar 22 18:16:37 2017, CLEACH wrote: Show quoted text
> Hi Craig, > > Your bug has been fixed. OverrrideHELP now works as advertised in the > POD. I just uploaded v0.36. It should be ready to download within > the hour. > > Let me know if you are still having any issues that need to be fixed. > > Curtis > > On Tue Mar 14 19:58:31 2017, CLEACH wrote:
> > In the future, please include the entire log file. For things like > > this, the details dumped via the call to new() can be helpful. > > > > I just tried it out locally & OverrideHELP => 1 is not behaving > > correctly. I must have introduced a bug the last time I touched that > > section of code. > > > > Thanks for letting me know about it. > > > > Curtis > > > > On Tue Mar 14 18:47:46 2017, CMANLEY wrote:
> > > Please ignore the log above, something went wrong with pasting. > > > I've > > > attached it now as a file.
Thanks, I'll check it out when it's fixed.
I just uploaded the fix to Net::FTPSSL (v0.37). It should be available in a couple of hours. On Thu Mar 23 05:59:33 2017, CMANLEY wrote: Show quoted text
> Thanks, I'll check it out when it's fixed.
On Fri Mar 24 13:07:13 2017, CLEACH wrote: Show quoted text
> I just uploaded the fix to Net::FTPSSL (v0.37). It should be > available in a couple of hours. > > On Thu Mar 23 05:59:33 2017, CMANLEY wrote:
> > Thanks, I'll check it out when it's fixed.
Thanks! It works now. B.t.w. if it's no problem, then a small suggestion would be to remove the $ characters around the CVS tags when releasing so that the original CVS tag remains intact when the module is imported into other CVS projects.