| 12345678910111213141516171819202122232425 | #include <dlfcn.h>#include <stdlib.h>#include <stdio.h>#include <string.h>int main(int argc, char **argv){	Dl_info info;	int res = 0;	memset(&info, '\0', sizeof(Dl_info));	res = dladdr((void *)1, &info);	if (res != 0) {		fprintf(stderr, "dladdr() should fail\n");		fprintf(stderr, "dli_fname = %s\n", info.dli_fname);		fprintf(stderr, "dli_fbase = 0x%08x\n", (unsigned int)info.dli_fbase);		fprintf(stderr, "dli_sname = %s\n", info.dli_sname);		fprintf(stderr, "dli_saddr = 0x%08x\n", (unsigned int)info.dli_saddr);		exit(1);        }	fprintf(stderr, "dladdr() failed as expected\n");	return EXIT_SUCCESS;}
 |