Re: Re: [PATCH] Deprecate use of stdio

From: Date: Fri, 02 May 2003 17:21:33 +0000
Subject: Re: Re: [PATCH] Deprecate use of stdio
Groups: php.internals 
Request: Send a blank email to internals+get-1182@lists.php.net to get a copy of this message
Under Solaris 9 it is impossible to link against sfio without changing sfio itsself. At 11:38 02.05.2003 -0400, you wrote:
I've been playing with sfio on Solaris quite a bit recently and I've had our site working on iPlanet with sfio for a couple of weeks. Seems to be doing okay so far with something between 4.3.1 and 4.3.2. Getting sfio to link was a bit of pain in the arse at first, but it came down to a couple of simple LIBS arguments to get it going. As you say, fixing the problem at the root would be preferable, but sfio might be a decent intermediary step. I can test the patches and such on Solaris 8 SPARC, and if you (or anybody who needs it, within reason of course) would like access to a Solaris shell, I can arrange it. (It's slightly limited by a 300 MB quota, but that's pretty much it.) J Sascha Schumann wrote:
    The following patches are aimed at deprecating the use of
    stdio by the script lexer in PHP 4, because certain stdio
    libraries impose restrictive limits on the number of open
    handles*.
    The patches have been split functionally for the benefit of
    the reviewer.
    Patch 1 adds a stream interface which fills in a
    zend_file_handle.  This is simply a modified copy of the
    open_as_file function.
    Patch 2 adds zend_open() which expects the implementation to
    fill in a zend_file_handle.
    Patch 3 makes PHP supply a zend_open implementation.
    Patch 4 modifies the lexer skeleton so that it can read using
    POSIX functions and stdio.  It also makes
    open_file_for_scanning use zend_open.
    * Background: Even the most modern Solaris ships with a stdio
      library which cannot handle fds over 255.  This severely
      limits any web server which may open more than 255 fds per
      process, because it won't be able to parse PHP scripts
      anymore.
      I've evaluated integrating sfio into the build process, but
      as it turns out, a full and complete integration would be a
      lot more complex than addressing the issue up-front.
    - Sascha
-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php
----- Uwe Schindler Addr 1: Bamberger Str. 24a, D-96049 Bamberg Addr 2: Drausnickstr. 153, D-91052 Erlangen http://www.thetaphi.de - http:///www.schindlers-software.de eMails: uwe@thetaphi.de (private); info@schindlers-software.de (company) Tel./Fax: +49 700 PCLATEIN (+49 700 72528346) Schindlers Software - Home of Schindlers PC-LATEIN 3.10 DIE Software zum Lateinlernen!

« previous php.internals (#1182) next »