Re: cvs: TSRM / tsrm_virtual_cwd.c

From: Date: Mon, 04 Nov 2002 18:29:37 +0000
Subject: Re: cvs: TSRM / tsrm_virtual_cwd.c
References: 1 2 3 4  Groups: php.cvs 
Request: Send a blank email to php-cvs+get-15806@lists.php.net to get a copy of this message
Looks good except for: if (realpath(path, resolved_path) && use_realpath) { which I think should be: if (use_realpath && realpath(path, resolved_path)) Thanks, Andi At 06:49 PM 11/4/2002 -0500, Ilia A. wrote:
I've taken you suggestion about adding an additional parameter to file_ex() to address the symlink situation. Attached is a patch that I believe should resolve the problem. Ilia On November 4, 2002 02:53 pm, Ilia A. wrote: On November 4, 2002 03:43 am, Andi Gutmans wrote:
At 02:41 PM 11/4/2002 -0500, Ilia A. wrote:
On November 4, 2002 03:36 am, you wrote:
I'll check it out tomorrow. Your code is problematic in any case as you're returning a pointer to the stack which is a no-no in C. I'll see if there's a way to do what you need without adding this virtual_link function. Can you revert it in the meantime?
Quite correct, not sure why I missed that and the compiler did not catch that. I'll revert the patch momentarily.
OK thanks. Will an extra argument to file_ex() telling it not to run realpath() solve your problem? We need realpath() everywhere else but I think it'll be OK for unlink() only.
Actually we need it several other places, originally I've added this code due to a bug in symlink/link implementation. The following functions would need not to resolve symlinks: virtual_rename(), virtual_lstat(), virtual_rmdir(), virtual_unlink(), virtual_chown(). Possibly others. The extra argument for file_ex would solve the problem, however given the fact this may be a common function, it may be a good idea to keep it seperate. Ilia -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php


« previous php.cvs (#15806) next »