| From foo@baz Wed May 28 21:03:54 PDT 2014 |
| From: Julian Anastasov <ja@ssi.bg> |
| Date: Sun, 13 Apr 2014 18:08:02 +0300 |
| Subject: ipv4: return valid RTA_IIF on ip route get |
| |
| From: Julian Anastasov <ja@ssi.bg> |
| |
| [ Upstream commit 91146153da2feab18efab2e13b0945b6bb704ded ] |
| |
| Extend commit 13378cad02afc2adc6c0e07fca03903c7ada0b37 |
| ("ipv4: Change rt->rt_iif encoding.") from 3.6 to return valid |
| RTA_IIF on 'ip route get ... iif DEVICE' instead of rt_iif 0 |
| which is displayed as 'iif *'. |
| |
| inet_iif is not appropriate to use because skb_iif is not set. |
| Use the skb->dev->ifindex instead. |
| |
| Signed-off-by: Julian Anastasov <ja@ssi.bg> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| net/ipv4/route.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/net/ipv4/route.c |
| +++ b/net/ipv4/route.c |
| @@ -2364,7 +2364,7 @@ static int rt_fill_info(struct net *net, |
| } |
| } else |
| #endif |
| - if (nla_put_u32(skb, RTA_IIF, rt->rt_iif)) |
| + if (nla_put_u32(skb, RTA_IIF, skb->dev->ifindex)) |
| goto nla_put_failure; |
| } |
| |