ID:               25347
 Updated by:       [EMAIL PROTECTED]
 Reported By:      spam at come dot no-ip dot com
 Status:           Bogus
 Bug Type:         FTP related
 Operating System: Windows XP Pro
 PHP Version:      4.3.3
 New Comment:

The code is literally:

  int fd = tmpfile();

PHP makes no decisions on where the file will be created, that is
entirely up to the host OS.  In this case: Windows.  If you consult
http://msdn.microsoft.com you may find a definition of how windows
treats that function call.  Alternatively, an strace (cygwin has an
strace) should provide some insight.


Previous Comments:
------------------------------------------------------------------------

[2003-09-02 20:27:49] spam at come dot no-ip dot com

thats actualy very wierd, because:
neither $_env['TEMP'] nor $_server['TEMP'] returns nothing (but gives
warning error that variable not exist)
and phpinfo() shows only one TEMP directory:
C:\DOCUME~1\apache\LOCALS~1\Temp (it's shows under "Envirement" part)
witch is 100% correct.
that temp folder is automaticaly has setup to full control for apache
user.

so, is there any way to trace where php is trying write something on
disk without permission?
with that ftp_rawlist() function no error logs...

P.S. in case its using TEMP dir, maybe it would be a good idea to add
an option in php.ini to chose that dir? (this case would releave the
pain... ;) )

------------------------------------------------------------------------

[2003-09-02 19:09:15] [EMAIL PROTECTED]

Because your temp folder is probably located somewhere around D:\TEMP

That's just a guess mind you... I can't quite see your drive structure
from here. :)

As to what's pointing there, it's most likely a system wide environment
variable.  Take a look at the output of "phpinfo()" and see if you have
an environment variable by the name of $_ENV['TEMP'] (possibly
$_SERVER['TEMP']).

Even if it's not set, there may be something in Window's clib that
knows to use it as a default.

------------------------------------------------------------------------

[2003-09-02 18:14:34] spam at come dot no-ip dot com

ah, ok, u were almost right...
I got it to work only after I add write permission to entire drive!

can someone explain me why is that?
all software that need to run web server (apache, php, mysql, perl,
etc) are located at D:\server\
if I add write permission to that folder, nothing happens, but if I add
write permission to D:\ drive, then it start working...
in my server configuration nothing pointing outside of \server\ folder,
then why do I need set write permission to D:\ drive???

------------------------------------------------------------------------

[2003-09-02 08:36:11] [EMAIL PROTECTED]

You need to give it write permissions to TEMP directory. Whatever it is
in your system..


------------------------------------------------------------------------

[2003-09-01 22:24:53] spam at come dot no-ip dot com

yes, probably the problem is permissions...but I've tryed add to my
user read/write permissions to temp folder and sessions (the ones that
set in php.ini) still no luck.
I was following installation guide from apache package, that describes
what folders needs to be set the permissions, also set php installation
folder to be full control for my apache user, same thing.

I'm running out of ideas on what else permission I could set up...
P.S. I'm trying not to use any system folders neither for temp files
nor for .ini settings, that makes less painless reinstalling system or
upgrading software. I even tryed give full control and changed
ownership to apache user on all folders that have any relationship to
the apache+php.

------------------------------------------------------------------------

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/25347

-- 
Edit this bug report at http://bugs.php.net/?id=25347&edit=1

Reply via email to