php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #58477 Segmentation fault on oci_connect in relation with password expiration warning
Submitted: 2008-12-29 08:26 UTC Modified: 2012-10-26 05:44 UTC
Votes:5
Avg. Score:4.6 ± 0.8
Reproduced:5 of 5 (100.0%)
Same Version:1 (20.0%)
Same OS:0 (0.0%)
From: marc at practeo dot ch Assigned:
Status: No Feedback Package: OCI8 related
PHP Version: 5.2.4 OS: Ubuntu 8.04.1 64bit
Private report: No CVE-ID: None
 [2008-12-29 08:26 UTC] marc at practeo dot ch
Description:
------------
By using :
oci_connect(scott, tiger, //192.168.124.25:1521/ORCL1)
to an Oracle 11.1.0.6.0 - Production database, I got a 
Segmentation fault.

Doing the same connection with SQLplus I got a warning :
"ORA-28002: the password will expire within 2 days"

It's look like the oci8 wrapper is not able to handle this 
kind of warning messages.

By reseting the password on the database, the connection was 
possible again.


pecl oci8 1.3.4 linked to Oracle Instant Client 10.2 (64bit)


Thanks,

Regards,

Marc







Reproduce code:
---------------
with a valid password and no warning :
oci_connect(scott, tiger, //192.168.124.25:1521/ORCL1)

with a valid password but that will expired in 2 days and a warning :
oci_connect(scott, tiger, //192.168.124.25:1521/ORCL1)


Actual result:
--------------
(with strace)
[...]
write(4, 
"\2\244\0\0\6\0\0\0\0\0\3s\3\1\5\0\0\0\1\201\0\0\1\r\0\0"...
, 676) = 676
read(4, "\6x\0\0\6\0\0\0\0\0\17bm2\0\4\0002ORA-28002: 
the"..., 2064) = 1656
fcntl(15587568, F_SETFD, FD_CLOEXEC)    = -1 EBADF (Bad file 
descriptor)
fcntl(15505008, F_SETFD, FD_CLOEXEC)    = -1 EBADF (Bad file 
descriptor)





Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2009-01-07 18:21 UTC] christopher dot jones at oracle dot com
I could not reproduce the problem on Ubuntu 8.04 (32 bit). 

I saw the crash on RHEL 4 (64 bit) when I used Instant Client 10.2 and 11.1.0.6 connecting to 11.1.0.6 DB.  The crash is in the Oracle libraries. 

With Instant Client 11.0.1.0.7 there was no crash, and my connection succeeded.  Can you test with 11.1.0.7 client libraries?
 [2010-04-18 12:46 UTC] bryan dot lajoie at gmail dot com
I am having the identical issue Marc was having.

Oracle 11.1.0.6.0 w/ RHEL 5.

During login, if oracle returns that the password will 
expire soon...The OCI_CONNECT crashes and take the whole 
website down.  Just returns a blank page, which makes thigns 
very difficult to debug :)

Soon as I log into sqlplus, and change the password, all is 
well again.

Will try to update to oracle 11.1.0.7.0 and then report 
back.
 [2010-12-15 22:16 UTC] nathan dot hand at ga dot gov dot au
Confirmed same behaviour with instant client 10.2.0.1 and 10.2.0.5. Using Solaris 10u8 with PHP 5.2.9 and OCI8 1.4.1. Segfault caused by the password expiration warning message from Oracle.
 [2011-11-24 15:20 UTC] asimileac at gmail dot com
Look here how I resolved my problem with Application crashes then using expiring password
https://bugs.php.net/bug.php?id=59896
 [2012-10-26 05:44 UTC] sixd@php.net
-Status: Feedback +Status: No Feedback -Package: oci8 +Package: OCI8 related
 [2016-01-25 10:43 UTC] David dot Gausmann at measX dot com
Hello there,

today we encountered this bug on a customers productive system (PHP 5.3.x on a linux machine).

Is there any reason why this bug is known since 2008 but is still unfixed?
The crash always occurs when the ORA-28002 code is given.


Kind Regards
David Gausmann
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Mon Dec 30 14:01:28 2024 UTC