From d177994b641fc995de385a7069fadaf3a362254d Mon Sep 17 00:00:00 2001 From: Jakub Hrozek Date: Tue, 12 Apr 2011 10:10:25 +0200 Subject: Use safe alignment macros for in-tree SRV record parsing The in-tree SRV record parsing is used with very old c-ares libraries that don't implement the parsing themselves (c-ares < 1.7, used in e.g. RHEL5) --- src/resolv/ares/ares_parse_srv_reply.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/resolv/ares/ares_parse_srv_reply.c b/src/resolv/ares/ares_parse_srv_reply.c index 086c4dba0..7e01e1a6d 100644 --- a/src/resolv/ares/ares_parse_srv_reply.c +++ b/src/resolv/ares/ares_parse_srv_reply.c @@ -143,11 +143,11 @@ int _ares_parse_srv_reply (const unsigned char *abuf, int alen, srv_last = srv_curr; vptr = aptr; - srv_curr->priority = ntohs (*((const unsigned short *)vptr)); + srv_curr->priority = DNS__16BIT(vptr); vptr += sizeof(const unsigned short); - srv_curr->weight = ntohs (*((const unsigned short *)vptr)); + srv_curr->weight = DNS__16BIT(vptr); vptr += sizeof(const unsigned short); - srv_curr->port = ntohs (*((const unsigned short *)vptr)); + srv_curr->port = DNS__16BIT(vptr); vptr += sizeof(const unsigned short); status = ares_expand_name (vptr, abuf, alen, &srv_curr->host, &len); -- cgit