From 044ac16085094d6ec00ea0739d7b92df18793109 Mon Sep 17 00:00:00 2001 From: Bernhard Reutner-Fischer Date: Sun, 17 Mar 2013 07:19:23 +0100 Subject: inet: Fix LT{.old,} compilation due to res_iclose Signed-off-by: Bernhard Reutner-Fischer --- test/inet/Makefile.in | 8 +++++++- test/inet/tst-res.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 test/inet/tst-res.c (limited to 'test/inet') diff --git a/test/inet/Makefile.in b/test/inet/Makefile.in index 0710d3d71..2c84729bf 100644 --- a/test/inet/Makefile.in +++ b/test/inet/Makefile.in @@ -7,5 +7,11 @@ TESTS_DISABLED := bug-if1 gethost_r-align gethostid if_nameindex tst-aton \ endif ifeq ($(UCLIBC_HAS_SOCKET)$(UCLIBC_HAS_IPV4)$(UCLIBC_HAS_IPV6),) -TESTS_DISABLED := tst-ether_aton tst-ethers tst-ethers-line +TESTS_DISABLED += tst-ether_aton tst-ethers tst-ethers-line +endif + +ifeq ($(UCLIBC_HAS_RESOLVER_SUPPORT),) +TESTS_DISABLED += tst-res +else +LDFLAGS_tst-res_glibc := -lresolv # assume it's glibc or somebody with that lib endif diff --git a/test/inet/tst-res.c b/test/inet/tst-res.c new file mode 100644 index 000000000..ad9de789e --- /dev/null +++ b/test/inet/tst-res.c @@ -0,0 +1,42 @@ +#include +#include +#include +#include +#include +#include +#include + +int main(int argc, char **argv) +{ + int r; + struct __res_state state; + + r = res_ninit(&state); + if (r) { + herror("ninit"); + abort(); + } + r = res_init(); + if (r) { + herror("init"); + abort(); + } + + res_close(); +#ifdef __UCLIBC__ + /* assume there is at least one resolver configured */ + assert (state._u._ext.nscount > 0); +#else + assert (state._u._ext.nscount == 0); +#endif + assert (state.options & RES_INIT); + res_nclose(&state); +#ifdef __UCLIBC__ + /* We wipe the whole thing */ + assert ((state.options & RES_INIT) == 0); +#endif + assert (state._u._ext.nscount == 0); + + return 0; +} + -- cgit v1.2.3