| From foo@baz Wed May 28 21:03:54 PDT 2014 |
| From: Li RongQing <roy.qing.li@gmail.com> |
| Date: Thu, 22 May 2014 16:36:55 +0800 |
| Subject: ipv4: initialise the itag variable in __mkroute_input |
| |
| From: Li RongQing <roy.qing.li@gmail.com> |
| |
| [ Upstream commit fbdc0ad095c0a299e9abf5d8ac8f58374951149a ] |
| |
| the value of itag is a random value from stack, and may not be initiated by |
| fib_validate_source, which called fib_combine_itag if CONFIG_IP_ROUTE_CLASSID |
| is not set |
| |
| This will make the cached dst uncertainty |
| |
| Signed-off-by: Li RongQing <roy.qing.li@gmail.com> |
| Acked-by: Alexei Starovoitov <ast@plumgrid.com> |
| 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 |
| @@ -1526,7 +1526,7 @@ static int __mkroute_input(struct sk_buf |
| struct in_device *out_dev; |
| unsigned int flags = 0; |
| bool do_cache; |
| - u32 itag; |
| + u32 itag = 0; |
| |
| /* get a working reference to the output device */ |
| out_dev = __in_dev_get_rcu(FIB_RES_DEV(*res)); |