Fixes problems with routing table scans on some platforms.

Negative bit shifts are definitely undefined oprations.
This commit is contained in:
Ondrej Zajicek 2013-05-28 10:44:44 +02:00
parent 9c99d753fd
commit 9810d05562

View file

@ -843,9 +843,11 @@ nl_parse_route(struct nlmsghdr *h, int scan)
memcpy(&ra.gw, RTA_DATA(a[RTA_GATEWAY]), sizeof(ra.gw)); memcpy(&ra.gw, RTA_DATA(a[RTA_GATEWAY]), sizeof(ra.gw));
ipa_ntoh(ra.gw); ipa_ntoh(ra.gw);
#ifdef IPV6
/* Silently skip strange 6to4 routes */ /* Silently skip strange 6to4 routes */
if (ipa_in_net(ra.gw, IPA_NONE, 96)) if (ipa_in_net(ra.gw, IPA_NONE, 96))
return; return;
#endif
ng = neigh_find2(&p->p, &ra.gw, ra.iface, ng = neigh_find2(&p->p, &ra.gw, ra.iface,
(i->rtm_flags & RTNH_F_ONLINK) ? NEF_ONLINK : 0); (i->rtm_flags & RTNH_F_ONLINK) ? NEF_ONLINK : 0);