diff options
Diffstat (limited to 'test/inet/tst-res.c')
-rw-r--r-- | test/inet/tst-res.c | 42 |
1 files changed, 42 insertions, 0 deletions
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 <stdlib.h> +#include <assert.h> +#include <sys/types.h> +#include <netinet/in.h> +#include <arpa/nameser.h> +#include <resolv.h> +#include <netdb.h> + +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; +} + |