Hi
 Please provide your valuable comments regarding this initial ARC draft 
for integrating various minor PHP enhancements within OpenSolaris.


Template Version: @(#)sac_nextcase 1.64 07/13/07 SMI
This information is Copyright 2009 Sun Microsystems
1. Introduction
   1.1. Project/Component Working Name:
    PHP5 Feature Enhancements
   1.2. Name of Document Author/Supplier:
    Author:  Sriram Natarajan
   1.3  Date of This Document:
   17 Feb, 2009

2. Technical Details

PHP5 Feature Enhancements

Summary

This case adds an assortment of new functionality to the recently 
integrated
PHP5 engine (2007/168[1], 2007/641[2], 2008/538[3]).

This case seeks Micro/Patch Release Binding.

2.1 Provide PHP extension specific statistics

Provide the ability to deliver statistics of 3rd party extensions like APC
and memcache usage statistics by delivering a separate SUNWphp52r-stats 
package.

This package will deliver the following files

             /var/php/5.2/stats/apc/apc.php
             /var/php/5.2/stats/memcache/memcache.php
             /etc/apache2/2.2/conf.d/phpstats.conf

2.2 Provide sample script(s) to help configure PHP runtime with other 
web server(s)

Deliver a sample script within current PHP package to help configure PHP 
runtime
with other web server(s) like Sun Java System Web Server.

These scripts will be delivered within SUNWphp52u package under

                /usr/php/5.2/samples/scripts

2.3 Integrate PHP runtime with OpenLDAP libraries.

This project will switch the LDAP client library internally used by PHP LDAP
extension from native Solaris LDAP to OpenLDAP client library.

PHP LDAP extension is currently linked against Solaris LDAP client library
for providing necessary implementation to connect to a LDAP server. 
However,
Sun LDAP client library does not allow connecting to secure LDAP 
server(ldaps)
in one of the following ways as expected by PHP LDAP extension:

* as an environment variable set by administrator within PHP application
* ldaps URL passed to PHP's ldap_connect() API

This project proposes an interface contract between OpenLDAP client 
library with
PHP runtime and will now link PHP LDAP extension against OpenLDAP client 
library.

2.4 Provide additional DTrace probes within PHP runtime

Deliver additional DTrace probes within PHP runtime by providing patches to
Zend engine. These additional patches will be contributed to the 
upstream community.


3. Interfaces:

3.1 Interfaces removed:

        NAME                         STABILITY          NOTES

        LDAP                         Evolving           PSARC/1997/276

3.2 Interfaces added:

        NAME                         STABILITY          NOTES

        OpenLDAP                     External/Volatile  PSARC/2008/507

        Apache with OpenLDAP         External/Volatile  


3.3 Imported Interfaces

       NAME                                            STABILITY
       -----------------------------------------------------------
       /var/apache2/2.2/conf.d                          Uncommitted


       3.2. Exported Interfaces

       NAME                                            STABILITY
       -----------------------------------------------------------
       /var/php/5.2/stats/apc/apc.php                   Volatile
       /var/php/5.2/stats/memcache/memcache.php         Volatile
       /etc/apache2/2.2/conf.d/phpstats.conf            Volatile
       /usr/php/5.2/samples/scripts/setup-sun-webserver.sh  Volatile

       dTrace probes for PHP runtime

        request-startup
        request-shutdown
        module-startup
        module-shutdown
        module-init-entry
        module-init-return
        zend-module-init-entry
        zend-module-init-return
        execute-entry
        execute-return
        execute-internal-entry
        execute-internal-return
        compile-file-entry
        compile-file-return
        error
        exception-thrown
        exception-catched
        function-entry
        function-return
    
The dtrace probes are labelled as "Volatile" for now because they are
(a) not finalized and (b) not in the PHP source tree yet. They are
stable and working but are not part of standard release. We are using a
patch into the 5.2 source code. The dtrace documentation is a
work-in-progress now and should be made available when the bits are
officially released.


4. Dependencies:

        OpenLDAP 2.4.x in package SUNWopenldap
          (/usr/include/openldap/*.h, libldap_r-2.4.so, liblber-2.4.so)


5. References

       [1] http://www.opensolaris.org/os/community/arc/caselog/2007/168/
       [2] http://www.opensolaris.org/os/community/arc/caselog/2007/641/
       [4] http://www.opensolaris.org/os/community/arc/caselog/2007/600/
       [5] http://www.opensolaris.org/os/community/arc/caselog/2007/608/
       [6] http://www.opensolaris.org/os/community/arc/caselog/2008/538/
       [7] http://www.opensolaris.org/os/community/arc/caselog/2007/586/


6. Resources and Schedule
   6.4. Steering Committee requested information
      6.4.1. Consolidation C-team Name:
       sfw
   6.5. ARC review type: FastTrack
   6.6. ARC Exposure: open 

Reply via email to