Date: Sun, 16 Jul 2006 15:26:33 +0200 From: Roland Dittel <Roland.Dittel@web.de> To: "Simon 'corecode' Schubert" <corecode@fs.ei.tum.de> Cc: hackers@freebsd.org Subject: Re: dlsym() on implicit loaded symbols Message-ID: <b8fb00de744cf96704f801f919ec205b@web.de> In-Reply-To: <44BA31FE.7070200@fs.ei.tum.de> References: <62d3f75eb4400604406fdea341d91e41@web.de> <44B92FD7.90801@fs.ei.tum.de> <44BA1B7B.8000305@web.de> <44BA31FE.7070200@fs.ei.tum.de>
next in thread | previous in thread | raw e-mail | index | archive | help
Am 16.07.2006 um 14:33 schrieb Simon 'corecode' Schubert: > Roland Dittel wrote: >>>> We have a issue with dlsym() on symbols imported by a library that=20= >>>> was loaded with dlopen(). Our code loads the libssl with dlopen()=20= >>>> and then do a dlsym() on several symbols. This works for all=20 >>>> symbols exported by libssl itself but fails for symbols exported by=20= >>>> libcrypto. > [..] >> func =3D dlsym(handle, "CRYPTO_set_id_callback"); > > you have to use RTLD_DEFAULT instead of handle, but I agree, this is=20= > not in conformance with SUSv3: That's it. Thank you very much. Roland > > The dlsym() function shall search for the named symbol in all=20 > objects loaded automatically as a result of loading the object=20 > referenced by handle (see dlopen()). Load ordering is used in dlsym()=20= > operations upon the global symbol object. The symbol resolution=20 > algorithm used shall be dependency order as described in dlopen(). > > The RTLD_DEFAULT and RTLD_NEXT flags are reserved for future use. > > Note "in all objects loaded automatically". Good catch! > > cheers > simon > > --=20 > Serve - BSD +++ RENT this banner advert +++ ASCII Ribbon = /"\ > Work - Mac +++ space for low =80=80=80 NOW!1 +++ Campaign = \ / > Party Enjoy Relax | http://dragonflybsd.org Against HTML \ > Dude 2c 2 the max ! http://golden-apple.biz Mail + News / = \ >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?b8fb00de744cf96704f801f919ec205b>