]> git.ipfire.org Git - thirdparty/glibc.git/commit
hesiod: Always use thread-local resolver state [BZ #19573]
authorFlorian Weimer <fweimer@redhat.com>
Mon, 2 May 2016 13:25:20 +0000 (15:25 +0200)
committerFlorian Weimer <fweimer@redhat.com>
Mon, 9 May 2016 09:15:05 +0000 (11:15 +0200)
commit2d1f6790183dabf54c5b05be97d3872dab720c83
tree7ca25605b833ce2d677cdcd27813a1450258ec70
parent8a756c076eee041f7d231334480f96bebb0d8e29
hesiod: Always use thread-local resolver state [BZ #19573]

The Hesiod implementation imported into glibc was enhanced
to support caller-supplied resolver states.  But its only
consumer is nss_hesiod, and it supplies the thread-local
resolver state.  Therefore, this commit changes the Hesiod
implementation to use the thread-local resolver state (_res)
directly.  This fixes bug 19573 because the Hesiod
implementation no longer has to initialize and free any
resolver state.

To avoid any risk of interposition of ABI-incompatible Hesiod
function implementations, this commit marks the Hesiod functions
as hidden.  (They were already hidden using a linker version
script.)

(cherry picked from commit 5018f16c6205404ba3aa7298dc8a3d45fbd46bfc)
ChangeLog
hesiod/Makefile
hesiod/hesiod.c
hesiod/hesiod.h
hesiod/hesiod_p.h
hesiod/nss_hesiod/hesiod-grp.c
hesiod/nss_hesiod/hesiod-init.c [deleted file]
hesiod/nss_hesiod/hesiod-proto.c
hesiod/nss_hesiod/hesiod-pwd.c
hesiod/nss_hesiod/hesiod-service.c
hesiod/nss_hesiod/nss_hesiod.h [deleted file]