forked from luck/tmp_suning_uos_patched
IPv4: route.c: Change checks against 0xffffffff to ipv4_is_lbcast()
Change a few checks against the hardcoded broadcast address, 0xffffffff, to ipv4_is_lbcast(). Remove some existing checks using ipv4_is_lbcast() that are now obviously superfluous. Signed-off-by: Andy Walls <awalls@md.metrocast.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
a47d60561e
commit
27a954bd56
@ -2124,7 +2124,7 @@ static int ip_route_input_slow(struct sk_buff *skb, __be32 daddr, __be32 saddr,
|
||||
ipv4_is_loopback(saddr))
|
||||
goto martian_source;
|
||||
|
||||
if (daddr == htonl(0xFFFFFFFF) || (saddr == 0 && daddr == 0))
|
||||
if (ipv4_is_lbcast(daddr) || (saddr == 0 && daddr == 0))
|
||||
goto brd_input;
|
||||
|
||||
/* Accept zero addresses only to limited broadcast;
|
||||
@ -2133,8 +2133,7 @@ static int ip_route_input_slow(struct sk_buff *skb, __be32 daddr, __be32 saddr,
|
||||
if (ipv4_is_zeronet(saddr))
|
||||
goto martian_source;
|
||||
|
||||
if (ipv4_is_lbcast(daddr) || ipv4_is_zeronet(daddr) ||
|
||||
ipv4_is_loopback(daddr))
|
||||
if (ipv4_is_zeronet(daddr) || ipv4_is_loopback(daddr))
|
||||
goto martian_destination;
|
||||
|
||||
/*
|
||||
@ -2367,11 +2366,11 @@ static int __mkroute_output(struct rtable **result,
|
||||
if (ipv4_is_loopback(fl->fl4_src) && !(dev_out->flags & IFF_LOOPBACK))
|
||||
return -EINVAL;
|
||||
|
||||
if (fl->fl4_dst == htonl(0xFFFFFFFF))
|
||||
if (ipv4_is_lbcast(fl->fl4_dst))
|
||||
res->type = RTN_BROADCAST;
|
||||
else if (ipv4_is_multicast(fl->fl4_dst))
|
||||
res->type = RTN_MULTICAST;
|
||||
else if (ipv4_is_lbcast(fl->fl4_dst) || ipv4_is_zeronet(fl->fl4_dst))
|
||||
else if (ipv4_is_zeronet(fl->fl4_dst))
|
||||
return -EINVAL;
|
||||
|
||||
if (dev_out->flags & IFF_LOOPBACK)
|
||||
@ -2530,7 +2529,7 @@ static int ip_route_output_slow(struct net *net, struct rtable **rp,
|
||||
|
||||
if (oldflp->oif == 0 &&
|
||||
(ipv4_is_multicast(oldflp->fl4_dst) ||
|
||||
oldflp->fl4_dst == htonl(0xFFFFFFFF))) {
|
||||
ipv4_is_lbcast(oldflp->fl4_dst))) {
|
||||
/* It is equivalent to inet_addr_type(saddr) == RTN_LOCAL */
|
||||
dev_out = __ip_dev_find(net, oldflp->fl4_src, false);
|
||||
if (dev_out == NULL)
|
||||
@ -2574,7 +2573,7 @@ static int ip_route_output_slow(struct net *net, struct rtable **rp,
|
||||
goto out; /* Wrong error code */
|
||||
|
||||
if (ipv4_is_local_multicast(oldflp->fl4_dst) ||
|
||||
oldflp->fl4_dst == htonl(0xFFFFFFFF)) {
|
||||
ipv4_is_lbcast(oldflp->fl4_dst)) {
|
||||
if (!fl.fl4_src)
|
||||
fl.fl4_src = inet_select_addr(dev_out, 0,
|
||||
RT_SCOPE_LINK);
|
||||
|
Loading…
Reference in New Issue
Block a user