BIND 9.3.0beta2 is now available.

Mark Andrews Mark_Andrews at isc.org
Mon Apr 19 02:08:48 UTC 2004


> The following is a bunch of patches that I generated as a result of trying
> to build it on Windows using the VC++ 6.0 compiler. I had to make some
> assumptions as to the correctness of the changes. For example
> I changed several references from in6addr_any to isc_in6addr_any.
> In several other cases I used a cast to isc_uint16 since I wasn't sure
> whether the intent was to start using a 32-bit unsigned integer or just
> an oversight. There weren't a lot of changes but it may still make this a
> long message.
> 
> Danny
	
	For in6addr_any I would be doing something like the following
	in net.h.

	#if _MSC_VER < ?????
	#define in6addr_any isc_in6addr_any
	#define in6addr_loopback isc_in6addr_loopback
	#endif

	Mark

> --- bin/named/interfacemgr.c.old	Mon Mar 08 04:04:14 2004
> +++ bin/named/interfacemgr.c	Sun Apr 18 18:39:20 2004
> @@ -595,7 +595,7 @@
>   			if (!listenon_is_ip6_any(le))
>   				continue;
> 
> -			in6a = in6addr_any;
> +			in6a = isc_in6addr_any;
>   			isc_sockaddr_fromin6(&listen_addr, &in6a, le->port);
> 
>   			ifp = find_matching_interface(mgr, &listen_addr);
> 
> 
> --- bin/named/controlconf.c.old	Mon Mar 08 04:04:14 2004
> +++ bin/named/controlconf.c	Sun Apr 18 18:38:39 2004
> @@ -1244,7 +1244,7 @@
>   				if (isc_net_probeipv6() != ISC_R_SUCCESS)
>   					continue;
>   				isc_sockaddr_fromin6(&addr,
> -						     &in6addr_loopback, 0);
> +						     &isc_in6addr_loopback, 0);
>   			}
>   			isc_sockaddr_setport(&addr, NS_CONTROL_PORT);
> 
> --- bin/named/server.c.old	Sat Apr 10 01:02:54 2004
> +++ bin/named/server.c	Sun Apr 18 18:52:16 2004
> @@ -904,7 +904,7 @@
>   		udpsize = 512;
>   	if (udpsize > 4096)
>   		udpsize = 4096;
> -	dns_resolver_setudpsize(view->resolver, udpsize);
> +	dns_resolver_setudpsize(view->resolver, (isc_uint16_t)udpsize);
>   	
>   	/*
>   	 * Set supported DNSSEC algorithms.
> @@ -2031,7 +2031,7 @@
>   	     element != NULL;
>   	     element = cfg_list_next(element)) {
>   		cfg_obj_t *obj = cfg_listelt_value(element);
> -		in_port_t port = cfg_obj_asuint32(obj);
> +		in_port_t port = (isc_uint16_t) cfg_obj_asuint32(obj);
>   		
>   		result = dns_portlist_add(portlist, family, port);
>   		if (result != ISC_R_SUCCESS)
> @@ -2192,7 +2192,7 @@
>   		udpsize = 512;
>   	if (udpsize > 4096)
>   		udpsize = 4096;
> -	ns_g_udpsize = udpsize;
> +	ns_g_udpsize = (isc_uint16_t) udpsize;
> 
>   	/*
>   	 * Configure the zone manager.
> 
> --- lib/isc/netaddr.c.old	Sun Apr 18 20:29:23 2004
> +++ lib/isc/netaddr.c	Sun Apr 18 20:29:47 2004
> @@ -291,7 +291,7 @@
>   isc_netaddr_any6(isc_netaddr_t *netaddr) {
>   	memset(netaddr, 0, sizeof(*netaddr));
>   	netaddr->family = AF_INET6;
> -	netaddr->type.in6 = in6addr_any;
> +	netaddr->type.in6 = isc_in6addr_any;
>   }
> 
>   isc_boolean_t
> 
> --- lib/isc/sockaddr.c.old	Sun Apr 18 20:30:06 2004
> +++ lib/isc/sockaddr.c	Sun Apr 18 20:30:22 2004
> @@ -246,7 +246,7 @@
>   #ifdef ISC_PLATFORM_HAVESALEN
>   	sockaddr->type.sin6.sin6_len = sizeof(sockaddr->type.sin6);
>   #endif
> -	sockaddr->type.sin6.sin6_addr = in6addr_any;
> +	sockaddr->type.sin6.sin6_addr = isc_in6addr_any;
>   	sockaddr->type.sin6.sin6_port = 0;
>   	sockaddr->length = sizeof(sockaddr->type.sin6);
>   	ISC_LINK_INIT(sockaddr, link);
> 
> --- lib/dns/include/dns/message.h.old	Sun Mar 07 21:08:00 2004
> +++ lib/dns/include/dns/message.h	Sun Apr 18 18:29:57 2004
> @@ -176,7 +176,7 @@
>   	dns_messageid_t			id;
>   	unsigned int			flags;
>   	dns_rcode_t			rcode;
> -	unsigned int			opcode;
> +	dns_opcode_t			opcode;
>   	dns_rdataclass_t		rdclass;
> 
>   	/* 4 real, 1 pseudo */
> 
> --- lib/isc/win32/include/isc/platform.h.old	Sat Apr 17 21:57:07 2004
> +++ lib/isc/win32/include/isc/platform.h	Sun Apr 18 11:37:01 2004
> @@ -31,7 +31,9 @@
>    ***/
> 
>   #define ISC_PLATFORM_HAVEIPV6
> +#if _MSC_VER > 1200
>   #define ISC_PLATFORM_HAVEIN6PKTINFO
> +#endif
>   #define ISC_PLATFORM_NEEDPORTT
>   #undef MSG_TRUNC
>   #define ISC_PLATFORM_NEEDNTOP
> 
> --- lib/isc/win32/include/isc/ipv6.h.old	Thu Mar 11 00:58:44 2004
> +++ lib/isc/win32/include/isc/ipv6.h	Sun Apr 18 11:39:39 2004
> @@ -43,6 +43,11 @@
>    *	RFC 2553.
>    */
> 
> +#if _MSC_VER < 1300
> +#define s6_addr8	s6_addr
> +#define in6_addr in_addr6
> +#endif
> +
>   #ifndef IN6ADDR_ANY_INIT
>   #define IN6ADDR_ANY_INIT 	{{ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }}
>   #endif
> 
--
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742                 INTERNET: Mark_Andrews at isc.org


More information about the bind-workers mailing list