Remove "big endian" DNS section and RR data integer parser macros from
authorWilliam Ahern <william@25thandclement.com>
Mon, 19 Jun 2006 06:41:55 +0000 (06:41 +0000)
committerWilliam Ahern <william@25thandclement.com>
Mon, 19 Jun 2006 06:41:55 +0000 (06:41 +0000)
ares_dns.h, which break c-ares on my Sparc64. Bit-wise operations in C
operate on logical values. And in any event the octets are already in
big-endian (aka network) byte order so they're being reversed (thus the
source of the breakage).

CHANGES
ares_dns.h

diff --git a/CHANGES b/CHANGES
index 880d228..a257086 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,13 @@
   Changelog for the c-ares project
 
+* June 19, 2006
+
+- (wahern) Removed "big endian" DNS section and RR data integer parser
+  macros from ares_dns.h, which break c-ares on my Sparc64. Bit-wise
+  operations in C operate on logical values. And in any event the octets are
+  already in big-endian (aka network) byte order so they're being reversed
+  (thus the source of the breakage).
+
 * June 18, 2006
 
 - William Ahern handles EAGAIN/EWOULDBLOCK errors in most of the I/O calls
index 290c8fb..9e8f1d7 100644 (file)
 #ifndef ARES__DNS_H
 #define ARES__DNS_H
 
-#ifdef ARES_BIG_ENDIAN
-/* big-endian aware versions */
-#define DNS__16BIT(p)                   (((p)[1] << 8) | (p)[0])
-#define DNS__32BIT(p)                   (((p)[3] << 24) | ((p)[2] << 16) | \
-                                         ((p)[1] << 8) | (p)[0])
-#define DNS__SET16BIT(p, v)             (((p)[1] = ((v) >> 8) & 0xff), \
-                                         ((p)[0] = (v) & 0xff))
-#define DNS__SET32BIT(p, v)             (((p)[3] = ((v) >> 24) & 0xff), \
-                                         ((p)[2] = ((v) >> 16) & 0xff), \
-                                         ((p)[1] = ((v) >> 8) & 0xff), \
-                                         ((p)[0] = (v) & 0xff))
-#else
 #define DNS__16BIT(p)                   (((p)[0] << 8) | (p)[1])
 #define DNS__32BIT(p)                   (((p)[0] << 24) | ((p)[1] << 16) | \
                                          ((p)[2] << 8) | (p)[3])
@@ -39,7 +27,6 @@
                                          ((p)[1] = ((v) >> 16) & 0xff), \
                                          ((p)[2] = ((v) >> 8) & 0xff), \
                                          ((p)[3] = (v) & 0xff))
-#endif
 
 #if 0
 /* we cannot use this approach on systems where we can't access 16/32 bit