#27328 [Opn->Fbk]: ftp_get don't work on a 64 bits php release
| From: | sniper@php.net | Date: | Fri, 20 Feb 2004 09:14:40 +0000 |
| Subject: | #27328 [Opn->Fbk]: ftp_get don't work on a 64 bits php release | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-55222@lists.php.net to get a copy of this message | ||
ID: 27328
Updated by: sniper@php.net
Reported By: rouet at in2p3 dot fr
-Status: Open
+Status: Feedback
Bug Type: FTP related
Operating System: solaris 8
PHP Version: 4.3.4
New Comment:
Please try using this CVS snapshot:
http://snaps.php.net/php4-STABLE-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php4-win32-STABLE-latest.zip
Previous Comments:
------------------------------------------------------------------------
[2004-02-20 03:12:27] rouet at in2p3 dot fr
Description:
------------
we have to use a 64 bits compiled version of php 4.3.4
to solve a limitation problem with popen.
an i discover that ftp_get function don't work.
i looked at the file ftp.c in ext/ftp and the problem is
the length of a long (8 bytes) in 64 bits mode.
that's the portion of code i modified to solve ftp
problem :
/* IP and port conversion box */
union ipbox {
unsigned int l[2];
/* unsigned long l[2];*/
unsigned short s[4];
unsigned char c[8];
};
i recompile php and now ftp-get work.
Reproduce code:
---------------
<body>
<?php
error_reporting(E_ALL);
ini_set("display_error",1);
$ftpc=ftp_connect($host);
$ftpl=ftp_login($ftpc,$user,$password);
ftp_pasv($ftpc,FALSE);
ftp_get($ftpc,$distfile,$localfile,FTP_BINARY);
ftp_pasv($ftpc,TRUE);
ftp_get($ftpc,$distfile,$localfile,FTP_BINARY);
?>
Expected result:
----------------
with passive mode off the error is
PORT required to be upper to 1024
with passive mode on the error is a timeout
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=27328&edit=1