From: Denis Vlasenko Date: Sun, 28 Sep 2008 23:39:18 +0000 (-0000) Subject: route: fix for 64-bit BE machines by Seonghun Lim (wariua AT gmail.com) X-Git-Tag: 1_13_0~140 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=58680706d7f281f9c91afa3917d5b705e61a39ca;p=oweals%2Fbusybox.git route: fix for 64-bit BE machines by Seonghun Lim (wariua AT gmail.com) --- diff --git a/networking/route.c b/networking/route.c index 2bc2f9210..8778ecd38 100644 --- a/networking/route.c +++ b/networking/route.c @@ -302,7 +302,7 @@ static void INET_setroute(int action, char **args) /* sanity checks.. */ if (mask_in_addr(rt)) { - unsigned long mask = mask_in_addr(rt); + uint32_t mask = mask_in_addr(rt); mask = ~ntohl(mask); if ((rt.rt_flags & RTF_HOST) && mask != 0xffffffff) { @@ -313,7 +313,7 @@ static void INET_setroute(int action, char **args) bb_error_msg_and_die("bogus netmask %s", netmask); } mask = ((struct sockaddr_in *) &rt.rt_dst)->sin_addr.s_addr; - if (mask & ~mask_in_addr(rt)) { + if (mask & ~(uint32_t)mask_in_addr(rt)) { bb_error_msg_and_die("netmask and route address conflict"); } }