ID: 21102 Updated by: [EMAIL PROTECTED] -Summary: stat, lstat fail if filesize larger than 2 GB Reported By: [EMAIL PROTECTED] -Status: Feedback +Status: Analyzed -Bug Type: *Directory/Filesystem functions +Bug Type: Feature/Change Request -Operating System: solaris +Operating System: any with large file support PHP Version: 4.4.0-dev New Comment:
PHP does not support 64-bit stat'ing. Additionally, PHP only supports signed 32-bit integers (unless your CPU is 64-bit native). PHP could return large file sizes as floating point numbers, but the infrastructure for 64 bit stat is not in place at this time. I'm changing this to a feature request, as this is the "expected" behaviour. Previous Comments: ------------------------------------------------------------------------ [2003-01-12 18:22:29] [EMAIL PROTECTED] Current OS is Solaris 9u1, 64 bit kernel. Checking types.h and stat.h indicates that Solaris uses an off_t type for the stat structure. off_t is either a long, or a longlong_t, defined as long long. It seems to me that the stat structure in Solaris has the correct type. This is also indicated by the fact that I can use the stat(2) functions to stat the file in a simple C-program without any errors (and get the correct file size), Solaris does not have a shell stat command (AFAIK). ------------------------------------------------------------------------ [2003-01-11 21:35:05] [EMAIL PROTECTED] What version of Solaris are you running? Many unixes (even current ones) use a signed int (32-bit) for the st_size element of the stat struct used by their c-library's stat() function. Try taking a look in stat.h and/or types.h if you'd like to confirm this on your local system. Does the stat command (from the shell) return sensible output when run against this file? ------------------------------------------------------------------------ [2003-01-11 20:49:47] [EMAIL PROTECTED] Updating -> 4.4.0-dev / open ------------------------------------------------------------------------ [2003-01-11 20:10:51] [EMAIL PROTECTED] [unable to edit bug report] latest CVS tarball does not fix the bug, example still fails with latest release. ------------------------------------------------------------------------ [2003-01-09 01:00:02] [EMAIL PROTECTED] No feedback was provided for this bug for over 2 weeks, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to "Open". ------------------------------------------------------------------------ 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/21102 -- Edit this bug report at http://bugs.php.net/?id=21102&edit=1