Re: libc6_2.0.7r-3 considered harmful
I had stupidly assumed that the /etc/ld.so.preload entries were
LD_PRELOAD.
I'll get the patch installed and uploaded asap. Can you send me a copy of
ld.so.preload that I can use to test with? (I know you have tested this
patch, but I just need to verify that I got it installed correctly)
Thanks for all the help,
On Sat, 4 Jul 1998, Herbert Xu wrote:
> In article <[🔎] Pine.LNX.3.96.980703194259.26531C-100000@dwarf.polaris.net> you wrote:
> > I've tested the -4 version with:
>
> > env LD_PRELOAD= ls
>
> > env LD_PRELOAD=/lib/libc.so.6 ls
>
> > and
>
> > env LS_PRELOAD=/lib/glc.so.2 ls
>
> > each of which work as expected. (The last example gives the expected "not
> > found" error)
>
> > Unless I have still missed a potential test :-( this is a complete fix.
>
> Sorry, I missed the /etc/ld.so.preload case since I wasn't aware of it at the
> time despite someone raising it to me on IRC. It's basically the same problem.
> Also, my original solution deleted the code to deal with the '::' case which
> David inserted. Here's my revised patch against -4.
>
> --
> Debian GNU/Linux 2.0beta is out! ( http://www.debian.org/ )
> Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
> Home Page: http://gondor.apana.org.au/~herbert/
> PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
> --
> --- rtld.c.orig Sat Jul 4 05:19:53 1998
> +++ rtld.c Sat Jul 4 05:18:43 1998
> @@ -366,13 +366,18 @@
> char *p;
> list += strspn (list, " :");
> while (list && *list && (p = strsep (&list, " :")) != NULL)
> - if (! __libc_enable_secure || strchr (p, '/') == NULL)
> - {
> - struct link_map *new_map = _dl_map_object (l, p, 1, lt_library, 0);
> - if (new_map->l_opencount == 1)
> - /* It is no duplicate. */
> - ++npreloads;
> - }
> + {
> + if (! __libc_enable_secure || strchr (p, '/') == NULL)
> + {
> + struct link_map *new_map = _dl_map_object (l, p, 1, lt_library, 0);
> + if (new_map->l_opencount == 1)
> + /* It is no duplicate. */
> + ++npreloads;
> + }
> +
> + if (list != NULL)
> + list += strspn (list, " :");
> + }
> }
>
> /* Read the contents of the file. */
> @@ -428,7 +433,7 @@
> {
> char *p;
> runp = file + strspn (file, ": \t\n");
> - while (*runp && (p = strsep (&runp, ": \t\n")) != NULL)
> + while (runp && *runp && (p = strsep (&runp, ": \t\n")) != NULL)
> {
> struct link_map *new_map = _dl_map_object (l, p, 1,
> lt_library, 0);
>
>
Dwarf
--
_-_-_-_-_- Author of "The Debian Linux User's Guide" _-_-_-_-_-_-
aka Dale Scheetz Phone: 1 (850) 656-9769
Flexible Software 11000 McCrackin Road
e-mail: dwarf@polaris.net Tallahassee, FL 32308
_-_-_-_-_-_- If you don't see what you want, just ask _-_-_-_-_-_-_-
--
To UNSUBSCRIBE, email to debian-devel-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Reply to: