loading oracle libraries (relinked with cob -z...) gives runtime error 198 or "Symbol resolution failed"



Hi,
I have to admit I'm not sure if this should be posted here or in
comp.databases.oracle.misc, but as I'm writing about something created
by means of "cob" failing when used by cobrun[_t] I'll try it here
first.
I'm still looking for a proper way to use oracle10g with
MFServerExpress4.0 on AIX5.3 all 64bit.
The way recommended before to me by MF was to use the standard runtimes
rts* and create a shared library e.g. libmfora.so to be loaded by my
programs using the compiler directive INITCALL.
With Linux and ServerExpress2.2 32bit this works fine. Even on AIX5.3
with 32bit Sx2.2 and oracle9.2 I tested that sucessfully. So I'm not
completely new to the subject.

Relinking the libraries using the makefiles provided by oracle after
patching them eliminating a bug (pw-syscall is no longer needed, thus
RTSPORTFLAGS has to be eliminated) and calling "cob -z ..." instead
"cob -x ..." in both RTSORA_LINKLINES produces a *.so "sucessfully" but
loading that fails with runtimeerror 198.

Using a simple c-program for simplicity that does just dlopen()
(provided by a very helpful MF-guy ;-) shows "why" it fails:
With oracle 10.2.0.1.0 I get
Symbol resolution failed for /soft/oracle10/lib/libnnz10.so because:
Symbol ber_fre (number 68) is not exported from dependent module
loader.
Symbol ldap_bind_s ...
Symbol ldap_count_entries ...
Symbol ldap_first_attribute ...
Symbol ldap_first_entr ...
Symbol ldap_free_urldesc ...
Additional errors occurred but are not reported.
....
With oracle 10.1.0.2.0 I get almost the same messages on other Symbols
ssl_Write, ssl_SetVerifyFunc, ssl_SetValidateRef, ssl_SetValidateFunc,
ssl_SetSignFunc, ssl_SetSessionRef and ssl_SetSessionFuncs (and
"Additional...").

Does anybody have any idea (besides Simon Tobias who is trying to get
some infos out of some busy colleagues, but I'm trying to find a
solution as a christmas present for myself )?

Why are the completely relinked runtimes (rtsora replacing rts64_t in
$COBDIR/bin) capable to run but a relinked library is incomplete?
In all cases LIBPATH=$ORACLE_HOME/lib:$COBDIR/lib and
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/network/lib:$ORACLE_HOME/rdbms/lib:$COBDIR/lib
so there should be at least the correct 64bit-libs used. But it seems
they are not enough? Where could I look for maybe additional libraries
to be included to create a complete *.so?
Is there any new Compileroption besides -z which must be used with
"cob" (in fact cob64) with 64-bit?

Until now I tried
RTSORA_LINKLINE=$(COB) -v -o $(LOC_RTSORA) -t -ze "" $(RTSPORTFLAGS)
....
as well as
RTSORA_LINKLINE=$(COB) -o $(LOC_RTSORA) -t -z,sys,nounload -e ""
$(RTSPORTFLAGS) ...
with no visible difference.

Thanks in advance,
bine

.



Relevant Pages

  • Remote Compromise in Oracle 9i Database Server
    ... A large part of Oracle database functionality is provided by PL/SQL ... operating system libraries or Dynamic Link Libraries. ... An attack would probably call systemand pass ... external procedure the oracle process connects to the Listener and requests ...
    (Bugtraq)
  • [NEWS] Vulnerability in Oracle 9i Database Server Leads to Remote Compromise
    ... The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com ... Oracle version 9 ... functions exported by operating system libraries or Dynamic Link ... requests that the Listener load the relevant library, ...
    (Securiteam)
  • ANNOUNCE: DBD::Oracle 1.16 release candidate 7 - request for testing
    ... Unresolved symbol for OCILobIsTemporary and OCILobFreeTemporary. ... because OCILobWriteAppend_log_stat does also not exists for Oracle 8.0.6. ... If you have problems you may need to rebuild perl with threading enabled. ... Failed to load Oracle extension and/or shared libraries: ...
    (perl.dbi.users)
  • Library not found errors with DBD-Oracle-1.20
    ... Hi, I have successfully installed the Oracle instant client, DBI-1.602 and DBD-Oracle 1.20 and can connect to a database on a remote host, but only if I set LD_LIBRARY_PATH to the directory where the instant client is installed. ... Even if I manually recompile Oracle.so adding a -R parameter with the location of the Oracle libraries, it the ldd command will not locate the library: ...
    (perl.dbi.users)
  • Re: shared libraries
    ... Oracle gives just gives you a zip with some executables and shared ... libraries in it. ... Certainly, though, Oracle knows this and has designed their package ... To UNSUBSCRIBE, email to debian-user-REQUEST@xxxxxxxxxxxxxxxx ...
    (Debian-User)