Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > D

dlerrno(3C)

ELF Applications Only
HP-UX 11i Version 3: February 2007
» 

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index

NAME

dlerrno() — get error code for dynamic linking calls

SYNOPSIS

cc [flag... ] file... -ldl [library]...

#include <dlfcn.h> int *dlerrno(void);

DESCRIPTION

dlerrno() is one of a family of routines that give the user direct access to the dynamic linking facilities (using the -ldl option on the compiler or ld command line). dlerrno() returns a numeric error code that corresponds to the last error that occurred during dynamic linking processing. If no dynamic linking errors have occurred since the last invocation of dlerrno, dlerrno returns RTLD_ERR_NO_ERR (-1). Thus, invoking dlerrno() a second time, immediately following a prior invocation, results in RTLD_ERR_NO_ERR (-1) being returned.

The following is a complete list of the mnemonic error codes. The numeric values can be found in <dlfcn.h>.

RTLD_ERR_UNKNOWN_ERR

Unknown error.

RTLD_ERR_NO_ERR

No Error.

RTLD_ERR_OPEN

Cannot open load module.

RTLD_ERR_IO

I/O error mapping load module

RTLD_ERR_BAD_DLL

Load module is not valid.

RTLD_ERR_BAD_ELF_VER

Unknown ELF version in library.

RTLD_ERR_LIB_OPEN

Unable to find library.

RTLD_ERR_NO_MEMORY

Cannot allocate dynamic memory.

RTLD_ERR_BAD_RELOC

Unknown relocation type.

RTLD_ERR_INTERNAL_ERROR

Internal error encountered.

RTLD_ERR_DLOPEN_BAD_FLAGS

Invalid flag to dlopen() call.

RTLD_ERR_CANT_APPLY_RELOC

Failed to apply relocation.

RTLD_ERR_INV_NEXT_HANDLE

Invalid RTLD_NEXT argument.

RTLD_ERR_UNKNOWN_SYMBOL

Unknown symbol.

RTLD_ERR_INV_LIB_INDEX

Invalid load module index.

RTLD_ERR_INV_HANDLE

Invalid load module handle.

RTLD_ERR_DLCLOSE_REMAINING_DEP

Cannot close load module due to remaining dependencies.

RTLD_ERR_TPREL_NON_TLS_SYM

TPREL relocation on non-thread-specific symbol.

RTLD_ERR_NON_TLS_RELOC_TO_TLS_SYM

Non-thread-specific relocation reference to thread specific symbol.

RTLD_ERR_MMAP_FAILED

mmap() failed.

RTLD_ERR_DLOPEN_TLS_LIB

Cannot dlopen() load module with thread-specific data.

RTLD_ERR_UNLOAD_HANDLE

Invalid load module handle for unload.

RTLD_ERR_UNLOAD_DEP

Cannot unload load module due to remaining dependencies.

RTLD_ERR_CODE_UNSAT

Unsatisfied code symbol in load module.

RTLD_ERR_DATA_UNSAT

Unsatisfied data symbol in load module.

RTLD_ERR_BAD_SYMNAME

Invalid symbol name for shl_findsym().

RTLD_ERR_BAD_SYMTYPE

Invalid symbol type.

RTLD_ERR_SHL_LOAD_BAD_FLAGS

Invalid flags for shl_load().

RTLD_ERR_BAD_TYPE_DEFINESYM

Invalid symbol type for shl_definesym().

RTLD_ERR_UNKNOWN_HANDLE

Unknown handle.

RTLD_ERR_INV_BUFFER_ARGUMENT

Invalid descriptor argument.

RTLD_ERR_INV_ADDRESS

Invalid address for dlmodinfo().

RTLD_ERR_INV_DESC_VERSION

Invalid descriptor version.

RTLD_ERR_FB_CANNOT_WRITE

Cannot write fastbind data.

RTLD_ERR_FB_CANNOT_OPEN_AOUT

Cannot open program file to read fastbind data.

RTLD_ERR_FB_CANNOT_READ

Cannot read fastbind data.

RTLD_ERR_FB_DATA_OUT_OF_DATE

Fastbind data is out of date.

RTLD_ERR_INV_OPTION

Invalid dld option.

RTLD_ERR_FB_NO_FASTBIND_DATA

No fastbind data.

RTLD_ERR_SIGINHIBIT_FAILED

siginhibit() call failed on entry.

RTLD_ERR_SIGENABLE_FAILED

sigenable() call failed on exit.

RTLD_ERR_READ_TGT_MEM_FAILED

read_tgt_mem failed in reading target memory.

RTLD_ERR_BAD_ABI1

ABI mismatch because a 64-bit program found a 32-bit shared library.

RTLD_ERR_BAD_ABI2

ABI mismatch because a 32-bit program found a 64-bit shared library.

RTLD_ERR_INV_DLHOOK_FLAG

Invalid dlhook flags.

RTLD_ERR_BAD_DLL_MAGIC_NUM

The library is invalid due to a bad magic number.

RTLD_ERR_BAD_DLL_ALIGNMENT

The library is invalid due to a bad alignment.

RTLD_ERR_BAD_DLL_NO_SYMTAB

The library is invalid due to a missing symbol table.

RTLD_ERR_BAD_DLL_BAD_PHDR

The library is invalid due to a missing program header.

RTLD_ERR_BAD_DLL_BAD_MACHINE

The library is invalid due to a bad machine type.

RTLD_ERR_BAD_DLL_BAD_OBJFILE

The library is invalid due to a bad object file type.

RTLD_ERR_DLDD_COMM_FAILURE

Unable to get shared fixed address from dldd.

RTLD_ERR_BAD_DLL_SEGMENT_COUNT

Cannot use fixed address due to multiple data segments.

RTLD_ERR_SHL_LOAD_NULL_FILE_NAME

Invalid NULL library name.

RTLD_ERR_BAD_SHL_GETSYMBOLS_FLAG

Bad flags or type for shl_getsymbols().

RTLD_ERR_INV_DLMODADD_ARGUMENT

Invalid argument for dlmodadd().

RTLD_ERR_FILTER_TLS

Cannot open filtered library: TLS size exceeds size recorded in filter.

RTLD_ERR_INST_OPEN

Caliper instrumentation failed: cannot open file.

RTLD_ERR_INST_NOTE_SEG

Caliper instrumentation failed: cannot read loadable note section.

RTLD_ERR_INST_PIPE

Caliper instrumentation failed: cannot open pipes for communication.

RTLD_ERR_INST_FORK

Caliper instrumentation failed: fork() failed.

ERTLD_ERR_INST_EXEC

Caliper instrumentation failed: execve() failed.

RTLD_ERR_INST_CALIPER_ACK

Caliper instrumentation failed: caliper returned failure.

RTLD_ERR_INST_INTERFERENCE

Caliper instrumentation failed: unknown message retrieved on pipe.

RTLD_ERR_INST_STAT

Caliper instrumentation failed: cannot stat file.

RTLD_ERR_DYN_FILTER_STLS_REF

Library contains a static TLS reference to a symbol defined in a dynamically loaded library.

RTLD_ERR_SETCANCELSTATE_FAILED

Call to __thread_setcancelstate() failed.

RTLD_ERR_DLADDR_NOTFOUND

Address not found in any load module.

RTLD_ERR_MPROTECT_FAILED

mprotect() failed for the library.

ERR_INV_DLSETLIBPATH_ARGUMENT

Invalid argument for dlsetlibpath().

ERR_DLGETFILEINFO_MTEXT

Library has multiple text segments.

ERR_DLGETFILEINFO_MDATA

Library has multiple data segments.

ERR_INV_DLGETFILEINFO_ARGUMENT

Invalid argument for dlgetfileinfo().

ERR_DLGETFILEINFO_IO

I/O error accessing library using dlgetfileinfo().

ERR_DLOPENE_BAD_ADDR

Invalid load address for dlopene().

ERR_PREALLOC_ADDR_NOT_USE

Cannot use pre-allocate address for mapping library because of fixed address.

RTLD_ERR_DLOPENE_NO_EXEC_PERM

Shared library missing execution permission.

RTLD_ERR_NOMMAP_FAILED

Encounter error while loading library.

RTLD_ERR_ARCH_EXT_NOT_SUPPORTED

Cannot load library because required extensions not present in the hardware.

MULTITHREAD USAGE

This routine is thread-safe.

SEE ALSO

dlclose(3C), dlerror(3C), dlopen(3C), dlsym(3C).

Texts and Tutorials:

HP-UX Linker and Libraries Online User Guide

(See the +help option)

HP-UX Linker and Libraries User's Guide

(See manuals(5) for ordering information)

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.