#19050 [Fbk->Opn]: ftp_* functions vs. proftpd
| From: | darklord at revai dot hu | Date: | Mon, 26 Aug 2002 16:04:48 +0000 |
| Subject: | #19050 [Fbk->Opn]: ftp_* functions vs. proftpd | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-17868@lists.php.net to get a copy of this message | ||
ID: 19050
User updated by: darklord@revai.hu
-Summary: Problems with fgets useing large buffers (about 65530)
Reported By: darklord@revai.hu
-Status: Feedback
+Status: Open
-Bug Type: Filesystem function related
+Bug Type: FTP related
-Operating System: Linux Debian Woody
+Operating System: Linux Debian Woody (2.4.18)
-PHP Version: 4.1.2
+PHP Version: 4.2.2
New Comment:
It turned out to be ftp_* bug, sorry.
So:
To solve the error with ftp_get i've rewriten the code to use fopen
with ftp:// filename. It's a workaround, not a FIX!
To solve the error with ftp_nlist, i've used the code posted bellow
(the one which retries the listing)
I've no idea why has the buffer size change worked (65530->3000) but
temporary it solved the problem (my first bug report), but then more
calls were made to the reader function and the hanging began again.
The proftpd developer team says that it's not their problem, I'll write
them something nice ...
And sorry for the misleading ... to all of you.
Previous Comments:
------------------------------------------------------------------------
[2002-08-26 06:29:46] wez@php.net
Is this a problem with fgets or is the problem with ftp_get? (there's a
big difference!).
Can you put these two lines before your fopen line:
echo "Downloaded file from server\n";
flush();
------------------------------------------------------------------------
[2002-08-26 04:02:54] darklord@revai.hu
The -d 3 doesn't solve the problem with ftp_rawlist, but the following
code works for it:
$i=0;
while (($a=ftp_rawlist($this->ftp_fd,$dir)) === false) {
$i++;
if ($i > 5) { die("Error"); }
}
------------------------------------------------------------------------
[2002-08-26 03:33:35] darklord@revai.hu
#13400 is a workaround for this bug, but I think proftp dev team should
know about this thing ...
------------------------------------------------------------------------
[2002-08-26 03:28:38] darklord@revai.hu
I think this error is specific to proftpd becouse the script works fine
on a wu-ftpd ...
------------------------------------------------------------------------
[2002-08-26 02:13:07] darklord@revai.hu
Hi! I've tryed php 4.2.2 (php-cvs don't compile, the error is in the
mysql lib).
Ok! The script above now prints the following (I've chaged the ftp
timeout to 1 sec):
Warning: ftp_get: in
/home_real/darklord/devel/iwo/modules/host_access/ftp/base.php on line
144
I use proftpd and this bug is like #18781, but they say the functions
are slow, but in my case the functions are hanging. I use a local
server (my computer) so the transfer should be fast.
(Sorry for the prev bug report ... but changing the buffer size solved
the problem ... temporaly)
------------------------------------------------------------------------
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
http://bugs.php.net/19050
--
Edit this bug report at http://bugs.php.net/?id=19050&edit=1