From: j dot henge-ernst at interexa dot de Operating system: linux PHP version: 5.1.4 PHP Bug Type: OCI8 related Bug description: oci_connect crashes php when charset-parameter is given
Description: ------------ php crashes if the fourth/charset parameter is given to oc_connect or oci_new_connect. Problem seems to be line 990 in oci8.c Problem occurs also if ZendDebugger is not activated. Error occurs also in older versions 5.0.5 Reproduce code: --------------- <?php $c=oci_new_connect("XXXXXXXX", "XXXXXXXX", "XXXXXXX.XXXXXXX.XXX.XXXXXXXXXX", 'AMERICAN_AMERICA.WE8ISO8859P15'); Actual result: -------------- #0 0x0000002a95ea4ef2 in __pause_nocancel () from /lib64/tls/libpthread.so.0 #1 0x0000002a9a426c0c in zend_oe () from /usr/local/Zend/Core/lib/zend/optimizer/php-5.1.x/ZendOptimizer.so #2 <signal handler called> #3 0x0000002a96121af5 in memcpy () from /lib64/tls/libc.so.6 #4 0x0000000000000031 in ?? () #5 0x0000002a985c5e83 in php_oci_do_connect_ex (username=0x986418 "XXXXXXXX", username_len=8, password=0x986978 "XXXXXXXX", password_len=8, new_password=0x0, new_password_len=0, dbname=0x986088 "OPRISKT.XXXXXXXXXXXXXXXXXXXXXX", dbname_len=30, charset=0x9bacc8 "AMERICAN_AMERICA.WE8ISO8859P15", session_mode=0, persistent=0, exclusive=0) at /root/oci8/oci8.c:990 #6 0x0000002a985c71de in php_oci_do_connect (ht=<value optimized out>, return_value=0x9b4078, return_value_ptr=<value optimized out>, this_ptr=<value optimized out>, return_value_used=<value optimized out>, persistent=0, exclusive=1380273473) at /root/oci8/oci8.c:942 #7 0x0000002a985cfc33 in zif_oci_connect (ht=<value optimized out>, return_value=<value optimized out>, return_value_ptr=<value optimized out>, this_ptr=<value optimized out>, return_value_used=<value optimized out>) at /root/oci8/oci8_interface.c:1528 line 990 in oci8.c is: if (charset && *charset) { smart_str_appends_ex(&hashed_details, charset, 1); } which then uses the macro from ./ext/standard/php_smart_str.h where the memcopy is called -- Edit bug report at http://bugs.php.net/?id=37886&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=37886&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=37886&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=37886&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=37886&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=37886&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=37886&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=37886&r=needscript Try newer version: http://bugs.php.net/fix.php?id=37886&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=37886&r=support Expected behavior: http://bugs.php.net/fix.php?id=37886&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=37886&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=37886&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=37886&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=37886&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=37886&r=dst IIS Stability: http://bugs.php.net/fix.php?id=37886&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=37886&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=37886&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=37886&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=37886&r=mysqlcfg