[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: