Date: Mon, 6 Nov 2000 07:31:57 -0800 (PST) From: John Polstra <jdp@polstra.com> To: current@freebsd.org Cc: sobomax@freebsd.org Subject: Re: Problem with dlopen()/dlsym() after recent crt* changes Message-ID: <200011061531.eA6FVv821977@vashon.polstra.com> In-Reply-To: <3A066572.2CF3D7BC@FreeBSD.org> References: <3A066572.2CF3D7BC@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
In article <3A066572.2CF3D7BC@FreeBSD.org>, Maxim Sobolev <sobomax@FreeBSD.ORG> wrote: > After the crt changes the following piece of code, which worked previously, > gives a 'host: dlopen() failed: ./module.so: Undefined symbol > "__register_frame_info' error message (yeah, I know that it's better to check > handle == NULL first, but it's the way some apps work). > > handle = dlopen("./module.so", RTLD_LAZY); > if ((error = dlerror()) != NULL) > { > errx(1, "dlopen() failed: %s", error); > /* Not reached */ > } I personally think this code is broken. It's analogous to checking errno without first testing a system call's return value. > The full sources of this testcase can be found at: > http://people.freebsd.org/~sobomax/dlbug.tar.gz . OK, thanks. I'll take a look at it as soon as I can -- hopefully tonight. If I can come up with a reasonable work-around, I'll do so. John -- John Polstra jdp@polstra.com John D. Polstra & Co., Inc. Seattle, Washington USA "Disappointment is a good sign of basic intelligence." -- Chögyam Trungpa To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200011061531.eA6FVv821977>