Bug #65392 [Opn->Fbk]: Warning for a success message with ftp_chdir
| From: | cmb@php.net | Date: | Wed, 04 Aug 2021 14:15:19 +0000 |
| Subject: | Bug #65392 [Opn->Fbk]: Warning for a success message with ftp_chdir | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-235597@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=65392&edit=1
ID: 65392
Updated by: cmb@php.net
Reported by: Laurent dot Lyaudet at gmail dot com
Summary: Warning for a success message with ftp_chdir
-Status: Open
+Status: Feedback
Type: Bug
Package: FTP related
Operating System: Debian Linux
PHP Version: 5.4.17
-Assigned To:
+Assigned To: cmb
Block user comment: N
Private report: N
New Comment:
Is this still an issue with any of the actively supported PHP
versions[1]? Particularly fixing of bug #79100 (PHP 7.4.20 and
8.0.7, respectively) might be relevant here.
[1] <https://www.php.net/supported-versions.php>
Previous Comments:
------------------------------------------------------------------------
[2018-05-24 22:44:14] chris dot lloyd at rezare dot co dot nz
I'm also getting a similar problem:
PHP Version: 5.6.4
The following messages indicate success, but they return as failures:
ftp_put(): Ok to send data.
ftp_chdir(): Directory successfully changed.
ftp_put(): Transfer complete.
I often find retrying (typically 2 or 3 times, but can be 5+ times) returns true for success.
------------------------------------------------------------------------
[2018-03-19 15:31:38] cmb@php.net
> It is surprising to obtain a warning but the message is
> "Requested file action okay, completed."
The warning is issued if ftp_chdir() fails[1], which is not
supposed to happen if the reply code is 250[2] (which is
"Requested file action okay, completed."). Either the FTP server
is broken, or our parsing of the response code[3] is too strict.
> ftp_chdir(): Closing data connection, ASCII transfer complete.
> This corresponds to reply code 226 which is not an error code.
According to RFC 959, the only valid success reply code for the
CWD command is 250[4], and it seems that non of the RFC's which
update 959 has added to this. Therefore the FTP server would have
sent an erroneous reply.
[1] <https://github.com/php/php-src/blob/PHP-7.2.4/ext/ftp/php_ftp.c#L533-L536>
[2] <https://github.com/php/php-src/blob/PHP-7.2.4/ext/ftp/ftp.c#L531>
[3] <https://github.com/php/php-src/blob/PHP-7.2.4/ext/ftp/ftp.c#L1356>
[4] <https://tools.ietf.org/html/rfc959#page-49>
------------------------------------------------------------------------
[2014-03-20 21:42:14] Laurent dot Lyaudet at gmail dot com
Hi,
I encountered a similar bug with PHP 5.4.22-1~dotdeb.1
This time the warning was with the following message:
ftp_chdir(): Closing data connection, ASCII transfer complete.
This corresponds to reply code 226 which is not an error code.
Best regards,
Laurent Lyaudet
------------------------------------------------------------------------
[2014-01-29 12:15:17] cagnulein at gmail dot com
I've seen the same bug on Windows 8 64bit with PHP ver. 5.4.24
------------------------------------------------------------------------
[2014-01-26 18:33:51] Laurent dot Lyaudet at gmail dot com
Hi,
Sorry for the late answer but I requested in vain the information on the ftp server even before you
asked for it the 2013-09-08. Until now I asked for it 4-5 times to the partner company we work with
but I never obtained the answer. My contact just told me that it was a ftp server on an unix server
(not really useful).
I wonder if it may be that the ftp server reply contains an error code but provides the message
"Requested file action okay, completed."
If not then the bug is in PHP no matter what the ftp server is.
In both cases, I think it would be useful for PHP to provide the ftp reply code in any ftp related
warning or error message.
Best regards,
Laurent Lyaudet
PS : I get the following
ERROR:
You aren't allowed to change a bug to that state.
when I want to reopen the bug.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=65392
--
Edit this bug report at https://bugs.php.net/bug.php?id=65392&edit=1