mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Update.
2002-02-06 Andreas Jaeger <aj@suse.de> * include/libc-symbols.h (INTUSE): Renamed from INT. * elf/dl-deps.c: Change users. * sysdeps/generic/dl-sysdep.c: Likewise. * sysdeps/generic/dl-cache.c: Likewise. * elf/dl-reloc.c: Likewise. * elf/rtld.c: Likewise. * elf/dl-version.c: Likewise. * elf/dl-load.c: Likewise. * elf/dl-dst.h: Likewise. * elf/dl-init.c: Likewise.
This commit is contained in:
13
ChangeLog
13
ChangeLog
@ -1,4 +1,15 @@
|
|||||||
2002-02-05 Andreas Jaeger <aj@suse.de>
|
2002-02-06 Andreas Jaeger <aj@suse.de>
|
||||||
|
|
||||||
|
* include/libc-symbols.h (INTUSE): Renamed from INT.
|
||||||
|
* elf/dl-deps.c: Change users.
|
||||||
|
* sysdeps/generic/dl-sysdep.c: Likewise.
|
||||||
|
* sysdeps/generic/dl-cache.c: Likewise.
|
||||||
|
* elf/dl-reloc.c: Likewise.
|
||||||
|
* elf/rtld.c: Likewise.
|
||||||
|
* elf/dl-version.c: Likewise.
|
||||||
|
* elf/dl-load.c: Likewise.
|
||||||
|
* elf/dl-dst.h: Likewise.
|
||||||
|
* elf/dl-init.c: Likewise.
|
||||||
|
|
||||||
* stdio-common/_itoa.h: Undefine SPECIAL to avoid duplicate
|
* stdio-common/_itoa.h: Undefine SPECIAL to avoid duplicate
|
||||||
definition.
|
definition.
|
||||||
|
@ -59,10 +59,10 @@ openaux (void *a)
|
|||||||
{
|
{
|
||||||
struct openaux_args *args = (struct openaux_args *) a;
|
struct openaux_args *args = (struct openaux_args *) a;
|
||||||
|
|
||||||
args->aux = INT(_dl_map_object) (args->map, args->name, 0,
|
args->aux = INTUSE(_dl_map_object) (args->map, args->name, 0,
|
||||||
(args->map->l_type == lt_executable
|
(args->map->l_type == lt_executable
|
||||||
? lt_library : args->map->l_type),
|
? lt_library : args->map->l_type),
|
||||||
args->trace_mode, 0);
|
args->trace_mode, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static ptrdiff_t
|
static ptrdiff_t
|
||||||
@ -107,26 +107,26 @@ struct list
|
|||||||
\
|
\
|
||||||
/* DST must not appear in SUID/SGID programs. */ \
|
/* DST must not appear in SUID/SGID programs. */ \
|
||||||
if (__libc_enable_secure) \
|
if (__libc_enable_secure) \
|
||||||
INT(_dl_signal_error) (0, __str, NULL, \
|
INTUSE(_dl_signal_error) (0, __str, NULL, \
|
||||||
N_("DST not allowed in SUID/SGID programs"));\
|
N_("DST not allowed in SUID/SGID programs"));\
|
||||||
\
|
\
|
||||||
__newp = (char *) alloca (DL_DST_REQUIRED (l, __str, strlen (__str), \
|
__newp = (char *) alloca (DL_DST_REQUIRED (l, __str, strlen (__str), \
|
||||||
__cnt)); \
|
__cnt)); \
|
||||||
\
|
\
|
||||||
__result = INT(_dl_dst_substitute) (l, __str, __newp, 0); \
|
__result = INTUSE(_dl_dst_substitute) (l, __str, __newp, 0); \
|
||||||
\
|
\
|
||||||
if (*__result == '\0') \
|
if (*__result == '\0') \
|
||||||
{ \
|
{ \
|
||||||
/* The replacement for the DST is not known. We can't \
|
/* The replacement for the DST is not known. We can't \
|
||||||
processed. */ \
|
processed. */ \
|
||||||
if (fatal) \
|
if (fatal) \
|
||||||
INT(_dl_signal_error) (0, __str, NULL, N_("\
|
INTUSE(_dl_signal_error) (0, __str, NULL, N_("\
|
||||||
empty dynamics string token substitution")); \
|
empty dynamics string token substitution")); \
|
||||||
else \
|
else \
|
||||||
{ \
|
{ \
|
||||||
/* This is for DT_AUXILIARY. */ \
|
/* This is for DT_AUXILIARY. */ \
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS, 0)) \
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS, 0)) \
|
||||||
INT(_dl_debug_printf) (N_("\
|
INTUSE(_dl_debug_printf) (N_("\
|
||||||
cannot load auxiliary `%s' because of empty dynamic string token " \
|
cannot load auxiliary `%s' because of empty dynamic string token " \
|
||||||
"substitution\n"), __str); \
|
"substitution\n"), __str); \
|
||||||
continue; \
|
continue; \
|
||||||
@ -239,8 +239,8 @@ _dl_map_object_deps (struct link_map *map,
|
|||||||
/* Store the tag in the argument structure. */
|
/* Store the tag in the argument structure. */
|
||||||
args.name = name;
|
args.name = name;
|
||||||
|
|
||||||
err = INT(_dl_catch_error) (&objname, &errstring, openaux,
|
err = INTUSE(_dl_catch_error) (&objname, &errstring, openaux,
|
||||||
&args);
|
&args);
|
||||||
if (__builtin_expect (errstring != NULL, 0))
|
if (__builtin_expect (errstring != NULL, 0))
|
||||||
{
|
{
|
||||||
if (err)
|
if (err)
|
||||||
@ -291,14 +291,14 @@ _dl_map_object_deps (struct link_map *map,
|
|||||||
/* Say that we are about to load an auxiliary library. */
|
/* Say that we are about to load an auxiliary library. */
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS,
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS,
|
||||||
0))
|
0))
|
||||||
INT(_dl_debug_printf) ("load auxiliary object=%s"
|
INTUSE(_dl_debug_printf) ("load auxiliary object=%s"
|
||||||
" requested by file=%s\n", name,
|
" requested by file=%s\n", name,
|
||||||
l->l_name[0]
|
l->l_name[0]
|
||||||
? l->l_name : _dl_argv[0]);
|
? l->l_name : _dl_argv[0]);
|
||||||
|
|
||||||
/* We must be prepared that the addressed shared
|
/* We must be prepared that the addressed shared
|
||||||
object is not available. */
|
object is not available. */
|
||||||
err = INT(_dl_catch_error) (&objname, &errstring, openaux,
|
err = INTUSE(_dl_catch_error) (&objname, &errstring, openaux,
|
||||||
&args);
|
&args);
|
||||||
if (__builtin_expect (errstring != NULL, 0))
|
if (__builtin_expect (errstring != NULL, 0))
|
||||||
{
|
{
|
||||||
@ -318,13 +318,13 @@ _dl_map_object_deps (struct link_map *map,
|
|||||||
/* Say that we are about to load an auxiliary library. */
|
/* Say that we are about to load an auxiliary library. */
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS,
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS,
|
||||||
0))
|
0))
|
||||||
INT(_dl_debug_printf) ("load filtered object=%s"
|
INTUSE(_dl_debug_printf) ("load filtered object=%s"
|
||||||
" requested by file=%s\n", name,
|
" requested by file=%s\n", name,
|
||||||
l->l_name[0]
|
l->l_name[0]
|
||||||
? l->l_name : _dl_argv[0]);
|
? l->l_name : _dl_argv[0]);
|
||||||
|
|
||||||
/* For filter objects the dependency must be available. */
|
/* For filter objects the dependency must be available. */
|
||||||
err = INT(_dl_catch_error) (&objname, &errstring, openaux,
|
err = INTUSE(_dl_catch_error) (&objname, &errstring, openaux,
|
||||||
&args);
|
&args);
|
||||||
if (__builtin_expect (errstring != NULL, 0))
|
if (__builtin_expect (errstring != NULL, 0))
|
||||||
{
|
{
|
||||||
@ -453,8 +453,8 @@ _dl_map_object_deps (struct link_map *map,
|
|||||||
l->l_initfini = (struct link_map **)
|
l->l_initfini = (struct link_map **)
|
||||||
malloc ((nneeded + 1) * sizeof needed[0]);
|
malloc ((nneeded + 1) * sizeof needed[0]);
|
||||||
if (l->l_initfini == NULL)
|
if (l->l_initfini == NULL)
|
||||||
INT(_dl_signal_error) (ENOMEM, map->l_name, NULL,
|
INTUSE(_dl_signal_error) (ENOMEM, map->l_name, NULL,
|
||||||
N_("cannot allocate dependency list"));
|
N_("cannot allocate dependency list"));
|
||||||
l->l_initfini[0] = l;
|
l->l_initfini[0] = l;
|
||||||
memcpy (&l->l_initfini[1], needed, nneeded * sizeof needed[0]);
|
memcpy (&l->l_initfini[1], needed, nneeded * sizeof needed[0]);
|
||||||
}
|
}
|
||||||
@ -484,8 +484,8 @@ _dl_map_object_deps (struct link_map *map,
|
|||||||
(struct link_map **) malloc ((2 * nlist + 1)
|
(struct link_map **) malloc ((2 * nlist + 1)
|
||||||
* sizeof (struct link_map *));
|
* sizeof (struct link_map *));
|
||||||
if (map->l_initfini == NULL)
|
if (map->l_initfini == NULL)
|
||||||
INT(_dl_signal_error) (ENOMEM, map->l_name, NULL,
|
INTUSE(_dl_signal_error) (ENOMEM, map->l_name, NULL,
|
||||||
N_("cannot allocate symbol search list"));
|
N_("cannot allocate symbol search list"));
|
||||||
|
|
||||||
|
|
||||||
map->l_searchlist.r_list = &map->l_initfini[nlist + 1];
|
map->l_searchlist.r_list = &map->l_initfini[nlist + 1];
|
||||||
@ -525,7 +525,7 @@ _dl_map_object_deps (struct link_map *map,
|
|||||||
/* As current DT_AUXILIARY/DT_FILTER implementation needs to be
|
/* As current DT_AUXILIARY/DT_FILTER implementation needs to be
|
||||||
rewritten, no need to bother with prelinking the old
|
rewritten, no need to bother with prelinking the old
|
||||||
implementation. */
|
implementation. */
|
||||||
INT(_dl_signal_error) (EINVAL, l->l_name, NULL, N_("\
|
INTUSE(_dl_signal_error) (EINVAL, l->l_name, NULL, N_("\
|
||||||
Filters not supported with LD_TRACE_PRELINKING"));
|
Filters not supported with LD_TRACE_PRELINKING"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -539,8 +539,8 @@ Filters not supported with LD_TRACE_PRELINKING"));
|
|||||||
+ (cnt
|
+ (cnt
|
||||||
* sizeof (struct link_map *)));
|
* sizeof (struct link_map *)));
|
||||||
if (l->l_local_scope[0] == NULL)
|
if (l->l_local_scope[0] == NULL)
|
||||||
INT(_dl_signal_error) (ENOMEM, map->l_name, NULL,
|
INTUSE(_dl_signal_error) (ENOMEM, map->l_name, NULL,
|
||||||
N_("cannot allocate symbol search list"));
|
N_("cannot allocate symbol search list"));
|
||||||
l->l_local_scope[0]->r_nlist = cnt;
|
l->l_local_scope[0]->r_nlist = cnt;
|
||||||
l->l_local_scope[0]->r_list =
|
l->l_local_scope[0]->r_list =
|
||||||
(struct link_map **) (l->l_local_scope[0] + 1);
|
(struct link_map **) (l->l_local_scope[0] + 1);
|
||||||
@ -619,7 +619,7 @@ Filters not supported with LD_TRACE_PRELINKING"));
|
|||||||
map->l_initfini[nlist] = NULL;
|
map->l_initfini[nlist] = NULL;
|
||||||
|
|
||||||
if (errno_reason)
|
if (errno_reason)
|
||||||
INT(_dl_signal_error) (errno_reason == -1 ? 0 : errno_reason, objname,
|
INTUSE(_dl_signal_error) (errno_reason == -1 ? 0 : errno_reason, objname,
|
||||||
NULL, errstring);
|
NULL, errstring);
|
||||||
}
|
}
|
||||||
INTDEF (_dl_map_object_deps)
|
INTDEF (_dl_map_object_deps)
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
const char *__sf = strchr (name, '$'); \
|
const char *__sf = strchr (name, '$'); \
|
||||||
\
|
\
|
||||||
if (__builtin_expect (__sf != NULL, 0)) \
|
if (__builtin_expect (__sf != NULL, 0)) \
|
||||||
__cnt = INT(_dl_dst_count) (__sf, is_path); \
|
__cnt = INTUSE(_dl_dst_count) (__sf, is_path); \
|
||||||
\
|
\
|
||||||
__cnt; })
|
__cnt; })
|
||||||
|
|
||||||
|
@ -51,8 +51,8 @@ call_init (struct link_map *l, int argc, char **argv, char **env)
|
|||||||
|
|
||||||
/* Print a debug message if wanted. */
|
/* Print a debug message if wanted. */
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_IMPCALLS, 0))
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_IMPCALLS, 0))
|
||||||
INT(_dl_debug_printf) ("\ncalling init: %s\n\n",
|
INTUSE(_dl_debug_printf) ("\ncalling init: %s\n\n",
|
||||||
l->l_name[0] ? l->l_name : _dl_argv[0]);
|
l->l_name[0] ? l->l_name : _dl_argv[0]);
|
||||||
|
|
||||||
/* Now run the local constructors. There are two forms of them:
|
/* Now run the local constructors. There are two forms of them:
|
||||||
- the one named by DT_INIT
|
- the one named by DT_INIT
|
||||||
@ -106,9 +106,9 @@ _dl_init (struct link_map *main_map, int argc, char **argv, char **env)
|
|||||||
unsigned int cnt;
|
unsigned int cnt;
|
||||||
|
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_IMPCALLS, 0))
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_IMPCALLS, 0))
|
||||||
INT(_dl_debug_printf) ("\ncalling preinit: %s\n\n",
|
INTUSE(_dl_debug_printf) ("\ncalling preinit: %s\n\n",
|
||||||
main_map->l_name[0]
|
main_map->l_name[0]
|
||||||
? main_map->l_name : _dl_argv[0]);
|
? main_map->l_name : _dl_argv[0]);
|
||||||
|
|
||||||
addrs = (ElfW(Addr) *) (main_map->l_info[DT_PREINIT_ARRAY]->d_un.d_ptr
|
addrs = (ElfW(Addr) *) (main_map->l_info[DT_PREINIT_ARRAY]->d_un.d_ptr
|
||||||
+ main_map->l_addr);
|
+ main_map->l_addr);
|
||||||
@ -121,7 +121,7 @@ _dl_init (struct link_map *main_map, int argc, char **argv, char **env)
|
|||||||
not been used before. */
|
not been used before. */
|
||||||
r = _dl_debug_initialize (0);
|
r = _dl_debug_initialize (0);
|
||||||
r->r_state = RT_ADD;
|
r->r_state = RT_ADD;
|
||||||
INT(_dl_debug_state) ();
|
INTUSE(_dl_debug_state) ();
|
||||||
|
|
||||||
/* Stupid users forced the ELF specification to be changed. It now
|
/* Stupid users forced the ELF specification to be changed. It now
|
||||||
says that the dynamic loader is responsible for determining the
|
says that the dynamic loader is responsible for determining the
|
||||||
@ -139,7 +139,7 @@ _dl_init (struct link_map *main_map, int argc, char **argv, char **env)
|
|||||||
|
|
||||||
/* Notify the debugger all new objects are now ready to go. */
|
/* Notify the debugger all new objects are now ready to go. */
|
||||||
r->r_state = RT_CONSISTENT;
|
r->r_state = RT_CONSISTENT;
|
||||||
INT(_dl_debug_state) ();
|
INTUSE(_dl_debug_state) ();
|
||||||
|
|
||||||
/* Finished starting up. */
|
/* Finished starting up. */
|
||||||
_dl_starting_up = 0;
|
_dl_starting_up = 0;
|
||||||
|
@ -308,7 +308,7 @@ expand_dynamic_string_token (struct link_map *l, const char *s)
|
|||||||
if (result == NULL)
|
if (result == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
return INT(_dl_dst_substitute) (l, s, result, 1);
|
return INTUSE(_dl_dst_substitute) (l, s, result, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -334,7 +334,7 @@ add_name_to_object (struct link_map *l, const char *name)
|
|||||||
if (newname == NULL)
|
if (newname == NULL)
|
||||||
{
|
{
|
||||||
/* No more memory. */
|
/* No more memory. */
|
||||||
INT(_dl_signal_error) (ENOMEM, name, NULL,
|
INTUSE(_dl_signal_error) (ENOMEM, name, NULL,
|
||||||
N_("cannot allocate name record"));
|
N_("cannot allocate name record"));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -436,8 +436,8 @@ fillin_rpath (char *rpath, struct r_search_path_elem **result, const char *sep,
|
|||||||
malloc (sizeof (*dirp) + ncapstr * sizeof (enum r_dir_status)
|
malloc (sizeof (*dirp) + ncapstr * sizeof (enum r_dir_status)
|
||||||
+ where_len + len + 1);
|
+ where_len + len + 1);
|
||||||
if (dirp == NULL)
|
if (dirp == NULL)
|
||||||
INT(_dl_signal_error) (ENOMEM, NULL, NULL,
|
INTUSE(_dl_signal_error) (ENOMEM, NULL, NULL,
|
||||||
N_("cannot create cache for search path"));
|
N_("cannot create cache for search path"));
|
||||||
|
|
||||||
dirp->dirname = ((char *) dirp + sizeof (*dirp)
|
dirp->dirname = ((char *) dirp + sizeof (*dirp)
|
||||||
+ ncapstr * sizeof (enum r_dir_status));
|
+ ncapstr * sizeof (enum r_dir_status));
|
||||||
@ -519,7 +519,7 @@ decompose_rpath (struct r_search_path_struct *sps,
|
|||||||
signal_error_cache:
|
signal_error_cache:
|
||||||
errstring = N_("cannot create cache for search path");
|
errstring = N_("cannot create cache for search path");
|
||||||
signal_error:
|
signal_error:
|
||||||
INT(_dl_signal_error) (ENOMEM, NULL, NULL, errstring);
|
INTUSE(_dl_signal_error) (ENOMEM, NULL, NULL, errstring);
|
||||||
}
|
}
|
||||||
|
|
||||||
result[0] = NULL;
|
result[0] = NULL;
|
||||||
@ -599,7 +599,7 @@ _dl_init_paths (const char *llp)
|
|||||||
{
|
{
|
||||||
errstring = N_("cannot create search path array");
|
errstring = N_("cannot create search path array");
|
||||||
signal_error:
|
signal_error:
|
||||||
INT(_dl_signal_error) (ENOMEM, NULL, NULL, errstring);
|
INTUSE(_dl_signal_error) (ENOMEM, NULL, NULL, errstring);
|
||||||
}
|
}
|
||||||
|
|
||||||
round_size = ((2 * sizeof (struct r_search_path_elem) - 1
|
round_size = ((2 * sizeof (struct r_search_path_elem) - 1
|
||||||
@ -764,7 +764,7 @@ lose (int code, int fd, const char *name, char *realname, struct link_map *l,
|
|||||||
free (l);
|
free (l);
|
||||||
}
|
}
|
||||||
free (realname);
|
free (realname);
|
||||||
INT(_dl_signal_error) (code, name, NULL, msg);
|
INTUSE(_dl_signal_error) (code, name, NULL, msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -823,7 +823,7 @@ _dl_map_object_from_fd (const char *name, int fd, struct filebuf *fbp,
|
|||||||
|
|
||||||
/* Print debugging message. */
|
/* Print debugging message. */
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_FILES, 0))
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_FILES, 0))
|
||||||
INT(_dl_debug_printf) ("file=%s; generating link map\n", name);
|
INTUSE(_dl_debug_printf) ("file=%s; generating link map\n", name);
|
||||||
|
|
||||||
/* This is the ELF header. We read it in `open_verify'. */
|
/* This is the ELF header. We read it in `open_verify'. */
|
||||||
header = (void *) fbp->buf;
|
header = (void *) fbp->buf;
|
||||||
@ -836,7 +836,7 @@ _dl_map_object_from_fd (const char *name, int fd, struct filebuf *fbp,
|
|||||||
if (_dl_zerofd == -1)
|
if (_dl_zerofd == -1)
|
||||||
{
|
{
|
||||||
__close (fd);
|
__close (fd);
|
||||||
INT(_dl_signal_error) (errno, NULL, NULL,
|
INTUSE(_dl_signal_error) (errno, NULL, NULL,
|
||||||
N_("cannot open zero fill device"));
|
N_("cannot open zero fill device"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1152,7 +1152,7 @@ _dl_map_object_from_fd (const char *name, int fd, struct filebuf *fbp,
|
|||||||
l->l_entry += l->l_addr;
|
l->l_entry += l->l_addr;
|
||||||
|
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_FILES, 0))
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_FILES, 0))
|
||||||
INT(_dl_debug_printf) ("\
|
INTUSE(_dl_debug_printf) ("\
|
||||||
dynamic: 0x%0*lx base: 0x%0*lx size: 0x%0*Zx\n\
|
dynamic: 0x%0*lx base: 0x%0*lx size: 0x%0*Zx\n\
|
||||||
entry: 0x%0*lx phdr: 0x%0*lx phnum: %*u\n\n",
|
entry: 0x%0*lx phdr: 0x%0*lx phnum: %*u\n\n",
|
||||||
(int) sizeof (void *) * 2,
|
(int) sizeof (void *) * 2,
|
||||||
@ -1243,7 +1243,7 @@ print_search_path (struct r_search_path_elem **list,
|
|||||||
char buf[max_dirnamelen + max_capstrlen];
|
char buf[max_dirnamelen + max_capstrlen];
|
||||||
int first = 1;
|
int first = 1;
|
||||||
|
|
||||||
INT(_dl_debug_printf) (" search path=");
|
INTUSE(_dl_debug_printf) (" search path=");
|
||||||
|
|
||||||
while (*list != NULL && (*list)->what == what) /* Yes, ==. */
|
while (*list != NULL && (*list)->what == what) /* Yes, ==. */
|
||||||
{
|
{
|
||||||
@ -1514,7 +1514,7 @@ open_path (const char *name, size_t namelen, int preloaded,
|
|||||||
|
|
||||||
/* Print name we try if this is wanted. */
|
/* Print name we try if this is wanted. */
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS, 0))
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS, 0))
|
||||||
INT(_dl_debug_printf) (" trying file=%s\n", buf);
|
INTUSE(_dl_debug_printf) (" trying file=%s\n", buf);
|
||||||
|
|
||||||
fd = open_verify (buf, fbp);
|
fd = open_verify (buf, fbp);
|
||||||
if (this_dir->status[cnt] == unknown)
|
if (this_dir->status[cnt] == unknown)
|
||||||
@ -1648,8 +1648,8 @@ _dl_map_object (struct link_map *loader, const char *name, int preloaded,
|
|||||||
/* Display information if we are debugging. */
|
/* Display information if we are debugging. */
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_FILES, 0)
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_FILES, 0)
|
||||||
&& loader != NULL)
|
&& loader != NULL)
|
||||||
INT(_dl_debug_printf) ("\nfile=%s; needed by %s\n", name,
|
INTUSE(_dl_debug_printf) ("\nfile=%s; needed by %s\n", name,
|
||||||
loader->l_name[0] ? loader->l_name : _dl_argv[0]);
|
loader->l_name[0] ? loader->l_name : _dl_argv[0]);
|
||||||
|
|
||||||
if (strchr (name, '/') == NULL)
|
if (strchr (name, '/') == NULL)
|
||||||
{
|
{
|
||||||
@ -1658,7 +1658,7 @@ _dl_map_object (struct link_map *loader, const char *name, int preloaded,
|
|||||||
size_t namelen = strlen (name) + 1;
|
size_t namelen = strlen (name) + 1;
|
||||||
|
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS, 0))
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS, 0))
|
||||||
INT(_dl_debug_printf) ("find library=%s; searching\n", name);
|
INTUSE(_dl_debug_printf) ("find library=%s; searching\n", name);
|
||||||
|
|
||||||
fd = -1;
|
fd = -1;
|
||||||
|
|
||||||
@ -1807,7 +1807,7 @@ _dl_map_object (struct link_map *loader, const char *name, int preloaded,
|
|||||||
|
|
||||||
/* Add another newline when we a tracing the library loading. */
|
/* Add another newline when we a tracing the library loading. */
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS, 0))
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS, 0))
|
||||||
INT(_dl_debug_printf) ("\n");
|
INTUSE(_dl_debug_printf) ("\n");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -1839,7 +1839,7 @@ _dl_map_object (struct link_map *loader, const char *name, int preloaded,
|
|||||||
/* Enter the new object in the list of loaded objects. */
|
/* Enter the new object in the list of loaded objects. */
|
||||||
if ((name_copy = local_strdup (name)) == NULL
|
if ((name_copy = local_strdup (name)) == NULL
|
||||||
|| (l = _dl_new_object (name_copy, name, type, loader)) == NULL)
|
|| (l = _dl_new_object (name_copy, name, type, loader)) == NULL)
|
||||||
INT(_dl_signal_error) (ENOMEM, name, NULL, N_("\
|
INTUSE(_dl_signal_error) (ENOMEM, name, NULL, N_("\
|
||||||
cannot create shared object descriptor"));
|
cannot create shared object descriptor"));
|
||||||
/* Signal that this is a faked entry. */
|
/* Signal that this is a faked entry. */
|
||||||
l->l_faked = 1;
|
l->l_faked = 1;
|
||||||
@ -1853,7 +1853,7 @@ cannot create shared object descriptor"));
|
|||||||
return l;
|
return l;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
INT(_dl_signal_error) (errno, name, NULL,
|
INTUSE(_dl_signal_error) (errno, name, NULL,
|
||||||
N_("cannot open shared object file"));
|
N_("cannot open shared object file"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -59,9 +59,9 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[],
|
|||||||
lazy = 0;
|
lazy = 0;
|
||||||
|
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_RELOC, 0))
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_RELOC, 0))
|
||||||
INT(_dl_debug_printf) ("\nrelocation processing: %s%s\n",
|
INTUSE(_dl_debug_printf) ("\nrelocation processing: %s%s\n",
|
||||||
l->l_name[0] ? l->l_name : _dl_argv[0],
|
l->l_name[0] ? l->l_name : _dl_argv[0],
|
||||||
lazy ? " (lazy)" : "");
|
lazy ? " (lazy)" : "");
|
||||||
|
|
||||||
/* DT_TEXTREL is now in level 2 and might phase out at some time.
|
/* DT_TEXTREL is now in level 2 and might phase out at some time.
|
||||||
But we rewrite the DT_FLAGS entry to a DT_TEXTREL entry to make
|
But we rewrite the DT_FLAGS entry to a DT_TEXTREL entry to make
|
||||||
@ -87,7 +87,7 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[],
|
|||||||
{
|
{
|
||||||
errstring = N_("cannot make segment writable for relocation");
|
errstring = N_("cannot make segment writable for relocation");
|
||||||
call_error:
|
call_error:
|
||||||
INT(_dl_signal_error) (errno, l->l_name, NULL, errstring);
|
INTUSE(_dl_signal_error) (errno, l->l_name, NULL, errstring);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if (PF_R | PF_W | PF_X) == 7 && (PROT_READ | PROT_WRITE | PROT_EXEC) == 7
|
#if (PF_R | PF_W | PF_X) == 7 && (PROT_READ | PROT_WRITE | PROT_EXEC) == 7
|
||||||
@ -126,12 +126,12 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[],
|
|||||||
l->l_lookup_cache.type_class = _tc; \
|
l->l_lookup_cache.type_class = _tc; \
|
||||||
l->l_lookup_cache.sym = (*ref); \
|
l->l_lookup_cache.sym = (*ref); \
|
||||||
_lr = ((version) != NULL && (version)->hash != 0 \
|
_lr = ((version) != NULL && (version)->hash != 0 \
|
||||||
? INT(_dl_lookup_versioned_symbol) (strtab \
|
? INTUSE(_dl_lookup_versioned_symbol) (strtab \
|
||||||
+ (*ref)->st_name, \
|
+ (*ref)->st_name, \
|
||||||
l, (ref), scope, \
|
l, (ref), scope, \
|
||||||
(version), _tc, 0) \
|
(version), _tc, 0) \
|
||||||
: INT(_dl_lookup_symbol) (strtab + (*ref)->st_name, l, \
|
: INTUSE(_dl_lookup_symbol) (strtab + (*ref)->st_name, l, \
|
||||||
(ref), scope, _tc, 0)); \
|
(ref), scope, _tc, 0)); \
|
||||||
l->l_lookup_cache.ret = (*ref); \
|
l->l_lookup_cache.ret = (*ref); \
|
||||||
l->l_lookup_cache.value = _lr; })) \
|
l->l_lookup_cache.value = _lr; })) \
|
||||||
: l)
|
: l)
|
||||||
@ -147,12 +147,12 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[],
|
|||||||
l->l_lookup_cache.type_class = _tc; \
|
l->l_lookup_cache.type_class = _tc; \
|
||||||
l->l_lookup_cache.sym = (*ref); \
|
l->l_lookup_cache.sym = (*ref); \
|
||||||
_lr = ((version) != NULL && (version)->hash != 0 \
|
_lr = ((version) != NULL && (version)->hash != 0 \
|
||||||
? INT(_dl_lookup_versioned_symbol) (strtab \
|
? INTUSE(_dl_lookup_versioned_symbol) (strtab \
|
||||||
+ (*ref)->st_name, \
|
+ (*ref)->st_name, \
|
||||||
l, (ref), scope, \
|
l, (ref), scope, \
|
||||||
(version), _tc, 0) \
|
(version), _tc, 0) \
|
||||||
: INT(_dl_lookup_symbol) (strtab + (*ref)->st_name, l, \
|
: INTUSE(_dl_lookup_symbol) (strtab + (*ref)->st_name, l, \
|
||||||
(ref), scope, _tc, 0)); \
|
(ref), scope, _tc, 0)); \
|
||||||
l->l_lookup_cache.ret = (*ref); \
|
l->l_lookup_cache.ret = (*ref); \
|
||||||
l->l_lookup_cache.value = _lr; })) \
|
l->l_lookup_cache.value = _lr; })) \
|
||||||
: l->l_addr)
|
: l->l_addr)
|
||||||
@ -223,5 +223,5 @@ _dl_reloc_bad_type (struct link_map *map, unsigned int type, int plt)
|
|||||||
*cp++ = DIGIT (type >> 4);
|
*cp++ = DIGIT (type >> 4);
|
||||||
*cp = DIGIT (type);
|
*cp = DIGIT (type);
|
||||||
|
|
||||||
INT(_dl_signal_error) (0, map->l_name, NULL, msgbuf);
|
INTUSE(_dl_signal_error) (0, map->l_name, NULL, msgbuf);
|
||||||
}
|
}
|
||||||
|
@ -87,10 +87,10 @@ match_symbol (const char *name, ElfW(Word) hash, const char *string,
|
|||||||
|
|
||||||
/* Display information about what we are doing while debugging. */
|
/* Display information about what we are doing while debugging. */
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_VERSIONS, 0))
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_VERSIONS, 0))
|
||||||
INT(_dl_debug_printf) ("\
|
INTUSE(_dl_debug_printf) ("\
|
||||||
checking for version `%s' in file %s required by file %s\n",
|
checking for version `%s' in file %s required by file %s\n",
|
||||||
string, map->l_name[0]
|
string, map->l_name[0]
|
||||||
? map->l_name : _dl_argv[0], name);
|
? map->l_name : _dl_argv[0], name);
|
||||||
|
|
||||||
if (__builtin_expect (map->l_info[VERSYMIDX (DT_VERDEF)] == NULL, 0))
|
if (__builtin_expect (map->l_info[VERSYMIDX (DT_VERDEF)] == NULL, 0))
|
||||||
{
|
{
|
||||||
@ -214,9 +214,9 @@ _dl_check_map_versions (struct link_map *map, int verbose, int trace_mode)
|
|||||||
&buf[sizeof (buf) - 1], 10, 0),
|
&buf[sizeof (buf) - 1], 10, 0),
|
||||||
" of Verneed record\n");
|
" of Verneed record\n");
|
||||||
call_error:
|
call_error:
|
||||||
INT(_dl_signal_error) (errval, (*map->l_name
|
INTUSE(_dl_signal_error) (errval, (*map->l_name
|
||||||
? map->l_name : _dl_argv[0]),
|
? map->l_name : _dl_argv[0]),
|
||||||
NULL, errstring);
|
NULL, errstring);
|
||||||
}
|
}
|
||||||
|
|
||||||
while (1)
|
while (1)
|
||||||
@ -386,7 +386,7 @@ _dl_check_all_versions (struct link_map *map, int verbose, int trace_mode)
|
|||||||
|
|
||||||
for (l = map; l != NULL; l = l->l_next)
|
for (l = map; l != NULL; l = l->l_next)
|
||||||
result |= (! l->l_faked
|
result |= (! l->l_faked
|
||||||
&& INT(_dl_check_map_versions) (l, verbose, trace_mode));
|
&& INTUSE(_dl_check_map_versions) (l, verbose, trace_mode));
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
74
elf/rtld.c
74
elf/rtld.c
@ -383,14 +383,14 @@ relocate_doit (void *a)
|
|||||||
{
|
{
|
||||||
struct relocate_args *args = (struct relocate_args *) a;
|
struct relocate_args *args = (struct relocate_args *) a;
|
||||||
|
|
||||||
INT(_dl_relocate_object) (args->l, args->l->l_scope, args->lazy, 0);
|
INTUSE(_dl_relocate_object) (args->l, args->l->l_scope, args->lazy, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
map_doit (void *a)
|
map_doit (void *a)
|
||||||
{
|
{
|
||||||
struct map_args *args = (struct map_args *) a;
|
struct map_args *args = (struct map_args *) a;
|
||||||
args->main_map = INT(_dl_map_object) (NULL, args->str, 0, lt_library, 0, 0);
|
args->main_map = INTUSE(_dl_map_object) (NULL, args->str, 0, lt_library, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -580,7 +580,7 @@ of this helper program; chances are you did not intend to run this program.\n\
|
|||||||
struct map_args args;
|
struct map_args args;
|
||||||
|
|
||||||
args.str = _dl_argv[0];
|
args.str = _dl_argv[0];
|
||||||
(void) INT(_dl_catch_error) (&objname, &err_str, map_doit, &args);
|
(void) INTUSE(_dl_catch_error) (&objname, &err_str, map_doit, &args);
|
||||||
if (__builtin_expect (err_str != NULL, 0))
|
if (__builtin_expect (err_str != NULL, 0))
|
||||||
{
|
{
|
||||||
if (err_str != _dl_out_of_memory)
|
if (err_str != _dl_out_of_memory)
|
||||||
@ -591,7 +591,7 @@ of this helper program; chances are you did not intend to run this program.\n\
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
HP_TIMING_NOW (start);
|
HP_TIMING_NOW (start);
|
||||||
INT(_dl_map_object) (NULL, _dl_argv[0], 0, lt_library, 0, 0);
|
INTUSE(_dl_map_object) (NULL, _dl_argv[0], 0, lt_library, 0, 0);
|
||||||
HP_TIMING_NOW (stop);
|
HP_TIMING_NOW (stop);
|
||||||
|
|
||||||
HP_TIMING_DIFF (load_time, start, stop);
|
HP_TIMING_DIFF (load_time, start, stop);
|
||||||
@ -808,9 +808,9 @@ of this helper program; chances are you did not intend to run this program.\n\
|
|||||||
&& (__builtin_expect (! __libc_enable_secure, 1)
|
&& (__builtin_expect (! __libc_enable_secure, 1)
|
||||||
|| strchr (p, '/') == NULL))
|
|| strchr (p, '/') == NULL))
|
||||||
{
|
{
|
||||||
struct link_map *new_map = INT(_dl_map_object) (GL(dl_loaded), p,
|
struct link_map *new_map = INTUSE(_dl_map_object) (GL(dl_loaded), p,
|
||||||
1, lt_library,
|
1, lt_library,
|
||||||
0, 0);
|
0, 0);
|
||||||
if (++new_map->l_opencount == 1)
|
if (++new_map->l_opencount == 1)
|
||||||
/* It is no duplicate. */
|
/* It is no duplicate. */
|
||||||
++npreloads;
|
++npreloads;
|
||||||
@ -877,10 +877,10 @@ of this helper program; chances are you did not intend to run this program.\n\
|
|||||||
while ((p = strsep (&runp, ": \t\n")) != NULL)
|
while ((p = strsep (&runp, ": \t\n")) != NULL)
|
||||||
if (p[0] != '\0')
|
if (p[0] != '\0')
|
||||||
{
|
{
|
||||||
struct link_map *new_map = INT(_dl_map_object) (GL(dl_loaded),
|
struct link_map *new_map = INTUSE(_dl_map_object) (GL(dl_loaded),
|
||||||
p, 1,
|
p, 1,
|
||||||
lt_library,
|
lt_library,
|
||||||
0, 0);
|
0, 0);
|
||||||
if (++new_map->l_opencount == 1)
|
if (++new_map->l_opencount == 1)
|
||||||
/* It is no duplicate. */
|
/* It is no duplicate. */
|
||||||
++npreloads;
|
++npreloads;
|
||||||
@ -890,8 +890,8 @@ of this helper program; chances are you did not intend to run this program.\n\
|
|||||||
if (problem != NULL)
|
if (problem != NULL)
|
||||||
{
|
{
|
||||||
char *p = strndupa (problem, file_size - (problem - file));
|
char *p = strndupa (problem, file_size - (problem - file));
|
||||||
struct link_map *new_map = INT(_dl_map_object) (GL(dl_loaded), p, 1,
|
struct link_map *new_map = INTUSE(_dl_map_object) (GL(dl_loaded), p, 1,
|
||||||
lt_library, 0, 0);
|
lt_library, 0, 0);
|
||||||
if (++new_map->l_opencount == 1)
|
if (++new_map->l_opencount == 1)
|
||||||
/* It is no duplicate. */
|
/* It is no duplicate. */
|
||||||
++npreloads;
|
++npreloads;
|
||||||
@ -924,7 +924,7 @@ of this helper program; chances are you did not intend to run this program.\n\
|
|||||||
specified some libraries to load, these are inserted before the actual
|
specified some libraries to load, these are inserted before the actual
|
||||||
dependencies in the executable's searchlist for symbol resolution. */
|
dependencies in the executable's searchlist for symbol resolution. */
|
||||||
HP_TIMING_NOW (start);
|
HP_TIMING_NOW (start);
|
||||||
INT(_dl_map_object_deps) (GL(dl_loaded), preloads, npreloads, mode == trace);
|
INTUSE(_dl_map_object_deps) (GL(dl_loaded), preloads, npreloads, mode == trace);
|
||||||
HP_TIMING_NOW (stop);
|
HP_TIMING_NOW (stop);
|
||||||
HP_TIMING_DIFF (diff, start, stop);
|
HP_TIMING_DIFF (diff, start, stop);
|
||||||
HP_TIMING_ACCUM_NT (load_time, diff);
|
HP_TIMING_ACCUM_NT (load_time, diff);
|
||||||
@ -1046,9 +1046,9 @@ of this helper program; chances are you did not intend to run this program.\n\
|
|||||||
ElfW(Addr) loadbase;
|
ElfW(Addr) loadbase;
|
||||||
lookup_t result;
|
lookup_t result;
|
||||||
|
|
||||||
result = INT(_dl_lookup_symbol) (_dl_argv[i], GL(dl_loaded),
|
result = INTUSE(_dl_lookup_symbol) (_dl_argv[i], GL(dl_loaded),
|
||||||
&ref, GL(dl_loaded)->l_scope,
|
&ref, GL(dl_loaded)->l_scope,
|
||||||
ELF_RTYPE_CLASS_PLT, 1);
|
ELF_RTYPE_CLASS_PLT, 1);
|
||||||
|
|
||||||
loadbase = LOOKUP_VALUE_ADDRESS (result);
|
loadbase = LOOKUP_VALUE_ADDRESS (result);
|
||||||
|
|
||||||
@ -1084,8 +1084,8 @@ of this helper program; chances are you did not intend to run this program.\n\
|
|||||||
|
|
||||||
if ((GL(dl_debug_mask) & DL_DEBUG_PRELINK)
|
if ((GL(dl_debug_mask) & DL_DEBUG_PRELINK)
|
||||||
&& GL(dl_rtld_map).l_opencount > 1)
|
&& GL(dl_rtld_map).l_opencount > 1)
|
||||||
INT(_dl_relocate_object) (&GL(dl_rtld_map),
|
INTUSE(_dl_relocate_object) (&GL(dl_rtld_map),
|
||||||
GL(dl_loaded)->l_scope, 0, 0);
|
GL(dl_loaded)->l_scope, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
#define VERNEEDTAG (DT_NUM + DT_THISPROCNUM + DT_VERSIONTAGIDX (DT_VERNEED))
|
#define VERNEEDTAG (DT_NUM + DT_THISPROCNUM + DT_VERSIONTAGIDX (DT_VERNEED))
|
||||||
@ -1282,8 +1282,8 @@ of this helper program; chances are you did not intend to run this program.\n\
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (l != &GL(dl_rtld_map))
|
if (l != &GL(dl_rtld_map))
|
||||||
INT(_dl_relocate_object) (l, l->l_scope, GL(dl_lazy),
|
INTUSE(_dl_relocate_object) (l, l->l_scope, GL(dl_lazy),
|
||||||
consider_profiling);
|
consider_profiling);
|
||||||
|
|
||||||
l = l->l_prev;
|
l = l->l_prev;
|
||||||
}
|
}
|
||||||
@ -1305,15 +1305,15 @@ of this helper program; chances are you did not intend to run this program.\n\
|
|||||||
needs to have _dl_profile_map set up by the relocator. */
|
needs to have _dl_profile_map set up by the relocator. */
|
||||||
if (__builtin_expect (GL(dl_profile_map) != NULL, 0))
|
if (__builtin_expect (GL(dl_profile_map) != NULL, 0))
|
||||||
/* We must prepare the profiling. */
|
/* We must prepare the profiling. */
|
||||||
INT(_dl_start_profile) (GL(dl_profile_map), GL(dl_profile_output));
|
INTUSE(_dl_start_profile) (GL(dl_profile_map), GL(dl_profile_output));
|
||||||
|
|
||||||
if (GL(dl_rtld_map).l_opencount > 1)
|
if (GL(dl_rtld_map).l_opencount > 1)
|
||||||
{
|
{
|
||||||
/* There was an explicit ref to the dynamic linker as a shared lib.
|
/* There was an explicit ref to the dynamic linker as a shared lib.
|
||||||
Re-relocate ourselves with user-controlled symbol definitions. */
|
Re-relocate ourselves with user-controlled symbol definitions. */
|
||||||
HP_TIMING_NOW (start);
|
HP_TIMING_NOW (start);
|
||||||
INT(_dl_relocate_object) (&GL(dl_rtld_map), GL(dl_loaded)->l_scope,
|
INTUSE(_dl_relocate_object) (&GL(dl_rtld_map), GL(dl_loaded)->l_scope,
|
||||||
0, 0);
|
0, 0);
|
||||||
HP_TIMING_NOW (stop);
|
HP_TIMING_NOW (stop);
|
||||||
HP_TIMING_DIFF (add, start, stop);
|
HP_TIMING_DIFF (add, start, stop);
|
||||||
HP_TIMING_ACCUM_NT (relocate_time, add);
|
HP_TIMING_ACCUM_NT (relocate_time, add);
|
||||||
@ -1358,12 +1358,12 @@ of this helper program; chances are you did not intend to run this program.\n\
|
|||||||
|
|
||||||
/* Notify the debugger that all objects are now mapped in. */
|
/* Notify the debugger that all objects are now mapped in. */
|
||||||
r->r_state = RT_ADD;
|
r->r_state = RT_ADD;
|
||||||
INT(_dl_debug_state) ();
|
INTUSE(_dl_debug_state) ();
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef MAP_COPY
|
#ifndef MAP_COPY
|
||||||
/* We must munmap() the cache file. */
|
/* We must munmap() the cache file. */
|
||||||
INT(_dl_unload_cache) ();
|
INTUSE(_dl_unload_cache) ();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Once we return, _dl_sysdep_start will invoke
|
/* Once we return, _dl_sysdep_start will invoke
|
||||||
@ -1704,9 +1704,9 @@ print_statistics (void)
|
|||||||
if (HP_TIMING_AVAIL)
|
if (HP_TIMING_AVAIL)
|
||||||
{
|
{
|
||||||
HP_TIMING_PRINT (buf, sizeof (buf), rtld_total_time);
|
HP_TIMING_PRINT (buf, sizeof (buf), rtld_total_time);
|
||||||
INT(_dl_debug_printf) ("\nruntime linker statistics:\n"
|
INTUSE(_dl_debug_printf) ("\nruntime linker statistics:\n"
|
||||||
" total startup time in dynamic loader: %s\n",
|
" total startup time in dynamic loader: %s\n",
|
||||||
buf);
|
buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Print relocation statistics. */
|
/* Print relocation statistics. */
|
||||||
@ -1728,15 +1728,15 @@ print_statistics (void)
|
|||||||
*wp++ = *cp++;
|
*wp++ = *cp++;
|
||||||
}
|
}
|
||||||
*wp = '\0';
|
*wp = '\0';
|
||||||
INT(_dl_debug_printf) ("\
|
INTUSE(_dl_debug_printf) ("\
|
||||||
time needed for relocation: %s (%s%%)\n",
|
time needed for relocation: %s (%s%%)\n",
|
||||||
buf, pbuf);
|
buf, pbuf);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
INT(_dl_debug_printf) (" number of relocations: %lu\n",
|
INTUSE(_dl_debug_printf) (" number of relocations: %lu\n",
|
||||||
GL(dl_num_relocations));
|
GL(dl_num_relocations));
|
||||||
INT(_dl_debug_printf) (" number of relocations from cache: %lu\n",
|
INTUSE(_dl_debug_printf) (" number of relocations from cache: %lu\n",
|
||||||
GL(dl_num_cache_relocations));
|
GL(dl_num_cache_relocations));
|
||||||
|
|
||||||
#ifndef HP_TIMING_NONAVAIL
|
#ifndef HP_TIMING_NONAVAIL
|
||||||
/* Time spend while loading the object and the dependencies. */
|
/* Time spend while loading the object and the dependencies. */
|
||||||
@ -1758,9 +1758,9 @@ print_statistics (void)
|
|||||||
*wp++ = *cp++;
|
*wp++ = *cp++;
|
||||||
}
|
}
|
||||||
*wp = '\0';
|
*wp = '\0';
|
||||||
INT(_dl_debug_printf) ("\
|
INTUSE(_dl_debug_printf) ("\
|
||||||
time needed to load objects: %s (%s%%)\n",
|
time needed to load objects: %s (%s%%)\n",
|
||||||
buf, pbuf);
|
buf, pbuf);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@ -352,10 +352,10 @@
|
|||||||
/* Handling on non-exported internal names. We have to do this only
|
/* Handling on non-exported internal names. We have to do this only
|
||||||
for shared code. */
|
for shared code. */
|
||||||
#ifdef SHARED
|
#ifdef SHARED
|
||||||
# define INT(name) name##_internal
|
# define INTUSE(name) name##_internal
|
||||||
# define INTDEF(name) strong_alias (name, name##_internal);
|
# define INTDEF(name) strong_alias (name, name##_internal);
|
||||||
#else
|
#else
|
||||||
# define INT(name) name
|
# define INTUSE(name) name
|
||||||
# define INTDEF(name)
|
# define INTDEF(name)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -149,7 +149,7 @@ _dl_load_cache_lookup (const char *name)
|
|||||||
|
|
||||||
/* Print a message if the loading of libs is traced. */
|
/* Print a message if the loading of libs is traced. */
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS, 0))
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS, 0))
|
||||||
INT(_dl_debug_printf) (" search cache=%s\n", LD_SO_CACHE);
|
INTUSE(_dl_debug_printf) (" search cache=%s\n", LD_SO_CACHE);
|
||||||
|
|
||||||
if (cache == NULL)
|
if (cache == NULL)
|
||||||
{
|
{
|
||||||
@ -251,7 +251,7 @@ _dl_load_cache_lookup (const char *name)
|
|||||||
|
|
||||||
/* Print our result if wanted. */
|
/* Print our result if wanted. */
|
||||||
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS, 0) && best != NULL)
|
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_LIBS, 0) && best != NULL)
|
||||||
INT(_dl_debug_printf) (" trying file=%s\n", best);
|
INTUSE(_dl_debug_printf) (" trying file=%s\n", best);
|
||||||
|
|
||||||
return best;
|
return best;
|
||||||
}
|
}
|
||||||
|
@ -296,8 +296,8 @@ _dl_important_hwcaps (const char *platform, size_t platform_len, size_t *sz,
|
|||||||
if (result == NULL)
|
if (result == NULL)
|
||||||
{
|
{
|
||||||
no_memory:
|
no_memory:
|
||||||
INT(_dl_signal_error) (ENOMEM, NULL, NULL,
|
INTUSE(_dl_signal_error) (ENOMEM, NULL, NULL,
|
||||||
N_("cannot create capability list"));
|
N_("cannot create capability list"));
|
||||||
}
|
}
|
||||||
|
|
||||||
result[0].str = (char *) result; /* Does not really matter. */
|
result[0].str = (char *) result; /* Does not really matter. */
|
||||||
|
Reference in New Issue
Block a user