On Tue, Jan 29, 2013 at 12:09:51PM +0100, Florian Weimer wrote:
nss_hesiod needs secure_getenv, so a non-private symbol is needed.
In any case, I can link against __libc_secure_getenv in Fedora
rawhide:
<mock-chroot>[root@oldenburg tmp]# rpm -q glibc
glibc-2.17-1.fc19.x86_64
<mock-chroot>[root@oldenburg tmp]# cat t.c
void __libc_secure_getenv();
int main()
{
__libc_secure_getenv();
return 0;
}
<mock-chroot>[root@oldenburg tmp]# gcc t.c
<mock-chroot>[root@oldenburg tmp]#
You can link against it, but rpm won't let you package it.
nss_hesiod certainly shouldn't use __libc_secure_getenv, because it
is glibc internal symbol, it
IMHO should use dlvsym or dlsym from libc.so.6* on __secure_getenv resp.
secure_getenv.
Jakub