diff options
Diffstat (limited to 'libexec')
-rw-r--r-- | libexec/ld.so/dlfcn.c | 7 | ||||
-rw-r--r-- | libexec/ld.so/loader.c | 23 | ||||
-rw-r--r-- | libexec/ld.so/resolve.h | 4 |
3 files changed, 14 insertions, 20 deletions
diff --git a/libexec/ld.so/dlfcn.c b/libexec/ld.so/dlfcn.c index ed7bd8fa71e..c9c743e0a63 100644 --- a/libexec/ld.so/dlfcn.c +++ b/libexec/ld.so/dlfcn.c @@ -1,4 +1,4 @@ -/* $OpenBSD: dlfcn.c,v 1.4 2001/06/06 12:26:05 art Exp $ */ +/* $OpenBSD: dlfcn.c,v 1.5 2001/06/06 12:31:52 art Exp $ */ /* * Copyright (c) 1998 Per Fogelstrom, Opsycon AB @@ -57,9 +57,8 @@ dlopen(const char *libname, int how) elf_object_t *dynobj; Elf_Dyn *dynp; - if (_dl_debug) { - _dl_printf("loading: %s\n", libname); - } + DL_DEB(("loading: %s\n", libname)); + object = _dl_load_shlib(libname, _dl_objects, OBJTYPE_DLO); if(object == 0) { return((void *)0); diff --git a/libexec/ld.so/loader.c b/libexec/ld.so/loader.c index adb1385795d..be7958efb29 100644 --- a/libexec/ld.so/loader.c +++ b/libexec/ld.so/loader.c @@ -1,4 +1,4 @@ -/* $OpenBSD: loader.c,v 1.15 2001/06/06 12:23:18 art Exp $ */ +/* $OpenBSD: loader.c,v 1.16 2001/06/06 12:31:52 art Exp $ */ /* * Copyright (c) 1998 Per Fogelstrom, Opsycon AB @@ -83,8 +83,7 @@ _dl_debug_state(void) void _dl_run_dtors(elf_object_t *object) { - if (_dl_debug) - _dl_printf("doing dtors: [%s]\n", object->load_name); + DL_DEB(("doing dtors: [%s]\n", object->load_name)); if (object->dyn.fini) { (*object->dyn.fini)(); } @@ -96,8 +95,7 @@ _dl_run_dtors(elf_object_t *object) void _dl_dtors(void) { - if(_dl_debug) - _dl_printf("doing dtors\n"); + DL_DEB(("doing dtors\n")); if (_dl_objects->next) { _dl_run_dtors(_dl_objects->next); } @@ -141,8 +139,7 @@ _dl_boot(const char **argv, const char **envp, const long loff, } else { _dl_pagesz = 4096; } - if (_dl_debug) - _dl_printf("rtld loading: '%s'\n", _dl_progname); + DL_DEB(("rtld loading: '%s'\n", _dl_progname)); /* * Don't allow someone to change the search paths if he runs @@ -185,8 +182,7 @@ _dl_boot(const char **argv, const char **envp, const long loff, dynobj = _dl_objects; while (dynobj) { - if (_dl_debug) - _dl_printf("examining: '%s'\n", dynobj->load_name); + DL_DEB(("examining: '%s'\n", dynobj->load_name)); for (dynp = dynobj->load_dyn; dynp->d_tag; dynp++) { const char *libname; @@ -194,8 +190,7 @@ _dl_boot(const char **argv, const char **envp, const long loff, continue; libname = dynobj->dyn.strtab; libname += dynp->d_un.d_val; - if (_dl_debug) - _dl_printf("needs: '%s'\n", libname); + DL_DEB(("needs: '%s'\n", libname)); if (_dl_load_shlib(libname, dynobj, OBJTYPE_LIB) == 0) { _dl_printf("%s: can't load library '%s'\n", _dl_progname, libname); @@ -293,8 +288,7 @@ _dl_boot(const char **argv, const char **envp, const long loff, if (_dl_debug || _dl_traceld) { void _dl_show_objects(); /* remove -Wall warning */ _dl_show_objects(); - if (_dl_debug) - _dl_printf("dynamic loading done.\n"); + DL_DEB(("dynamic loading done.\n")); } _dl_unmaphints(); if (_dl_traceld) { @@ -560,8 +554,7 @@ _dl_call_init(elf_object_t *object) sym = 0; ooff = _dl_find_symbol(".init", object, &sym, 1, 1); if (sym) { - if (_dl_debug) - _dl_printf("calling .init in '%s'\n",object->load_name); + DL_DEB(("calling .init in '%s'\n",object->load_name)); (*(void(*)(void))(sym->st_value + ooff))(); } #if 0 /*XXX*/ diff --git a/libexec/ld.so/resolve.h b/libexec/ld.so/resolve.h index cebfb60ae3b..5a2fab71d26 100644 --- a/libexec/ld.so/resolve.h +++ b/libexec/ld.so/resolve.h @@ -1,4 +1,4 @@ -/* $OpenBSD: resolve.h,v 1.4 2001/05/16 03:21:23 deraadt Exp $ */ +/* $OpenBSD: resolve.h,v 1.5 2001/06/06 12:31:52 art Exp $ */ /* * Copyright (c) 1998 Per Fogelstrom, Opsycon AB @@ -158,6 +158,8 @@ extern char *_dl_bindnow; extern char *_dl_traceld; extern char *_dl_debug; +#define DL_DEB(P) do { if (_dl_debug) _dl_printf P ; } while (0) + #define DL_NOT_FOUND 1 #define DL_CANT_OPEN 2 #define DL_NOT_ELF 3 |