net: Fix endianness bug in link-local
The ip is stored in network order, so we can't test it in host order.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Reviewed-by: Kim Phillips <kim.phillips@freescale.com>
diff --git a/net/link_local.c b/net/link_local.c
index d52f13a..1ba796e 100644
--- a/net/link_local.c
+++ b/net/link_local.c
@@ -103,7 +103,7 @@
void link_local_start(void)
{
ip = getenv_IPaddr("llipaddr");
- if (ip != 0 && (ip & IN_CLASSB_NET) != LINKLOCAL_ADDR) {
+ if (ip != 0 && (ntohl(ip) & IN_CLASSB_NET) != LINKLOCAL_ADDR) {
puts("invalid link address");
net_set_state(NETLOOP_FAIL);
return;