mirror of
https://sourceware.org/git/glibc.git
synced 2025-09-01 05:02:03 +03:00
Update.
1998-03-11 15:27 Ulrich Drepper <drepper@cygnus.com> * elf/rtld.c: Update help message. Install link maps for preloaded objects using main_map as loader. * elf/dl-misc.c: Use __libc_write instead of __write for debugging. * elf/dl-profile.c: Likewise. * elf/dlsym.c: Little optimization. * elf/dlvsym.c: Likewise. 1998-03-11 14:56 Ulrich Drepper <drepper@cygnus.com> * posix/wordexp-test.c: Move test for parameter list at the very beginning. 1998-03-11 00:16 Tim Waugh <tim@cyberelk.demon.co.uk> * posix/wordexp.c (wordexp): Set we_wordc to zero initially unless WRDE_REUSE flag is set. (parse_param): Allow `*', `@', and numbers in parameter names. (parse_dollars): Differentiate between arithmetic expansion and a command substitution that starts immediately with a sub-shell (like ``$((1+3))'' as opposed to ``$((echo);(ls))''). (parse_param): Memory allocated with __alloca in a block was referenced outside that block. Adjusted to use malloc/free. (parse_param): Adjusted field-splitting algorithm so that there is not necessarily a field split at the end of a parameter expansion. 1998-03-10 19:52 Tim Waugh <tim@cyberelk.demon.co.uk> * posix/wordexp.c (wordexp): If about to return WRDE_NOSPACE, don't free words that have already been allocated. (parse_param): A dollar sign on its own will never have a pattern associated with it (like "${HOME%%/}" has), so don't try to free it. (parse_glob): Attempt to glob when an unquoted `[' is found (rather than an unquoted '{' (!)). Also for unquoted '?'. (parse_glob): Sorted out quoting in a glob-able word. (parse_param): Added $* and $@ handling.
This commit is contained in:
16
elf/rtld.c
16
elf/rtld.c
@@ -349,7 +349,7 @@ dl_main (const ElfW(Phdr) *phdr,
|
||||
Grant the user some education. */
|
||||
if (_dl_argc < 2)
|
||||
_dl_sysdep_fatal ("\
|
||||
Usage: ld.so [--list|--verify] EXECUTABLE-FILE [ARGS-FOR-PROGRAM...]\n\
|
||||
Usage: ld.so [OPTION]... EXECUTABLE-FILE [ARGS-FOR-PROGRAM...]\n\
|
||||
You have invoked `ld.so', the helper program for shared library executables.\n\
|
||||
This program usually lives in the file `/lib/ld.so', and special directives\n\
|
||||
in executable files using ELF shared libraries tell the system's program\n\
|
||||
@@ -360,7 +360,13 @@ command line to load and run an ELF executable file; this is like executing\n\
|
||||
that file itself, but always uses this helper program from the file you\n\
|
||||
specified, instead of the helper program file specified in the executable\n\
|
||||
file you run. This is mostly of use for maintainers to test new versions\n\
|
||||
of this helper program; chances are you did not intend to run this program.\n",
|
||||
of this helper program; chances are you did not intend to run this program.\n\
|
||||
\n\
|
||||
--list list all dependencies and how they are resolved\n\
|
||||
--verify verify that given object really is a dynamically linked\n\
|
||||
object we get handle\n\
|
||||
--library-path PATH use given PATH instead of content of the environment\n\
|
||||
variable LD_LIBRARY_PATH\n",
|
||||
NULL);
|
||||
|
||||
++_dl_skip_args;
|
||||
@@ -509,7 +515,7 @@ of this helper program; chances are you did not intend to run this program.\n",
|
||||
while ((p = strsep (&list, " :")) != NULL)
|
||||
if (! __libc_enable_secure || strchr (p, '/') == NULL)
|
||||
{
|
||||
struct link_map *new_map = _dl_map_object (NULL, p, 1,
|
||||
struct link_map *new_map = _dl_map_object (main_map, p, 1,
|
||||
lt_library, 0);
|
||||
if (new_map->l_opencount == 1)
|
||||
/* It is no duplicate. */
|
||||
@@ -570,7 +576,7 @@ of this helper program; chances are you did not intend to run this program.\n",
|
||||
runp = file + strspn (file, ": \t\n");
|
||||
while ((p = strsep (&runp, ": \t\n")) != NULL)
|
||||
{
|
||||
struct link_map *new_map = _dl_map_object (NULL, p, 1,
|
||||
struct link_map *new_map = _dl_map_object (main_map, p, 1,
|
||||
lt_library, 0);
|
||||
if (new_map->l_opencount == 1)
|
||||
/* It is no duplicate. */
|
||||
@@ -584,7 +590,7 @@ of this helper program; chances are you did not intend to run this program.\n",
|
||||
if (problem != NULL)
|
||||
{
|
||||
char *p = strndupa (problem, file_size - (problem - file));
|
||||
struct link_map *new_map = _dl_map_object (NULL, p, 1,
|
||||
struct link_map *new_map = _dl_map_object (main_map, p, 1,
|
||||
lt_library, 0);
|
||||
if (new_map->l_opencount == 1)
|
||||
/* It is no duplicate. */
|
||||
|
Reference in New Issue
Block a user