From fb4df6febc17935c3f01b09f1b90eb0c0c96dff3 Mon Sep 17 00:00:00 2001 From: Yang Tse Date: Thu, 2 Dec 2010 19:45:00 +0100 Subject: [PATCH] ares_gethostbyaddr: fix compiler warning: conversion may lose significant bits --- ares_gethostbyaddr.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ares_gethostbyaddr.c b/ares_gethostbyaddr.c index 6acca89e..0de2cf24 100644 --- a/ares_gethostbyaddr.c +++ b/ares_gethostbyaddr.c @@ -265,11 +265,11 @@ static void ptr_rr_name(char *name, const struct ares_addr *addr) if (addr->family == AF_INET) { unsigned long laddr = ntohl(addr->addrV4.s_addr); - unsigned short a1 = (unsigned short)((laddr >> 24) & 0xff); - unsigned short a2 = (unsigned short)((laddr >> 16) & 0xff); - unsigned short a3 = (unsigned short)((laddr >> 8) & 0xff); - unsigned short a4 = (unsigned short)(laddr & 0xff); - sprintf(name, "%hu.%hu.%hu.%hu.in-addr.arpa", a4, a3, a2, a1); + unsigned long a1 = (laddr >> 24UL) & 0xFFUL; + unsigned long a2 = (laddr >> 16UL) & 0xFFUL; + unsigned long a3 = (laddr >> 8UL) & 0xFFUL; + unsigned long a4 = laddr & 0xFFUL; + sprintf(name, "%lu.%lu.%lu.%lu.in-addr.arpa", a4, a3, a2, a1); } else {