|
|
|
@ -63,13 +63,15 @@ void * |
|
|
|
|
BSD44_derived_dlopen(const char *file, int num) |
|
|
|
|
{ |
|
|
|
|
#if defined(__mips__) |
|
|
|
|
sprintf(error_message, "dlopen (%s) not supported", file); |
|
|
|
|
snprintf(error_message, sizeof(error_message), |
|
|
|
|
"dlopen (%s) not supported", file); |
|
|
|
|
return NULL; |
|
|
|
|
#else |
|
|
|
|
void *vp; |
|
|
|
|
|
|
|
|
|
if ((vp = dlopen((char *) file, num)) == (void *) NULL) |
|
|
|
|
sprintf(error_message, "dlopen (%s) failed", file); |
|
|
|
|
snprintf(error_message, sizeof(error_message), |
|
|
|
|
"dlopen (%s) failed", file); |
|
|
|
|
return vp; |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
@ -78,7 +80,8 @@ void * |
|
|
|
|
BSD44_derived_dlsym(void *handle, const char *name) |
|
|
|
|
{ |
|
|
|
|
#if defined(__mips__) |
|
|
|
|
sprintf(error_message, "dlsym (%s) failed", name); |
|
|
|
|
snprintf(error_message, sizeof(error_message), |
|
|
|
|
"dlsym (%s) failed", name); |
|
|
|
|
return NULL; |
|
|
|
|
#elif defined(__ELF__) |
|
|
|
|
return dlsym(handle, name); |
|
|
|
@ -88,11 +91,12 @@ BSD44_derived_dlsym(void *handle, const char *name) |
|
|
|
|
|
|
|
|
|
if (*name != '_') |
|
|
|
|
{ |
|
|
|
|
sprintf(buf, "_%s", name); |
|
|
|
|
snprintf(buf, sizeof(buf), "_%s", name); |
|
|
|
|
name = buf; |
|
|
|
|
} |
|
|
|
|
if ((vp = dlsym(handle, (char *) name)) == (void *) NULL) |
|
|
|
|
sprintf(error_message, "dlsym (%s) failed", name); |
|
|
|
|
snprintf(error_message, sizeof(error_message), |
|
|
|
|
"dlsym (%s) failed", name); |
|
|
|
|
return vp; |
|
|
|
|
#endif |
|
|
|
|
} |
|
|
|
|