$OpenBSD: patch-lib_erl_interface_src_connect_ei_resolve_c,v 1.1 2011/07/01 08:26:24 dcoppa Exp $

Align ei buffer according to size of pointers
(unbreak Erlang/OTP on sparc64)

--- lib/erl_interface/src/connect/ei_resolve.c.orig	Fri Jul  1 09:44:20 2011
+++ lib/erl_interface/src/connect/ei_resolve.c	Fri Jul  1 09:47:17 2011
@@ -185,7 +185,12 @@ static int verify_dns_configuration(void) 
  * align: increment buf until it is dword-aligned, reduce len by same amount.
  * advance:  increment buf by n bytes, reduce len by same amount .
  */
-#define align_buf(buf,len) for (;(((unsigned)buf)&0x3); (buf)++, len--)
+#if defined SIZEOF_VOID_P
+#define ALIGNBYTES (SIZEOF_VOID_P - 1)
+#else
+#define ALIGNBYTES (sizeof(void*) - 1)
+#endif
+#define align_buf(buf,len) for (;(((unsigned)buf) & ALIGNBYTES); (buf)++, len--)
 #define advance_buf(buf,len,n) ((buf)+=(n),(len)-=(n))
 
 /* "and now the tricky part..." */
