this agrees with implementation practice on glibc and BSD systems, and
is the const-correct way to do things; it eliminates warnings from
passing pointers to const. the prototype without const came from
seemingly erroneous man pages.
const char *dli_sname;
void *dli_saddr;
} Dl_info;
-int dladdr(void *, Dl_info *);
+int dladdr(const void *, Dl_info *);
int dlinfo(void *, int, void *);
#endif
#define _GNU_SOURCE
#include <dlfcn.h>
-int __dladdr(void *, Dl_info *);
+int __dladdr(const void *, Dl_info *);
-int dladdr(void *addr, Dl_info *info)
+int dladdr(const void *addr, Dl_info *info)
{
return __dladdr(addr, info);
}
return 0;
}
-int __dladdr(void *addr, Dl_info *info)
+int __dladdr(const void *addr, Dl_info *info)
{
struct dso *p;
Sym *sym;
{
return 0;
}
-int __dladdr (void *addr, Dl_info *info)
+int __dladdr (const void *addr, Dl_info *info)
{
return 0;
}