Re: potential solution to user streams + allow_url_include=off

From: Date: Fri, 18 May 2007 18:23:31 +0000
Subject: Re: potential solution to user streams + allow_url_include=off
References: 1  Groups: php.internals 
Request: Send a blank email to internals+get-29524@lists.php.net to get a copy of this message
I think the problem could be solved this way: 0. allow_url_include and allow_url_fopen renamed to allow_remote_include and allow_remote_fopen (not really necessary, just much cleaner, if you don't like it, ignore it for now). 1. By default, allow_remote_inclue=0, allow_remote_fopen=1 2. Stream can be of three types - remote, local and user/local. 3. User streams can be declared when registered as either remote or user/local, remote being the default. 4. When operation on user/local stream is run, allow_remote_fopen is disabled if allow_remote_include was disabled. Thus, if somebody doesn't mark the stream local, it's remote and behaves just like http://. If it is marked as local, it can be used in includes under allow_remote_include=0, however it could not do things like: function stream_open($path, $mode, $options, &$opened_path) { $this->file = fopen($path); } and thus make the local include work with remote files. This would require following changes: 1. Adding optional parameter to stream registration functions. 2. Some tweaking in user streams module to toggle allow_remote_fopen for user/local streams. What do you think? -- Stanislav Malyshev, Zend Products Engineer stas@zend.com http://www.zend.com/

« previous php.internals (#29524) next »