Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

libcrypto error in OSS

160 views
Skip to first unread message

mgri...@storedvalue.com

unread,
Jul 12, 2013, 4:09:44 PM7/12/13
to
All,

I am trying to run a program that uses libcryto.so and I am getting the following error:

*** RLD ERROR ***: Internal Error 11 Context#: Context1: Context2:/home/mgriffin/starter/all/libcrypto.so
/bin/-sh: starter: tdm_execve(): failed with unexpected error
pr_errno=(4022) pr_TPCerror=(72) pr_TPCdetail=(11)

But the file exists...

/home/mgriffin/starter/all: ls -l
total 5445
-rwxrwxrwx 1 BATS.MGRIFFIN BATS 3391784 Jul 12 11:43 libcrypto.so
-rwxrwxrwx 1 BATS.MGRIFFIN BATS 575040 Jul 12 11:43 libssl.so
-rwxrwxrwx 1 BATS.MGRIFFIN BATS 1607512 Jun 11 14:00 starter

I don't understand where I am going wrong here. Any thoughts? Thanks,

Matt

red floyd

unread,
Jul 12, 2013, 4:34:09 PM7/12/13
to
On 7/12/2013 1:09 PM, mgri...@storedvalue.com wrote:
> All,
>
> I am trying to run a program that uses libcryto.so and I am getting the following error:
>
> *** RLD ERROR ***: Internal Error 11 Context#: Context1: Context2:/home/mgriffin/starter/all/libcrypto.so
> /bin/-sh: starter: tdm_execve(): failed with unexpected error
> pr_errno=(4022) pr_TPCerror=(72) pr_TPCdetail=(11)
>
> But the file exists...
>
> /home/mgriffin/starter/all: ls -l
> total 5445
> -rwxrwxrwx 1 BATS.MGRIFFIN BATS 3391784 Jul 12 11:43 libcrypto.so
> -rwxrwxrwx 1 BATS.MGRIFFIN BATS 575040 Jul 12 11:43 libssl.so
> -rwxrwxrwx 1 BATS.MGRIFFIN BATS 1607512 Jun 11 14:00 starter
>

What does NOFT (or ENOFT) have to say about the file, especially when
you run TDMINFO or LISTATTRIBUTE? Or if ENOFT, TDMINFO?
Do you have your _RLD_LIB_PATH set, or did you specify -rld_L
on the eld/ld command line?
If you're on a G series RVU, did you make sure to build with LD
and not NLD?



mgri...@storedvalue.com

unread,
Jul 12, 2013, 4:45:36 PM7/12/13
to
/home/mgriffin/starter/all: enoft file starter
Object File: starter
Format Type: ELF64-bit, Big_Endian, IA64, PIC_Program (loadfile)
/home/mgriffin/starter/all: enoft file libcrypto.so
Object File: libcrypto.so
Format Type: ELF64-bit, Big_Endian, IA64, DLL (loadfile)

I set _RLD_LIB_PATH to include this directory.

_RLD_LIB_PATH=/usr/tandem/jdbcMx/T1275H50/lib:/usr/tandem/jdbcMp/current/lib:/usr/tandem/javaexth10/lib:/usr/local/bin:/home/mgriffin/starter/all

Keith Dick

unread,
Jul 14, 2013, 8:26:00 PM7/14/13
to
The error numbers in your first post seem to decode to RLD internal error 11.

It appears that there is something wrong with libcrypto.so, but I don't know what it would be. Did you build libcrypto.so yourself? If so, review the build output to see whether there are any messages that might give a clue. Also, listing some of the information from the file using enoft, as red floyd suggested, might give a clue.

Perhaps there is some incompatibility between your main program and the library, so consider that, too. You are running on an H or J series system, right?

mgri...@storedvalue.com

unread,
Jul 19, 2013, 10:38:20 AM7/19/13
to
This is a J-series machine I'm working on.

There shouldn't be anything wrong with libcrypto. I didn't build it myself and I've tried a couple of different copies.

/home/mgriffin/starter/all: enoft -LIBLIST file libcrypto.so

*** SYNTAX ERROR *** [3012]:
Command specific options not correct, command ignored.

Usage:
LIBLIST
/home/mgriffin/starter/all: enoft file libcrypto.so -LIBLIST
Object File: libcrypto.so
Format Type: ELF64-bit, Big_Endian, IA64, DLL (loadfile)

******** Section .liblist (File Offset 0x000006f0)

Count ReExport NotFound DLL_Name
----------------------------------------------------------------------
1 no no zutildll
2 no no zrlddll
3 no no zcredll
4 no no zcrtldll
5 no no ZOSSKDLL
6 no no ZSECDLL
7 no no zossedll
8 no no ZINETDLL

I find myself wondering if there is a security problem. This program works just fine on another machine.

Keith Dick

unread,
Jul 21, 2013, 5:39:12 AM7/21/13
to
If you think there is a security problem, have you checked the security on the file?

Something that might help (no guarantee) is to use the DEFINE to tell the loader to report things as it goes along. If you aren't careful, you can get a very large amount of output from this, but in the case of an error such as yours, you probably would only have to look at the end of the output to see what it was doing when it got the error.

The description, copied from the RLD manual is:

Loader Diagnostic Message Verbosity Level

In order to get diagnostic output from rld regarding loading of library files, resolution
of symbol names and search details for files and symbols, users have to define a
=_RLDVERBOSE define on Guardian or _RLDVERBOSE environment variable on
OSS giving it a verbosity level.

Verbosity levels are:

0 - default (as though this specification is absent)
1 - none (no output to hometerm/stderr)
2 - warnings and errors
3 - also show files loaded
4 - also show symbol resolution
5 - same as 3, plus file search details
6 - same as 4, plus file search details
7 - same as 4, plus symbol search details
8 - all the above
9 - suppress warnings, report only errors

The syntax for specifying these values is as follows:

Guardian:

add DEFINE = _RLDVERBOSE, class MAP, file #<verbose-level>

OSS:

export _RLDVERBOSE=<verbose-level>


The RLD manual describes the procedures used for dynamic linking, but I believe static linking is just dynamic linking done by the process startup code, so I'm pretty sure this DEFINE is effective for static linking, too. In your case, I think you would be best served by verbose-level 5, but feel free to try other levels.

It occurs to me that it might not be libcrypto.so that is the one with the error, but one of the dlls loaded by a reference from libcrypto.so. If that is the case, then I think the details _RLDVERBOSE will give you would show which dll really is the one causing the problem.
0 new messages