aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ares/CHANGES8
-rw-r--r--ares/ares_dns.h13
2 files changed, 8 insertions, 13 deletions
diff --git a/ares/CHANGES b/ares/CHANGES
index 880d22839..a257086be 100644
--- a/ares/CHANGES
+++ b/ares/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
diff --git a/ares/ares_dns.h b/ares/ares_dns.h
index 290c8fb8a..9e8f1d74a 100644
--- a/ares/ares_dns.h
+++ b/ares/ares_dns.h
@@ -18,18 +18,6 @@
#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