From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18037 invoked by alias); 27 Nov 2001 23:47:59 -0000 Mailing-List: contact gdb-patches-help@sourceware.cygnus.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 17848 invoked from network); 27 Nov 2001 23:47:52 -0000 Received: from unknown (HELO nevyn.them.org) (128.2.145.6) by hostedprojects.ges.redhat.com with SMTP; 27 Nov 2001 23:47:52 -0000 Received: from drow by nevyn.them.org with local (Exim 3.32 #1 (Debian)) id 168rxN-000648-00; Tue, 27 Nov 2001 18:48:05 -0500 Date: Thu, 15 Nov 2001 08:00:00 -0000 From: Daniel Jacobowitz To: Kevin Buettner Cc: Orjan Friberg , gdb-patches@sources.redhat.com Subject: Re: [RFC]: Solib search (Was: Re: Cross solib support; continued) Message-ID: <20011127184805.A23303@nevyn.them.org> Mail-Followup-To: Kevin Buettner , Orjan Friberg , gdb-patches@sources.redhat.com References: <20011108110955.A12240@nevyn.them.org> <3C03AB51.DB27B3D4@axis.com> <20011127101232.A25024@nevyn.them.org> <3C03B2E8.8409512@axis.com> <20011127104345.A1939@nevyn.them.org> <3C03DAB3.8240E639@axis.com> <20011127134600.A11327@nevyn.them.org> <3C03E660.B33DF385@axis.com> <20011127142935.A12983@nevyn.them.org> <1011127234428.ZM13447@ocotillo.lan> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1011127234428.ZM13447@ocotillo.lan> User-Agent: Mutt/1.3.23i X-SW-Source: 2001-11/txt/msg00303.txt.bz2 On Tue, Nov 27, 2001 at 04:44:28PM -0700, Kevin Buettner wrote: > On Nov 27, 2:29pm, Daniel Jacobowitz wrote: > > > I think your patch is OK. If we fail to find it in the absolute path, > > search for its "absolute" (without leading directory separator[s]) > > path in each directory in the solib-search-path. Then try searching > > for its basename as a last resort. Right? > > I don't like it. In particular, the part I don't like is: > > + /* If the search in solib_absolute_prefix failed, and the path name is > + absolute at this point, make it relative. (openp will try and open the > + file according to its absolute path otherwise, which is not what we want.) > + Affects all subsequent searches for this solib. */ > + if (found_file < 0 && IS_DIR_SEPARATOR (in_pathname[0])) > + in_pathname++; > + > > I do understand Orjan's reasons for doing this, but it seems rather > fragile to me. I think that we'd be better off doing one of the > following: > > 1) Change openp()'s behavior so that it (optionally) doesn't > attempt to open a file (which has an absolute path). I.e, > force it to only consider the paths that we pass it. > > 2) Explicitly prepend solib_absolute_prefix to the path in question > and pass that to openp(). Or, perhaps openp() doesn't even need > to be called. Perhaps we can do the job with open(). If I understand correctly, that's not what he was trying to accomplish. He was trying to have openp() search for the "absolute" path after each member of solib-search-path. Am I wrong? -- Daniel Jacobowitz Carnegie Mellon University MontaVista Software Debian GNU/Linux Developer From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Jacobowitz To: Kevin Buettner Cc: Orjan Friberg , gdb-patches@sources.redhat.com Subject: Re: [RFC]: Solib search (Was: Re: Cross solib support; continued) Date: Tue, 27 Nov 2001 15:47:00 -0000 Message-ID: <20011127184805.A23303@nevyn.them.org> References: <20011108110955.A12240@nevyn.them.org> <3C03AB51.DB27B3D4@axis.com> <20011127101232.A25024@nevyn.them.org> <3C03B2E8.8409512@axis.com> <20011127104345.A1939@nevyn.them.org> <3C03DAB3.8240E639@axis.com> <20011127134600.A11327@nevyn.them.org> <3C03E660.B33DF385@axis.com> <20011127142935.A12983@nevyn.them.org> <1011127234428.ZM13447@ocotillo.lan> X-SW-Source: 2001-11/msg00518.html Message-ID: <20011127154700.GlkNz0IVPYl-TlOoJdvRTlppZrsepq-6F1ASs8Bd-Wo@z> On Tue, Nov 27, 2001 at 04:44:28PM -0700, Kevin Buettner wrote: > On Nov 27, 2:29pm, Daniel Jacobowitz wrote: > > > I think your patch is OK. If we fail to find it in the absolute path, > > search for its "absolute" (without leading directory separator[s]) > > path in each directory in the solib-search-path. Then try searching > > for its basename as a last resort. Right? > > I don't like it. In particular, the part I don't like is: > > + /* If the search in solib_absolute_prefix failed, and the path name is > + absolute at this point, make it relative. (openp will try and open the > + file according to its absolute path otherwise, which is not what we want.) > + Affects all subsequent searches for this solib. */ > + if (found_file < 0 && IS_DIR_SEPARATOR (in_pathname[0])) > + in_pathname++; > + > > I do understand Orjan's reasons for doing this, but it seems rather > fragile to me. I think that we'd be better off doing one of the > following: > > 1) Change openp()'s behavior so that it (optionally) doesn't > attempt to open a file (which has an absolute path). I.e, > force it to only consider the paths that we pass it. > > 2) Explicitly prepend solib_absolute_prefix to the path in question > and pass that to openp(). Or, perhaps openp() doesn't even need > to be called. Perhaps we can do the job with open(). If I understand correctly, that's not what he was trying to accomplish. He was trying to have openp() search for the "absolute" path after each member of solib-search-path. Am I wrong? -- Daniel Jacobowitz Carnegie Mellon University MontaVista Software Debian GNU/Linux Developer