mirror of
https://github.com/php/php-src.git
synced 2025-08-18 15:08:55 +02:00

This updated fixes (this list is not complete): ------------------- #33915 - crash in _oci_close_session #26393 - Segfault during request shutdown in _oci_close_session() (oci8.c:2443) #32741 - hang on ociexecute() with collections (only with 10g, works with 9i) #32325 - can't retrieve collection using OCI8 #33583 - Apache1.3.33 Segmentation fault with php5 & OCI_New_Collection #32361 - connection oci_connect stay persist after process the php #29013 - multiple logins cause handles become invalid #28944 - OCITypeByName: OCI-21522 with two connections Fixed by connection handling rewrite. #32140 - NVARCHAR columns are truncated #31042 - oci_fetch_* sets field value to false #27156 - OCIFetchInto returns false as column value when column contains >1 umlaut Fixed by multiplying buffer size by 3. #33866 - OCIlogon do not returns conn resource for account with expired paswd #33365 - logon fails when password expires Fixed by adding new oci_password_change() call syntax. #33159 - DB-connect via webserver fails after DB-restart ORA-24327 #30808 - oci8 cannot connect after restarting DB #30127 - lost oracle connection. need restart apache. #29902 - oci8 doesn't disconnect sessions, overloads oracle server #29779 - (the same issue with the Oracle server going offline) #26829 - Killed Oracle Sessions openned with OCIPLogon() Fixed by adding oci8.ping_interval option. #32988ext/oci8: OCI doesn't support DB external authentication Fixed by adding support of external credentials (turned off by default). Added new INI options: ---------------------- oci8.ping_interval oci8.max_persistent oci8.persistent_timeout oci8.privileged_connect oci8.statement_cache_size oci8.default_prefetch oci8.old_oci_close_semantics See the updated docs for the detailed descriptions. Major changes: -------------- - connection handling algorithm rewritten. That should add stability and fix all non-reproducible crashes etc; - extension refactored and divided into several files to improve readability and to make it easier to maintain; - added support of statement caching; - added support of privileged connections using external credentials; - added new INI options to manage persistent connections; - fixed oci_close() to close connections correctly.
63 lines
2 KiB
C
63 lines
2 KiB
C
/*
|
|
+----------------------------------------------------------------------+
|
|
| PHP Version 5 |
|
|
+----------------------------------------------------------------------+
|
|
| Copyright (c) 1997-2005 The PHP Group |
|
|
+----------------------------------------------------------------------+
|
|
| This source file is subject to version 3.0 of the PHP license, |
|
|
| that is bundled with this package in the file LICENSE, and is |
|
|
| available through the world-wide-web at the following url: |
|
|
| http://www.php.net/license/3_0.txt. |
|
|
| If you did not receive a copy of the PHP license and are unable to |
|
|
| obtain it through the world-wide-web, please send a note to |
|
|
| license@php.net so we can mail you a copy immediately. |
|
|
+----------------------------------------------------------------------+
|
|
| Authors: Stig Sæther Bakken <ssb@php.net> |
|
|
| Thies C. Arntzen <thies@thieso.net> |
|
|
| Redesigned by: Antony Dovgal <antony@zend.com> |
|
|
| Andi Gutmans <andi@zend.com> |
|
|
| Wez Furlong <wez@omniti.com> |
|
|
+----------------------------------------------------------------------+
|
|
*/
|
|
|
|
/* $Id$ */
|
|
|
|
#if HAVE_OCI8
|
|
# ifndef PHP_OCI8_H
|
|
# define PHP_OCI8_H
|
|
|
|
#ifdef PHP_WIN32
|
|
#define PHP_OCI_API __declspec(dllexport)
|
|
#else
|
|
#define PHP_OCI_API
|
|
#endif
|
|
|
|
#ifdef ZTS
|
|
# include "TSRM.h"
|
|
#endif
|
|
|
|
extern zend_module_entry oci8_module_entry;
|
|
#define phpext_oci8_ptr &oci8_module_entry
|
|
|
|
|
|
PHP_MINIT_FUNCTION(oci);
|
|
PHP_RINIT_FUNCTION(oci);
|
|
PHP_MSHUTDOWN_FUNCTION(oci);
|
|
PHP_RSHUTDOWN_FUNCTION(oci);
|
|
PHP_MINFO_FUNCTION(oci);
|
|
|
|
# endif /* !PHP_OCI8_H */
|
|
#else /* !HAVE_OCI8 */
|
|
|
|
# define oci8_module_ptr NULL
|
|
|
|
#endif /* HAVE_OCI8 */
|
|
|
|
/*
|
|
* Local variables:
|
|
* tab-width: 4
|
|
* c-basic-offset: 4
|
|
* End:
|
|
*/
|
|
|
|
|