www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2015/09/16/13:57:43

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
X-Recipient: djgpp AT delorie DOT com
Date: Wed, 16 Sep 2015 20:56:54 +0300
From: "Eli Zaretskii (eliz AT gnu DOT org) [via djgpp AT delorie DOT com]" <djgpp AT delorie DOT com>
Subject: Re: dlopen.c: make sure filename is not NULL and not empty
In-reply-to: <cae6b037-4d08-4255-aa4f-d423a86a0d1c@googlegroups.com>
X-012-Sender: halo1 AT inter DOT net DOT il
To: djgpp AT delorie DOT com
Message-id: <83d1xi6ye1.fsf@gnu.org>
References: <CAA2C=vCi88BYHh-yRXvtx8az13Y9wymqkjs93UJHx=qaZRPOGQ AT mail DOT gmail DOT com> <cae6b037-4d08-4255-aa4f-d423a86a0d1c AT googlegroups DOT com>
Reply-To: djgpp AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> Date: Wed, 16 Sep 2015 10:14:40 -0700 (PDT)
> From: "Juan Manuel Guerrero (juan DOT guerrero AT gmx DOT de) [via djgpp AT delorie DOT com]" <djgpp AT delorie DOT com>
> 
> On Wednesday, September 16, 2015 at 2:39:19 PM UTC+2, Ozkan Sezer (sezeroz AT gmail DOT com) [via djgpp AT delorie DOT com] wrote:
> > If there are no objections, I want to apply the following
> > patch to both HEAD and to v2_05_1.  dlopen(NULL,mode) is
> > supported by glibc but not by djgpp, and such a call left
> > unchecked will result in Bad Things (TM) to happen.
> > 
> > Index: dlopen.c
> > ===================================================================
> > RCS file: /cvs/djgpp/djgpp/src/libc/dxe/dlopen.c,v
> > retrieving revision 1.9
> > diff -u -p -r1.9 dlopen.c
> > --- dlopen.c	21 Aug 2015 18:10:28 -0000	1.9
> > +++ dlopen.c	16 Sep 2015 12:02:07 -0000
> > @@ -119,6 +119,11 @@ void *dlopen(const char *filename, int m
> >    _dl_unresolved_count = 0;
> >    errno = 0;
> > 
> > +  if (!filename || !*filename) {
> > +    errno = EINVAL;
> > +    return NULL;
> > +  }
> > +
> >    /* Find the dynamic module along the LD_LIBRARY_PATH */
> >    if (!ACCESS(filename))
> >    {
> 
> 
> Looks ok to me but my man page tells something like this:
> "If filename is NULL, then the returned handle is for the  main  program."
> What shall this imply for DJGPP?

This feature is for when the function is already statically linked
into the main program.  Can we support this in DJGPP?  If not, we
should return ENOSYS or some such.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019