Go to the source code of this file.
◆ DYNL_KERNEL_HANDLE
#define DYNL_KERNEL_HANDLE ((void*) 0x1) |
◆ lib_types
Enumerator |
---|
LT_NONE | |
LT_NOTFOUND | |
LT_SINGULAR | |
LT_ELF | |
LT_HPUX | |
LT_MACH_O | |
LT_BUILTIN | |
LT_DLL | |
Definition at line 16 of file mod_raw.h.
◆ dynl_check_opened()
int dynl_check_opened |
( |
char * |
filename | ) |
|
Definition at line 146 of file mod_raw.cc.
150 return dlopen(filename,RTLD_NOW|RTLD_NOLOAD) !=
NULL;
◆ dynl_close()
int dynl_close |
( |
void * |
handle | ) |
|
Definition at line 178 of file mod_raw.cc.
180 return(dlclose (handle));
◆ dynl_error()
const char* dynl_error |
( |
| ) |
|
◆ dynl_open()
void* dynl_open |
( |
char * |
filename | ) |
|
Definition at line 153 of file mod_raw.cc.
158 if ((filename==
NULL) || (dlopen(filename,RTLD_NOW|RTLD_NOLOAD)==
NULL))
159 return(dlopen(filename, RTLD_NOW|RTLD_GLOBAL));
161 Werror(
"module %s already loaded",filename);
void Werror(const char *fmt,...)
◆ dynl_open_binary_warn()
void* dynl_open_binary_warn |
( |
const char * |
binary_name, |
|
|
const char * |
msg = NULL |
|
) |
| |
Definition at line 56 of file mod_raw.cc.
59 char* binary_name_so=
NULL;
64 if (proc_path !=
NULL)
69 int binary_name_so_length = 3 + strlen(
DL_TAIL) + strlen(binary_name) + strlen(
DIR_SEPP) + strlen(proc_path);
70 binary_name_so = (
char *)
omAlloc0( binary_name_so_length *
sizeof(
char) );
71 while((
p!=
NULL)&&(*
p!=
'\0'))
75 strcpy(binary_name_so,
p);
78 strcat(binary_name_so,binary_name);
80 if(!access(binary_name_so, R_OK)) {
found=
TRUE;
break; }
88 Warn(
"Could not find dynamic library: %s%s (path %s)",
89 binary_name,
DL_TAIL,proc_path);
92 WarnS(
"See the INSTALL section in the Singular manual for details.");
char * feGetResource(const char id, int warn)
static BOOLEAN warn_handle
const char * dynl_error()
void * dynl_open(char *filename)
◆ dynl_sym()
void* dynl_sym |
( |
void * |
handle, |
|
|
const char * |
symbol |
|
) |
| |
Definition at line 167 of file mod_raw.cc.
175 return(dlsym(handle, symbol));
static void * kernel_handle
#define DYNL_KERNEL_HANDLE
◆ dynl_sym_warn()
void* dynl_sym_warn |
( |
void * |
handle, |
|
|
const char * |
proc, |
|
|
const char * |
msg = NULL |
|
) |
| |
Definition at line 100 of file mod_raw.cc.
102 void *proc_ptr =
NULL;
108 WarnS(
"Could load a procedure from a dynamic library");
111 WarnS(
"See the INSTALL section in the Singular manual for details.");
unsigned char * proc[NUM_PROC]
void * dynl_sym(void *handle, const char *symbol)