mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-05 19:35:52 +03:00
Update.
* elf/dl-load.c (lose): Decrement _nl_loaded. (_dl_map_object_from_fd): Don't try to dlopen executables.
This commit is contained in:
@@ -1,5 +1,8 @@
|
|||||||
2000-09-07 Ulrich Drepper <drepper@redhat.com>
|
2000-09-07 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
|
* elf/dl-load.c (lose): Decrement _nl_loaded.
|
||||||
|
(_dl_map_object_from_fd): Don't try to dlopen executables.
|
||||||
|
|
||||||
* iconvdata/tst-tables.sh: Actually return with an error if
|
* iconvdata/tst-tables.sh: Actually return with an error if
|
||||||
something goes wrong.
|
something goes wrong.
|
||||||
* iconvdata/tst-table.sh: Return with an error if any of the cmp fails.
|
* iconvdata/tst-table.sh: Return with an error if any of the cmp fails.
|
||||||
|
@@ -709,6 +709,7 @@ lose (int code, int fd, const char *name, char *realname, struct link_map *l,
|
|||||||
l->l_prev->l_next = l->l_next;
|
l->l_prev->l_next = l->l_next;
|
||||||
if (l->l_next)
|
if (l->l_next)
|
||||||
l->l_next->l_prev = l->l_prev;
|
l->l_next->l_prev = l->l_prev;
|
||||||
|
--_dl_nloaded;
|
||||||
free (l);
|
free (l);
|
||||||
}
|
}
|
||||||
free (realname);
|
free (realname);
|
||||||
@@ -997,6 +998,13 @@ _dl_map_object_from_fd (const char *name, int fd, char *realname,
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
/* This object is loaded at a fixed address. This must never
|
||||||
|
happen for objects loaded with dlopen(). */
|
||||||
|
if (mode & __RTLD_DLOPEN)
|
||||||
|
{
|
||||||
|
LOSE (0, N_("cannot dynamically load executable"));
|
||||||
|
}
|
||||||
|
|
||||||
/* Notify ELF_PREFERRED_ADDRESS that we have to load this one
|
/* Notify ELF_PREFERRED_ADDRESS that we have to load this one
|
||||||
fixed. */
|
fixed. */
|
||||||
ELF_FIXED_ADDRESS (loader, c->mapstart);
|
ELF_FIXED_ADDRESS (loader, c->mapstart);
|
||||||
|
Reference in New Issue
Block a user