ipv4: Fix bugs in fib_compute_spec_dst().
authorDavid S. Miller <davem@davemloft.net>
Fri, 29 Jun 2012 01:33:24 +0000 (18:33 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 29 Jun 2012 01:33:58 +0000 (18:33 -0700)
commita207a4b2e8067cbc7f33924e7f2c0fa4ef43b459
tree78e6b5e66b8dd0f1a3609828461d8743397f40b2
parent58050fce3530939372e6c2f4b4beb76fcb4caa65
ipv4: Fix bugs in fib_compute_spec_dst().

Based upon feedback from Julian Anastasov.

1) Use route flags to determine multicast/broadcast, not the
   packet flags.

2) Leave saddr unspecified in flow key.

3) Adjust how we invoke inet_select_addr().  Pass ip_hdr(skb)->saddr as
   second arg, and if it was zeronet use link scope.

4) Use loopback as input interface in flow key.

Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/fib_frontend.c