rwrap: Free IPv6 name servers

rwrap's res_ninit allocates IPv6 name servers, but res_nclose didn't
free them, leading to a resource leak detectable with valgrind.
rwrap: Call fclose() in rwrap_parse_resolv_conf

CID #68264

The file descriptor of resolv.conf wasn't closed properly.
tests: Call res_nclose() in test_res_query_search.c

The res_query and res_nsearch unit tests didn't call res_nclose as
appropriate, leading to a resource leak.
Explicitly zero out sin_zero to silence gcc warnings

On some platforms, failure to set the sin_zero structure lead to
warnings such as:

resolv_wrapper.c:969:5: warning: missing initializer for field ‘sin_zero’
		        of ‘struct sockaddr_in’ [-Wmissing-field-initializers]

     };
     ^
In file included from /usr/include/arpa/inet.h:22:0,
                 from /.../source/src/resolv_wrapper.c:38:
rwrap: Don't use htons for bitfield

On FreeBSD, using htons to set the bitfield led to warnings such as:
resolv_wrapper.c:162:8: warning: implicit truncation from '__uint16_t'
(aka 'unsigned short') to bitfield changes value from 256 to 0
[-Wbitfield-constant-conversion]
        h->qr = htons(1);               /* response flag */
              ^ ~~~~~~~~
Use the right array size in tests

Several unit tests used the wrong array size, which might cause buffer
overflows. This patch unifies on using sizeof(array) since all the
arrays are allocated on stack.

CID #68270
CID #68269
CID #68267
CID #68265