$NetBSD: patch-an,v 1.3 2009/04/07 17:38:11 hasso Exp $

--- lib/bind/include/netdb.h.orig
+++ lib/bind/include/netdb.h
@@ -179,9 +179,17 @@ struct	addrinfo {
 	int		_ai_pad;
 #endif
 	socklen_t	ai_addrlen;
+#elif defined(__NetBSD__)
+#if defined(__sparc__) && defined(_LP64)
+	int		_ai_pad;
+#endif
+	socklen_t	ai_addrlen;
 #else
 	size_t		ai_addrlen;	/*%< length of ai_addr */
 #endif
+#if defined(__NetBSD__) && (defined(__alpha__) || (defined(__i386__) && defined(_LP64)))
+	int		_ai_pad;
+#endif
 #ifdef __linux
 	struct sockaddr	*ai_addr; 	/*%< binary address */
 	char		*ai_canonname;	/*%< canonical name for hostname */
@@ -492,7 +500,7 @@ int		innetgr_r __P((const char *, const 
 #endif
 #else
  /* defined(sun) || defined(bsdi) */
-#if defined(__GLIBC__) || defined(__FreeBSD__) && (__FreeBSD_version + 0 >= 601103)
+#if defined(__GLIBC__) || (defined(__FreeBSD__) && (__FreeBSD_version + 0 >= 601103)) || (defined(__DragonFly__) && (__DragonFly_version + 0 >= 200202))
 int gethostbyaddr_r __P((const char *, int, int, struct hostent *,
 		         char *, size_t, struct hostent **, int *));
 int gethostbyname_r __P((const char *, struct hostent *,
@@ -509,7 +517,7 @@ struct hostent	*gethostent_r __P((struct
 void		sethostent_r __P((int));
 void		endhostent_r __P((void));
 
-#if defined(__GLIBC__) || defined(__FreeBSD__) && (__FreeBSD_version + 0 >= 601103)
+#if defined(__GLIBC__) || (defined(__FreeBSD__) && (__FreeBSD_version + 0 >= 601103)) || (defined(__DragonFly__) && (__DragonFly_version + 0 >= 200202))
 int getnetbyname_r __P((const char *, struct netent *,
 			char *, size_t, struct netent **, int*));
 int getnetbyaddr_r __P((unsigned long int, int, struct netent *,
@@ -525,7 +533,7 @@ struct netent	*getnetent_r __P((struct n
 void		setnetent_r __P((int));
 void		endnetent_r __P((void));
 
-#if defined(__GLIBC__) || defined(__FreeBSD__) && (__FreeBSD_version + 0 >= 601103)
+#if defined(__GLIBC__) || (defined(__FreeBSD__) && (__FreeBSD_version + 0 >= 601103)) || (defined(__DragonFly__) && (__DragonFly_version + 0 >= 200202))
 int getprotobyname_r __P((const char *, struct protoent *, char *,
 			  size_t, struct protoent **));
 int getprotobynumber_r __P((int, struct protoent *, char *, size_t,
@@ -541,7 +549,7 @@ struct protoent	*getprotoent_r __P((stru
 void		setprotoent_r __P((int));
 void		endprotoent_r __P((void));
 
-#if defined(__GLIBC__) || defined(__FreeBSD__) && (__FreeBSD_version + 0 >= 601103)
+#if defined(__GLIBC__) || (defined(__FreeBSD__) && (__FreeBSD_version + 0 >= 601103)) || (defined(__DragonFly__) && (__DragonFly_version + 0 >= 200202))
 int getservbyname_r __P((const char *name, const char *,
 			 struct servent *, char *, size_t, struct servent **));
 int getservbyport_r __P((int port, const char *,
