Message ID | 20121204.144702.1067637950249633761.davem@davemloft.net |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
Le 04/12/2012 20:47, David Miller a écrit : > > Thanks, fixed as follows: > > -------------------- > [PATCH] ipv6: Protect ->mc_forwarding access with CONFIG_IPV6_MROUTE > > Reported-by: Fengguang Wu <fengguang.wu@intel.com> > Signed-off-by: David S. Miller <davem@davemloft.net> Sorry for that and thank you for the fix and the report. Acked-by: Nicolas Dichtel <nicolas.dichtel@6wind.com> > --- > net/ipv6/addrconf.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c > index 28e0e62..6fca01f 100644 > --- a/net/ipv6/addrconf.c > +++ b/net/ipv6/addrconf.c > @@ -469,8 +469,10 @@ static int inet6_netconf_msgsize_devconf(int type) > /* type -1 is used for ALL */ > if (type == -1 || type == NETCONFA_FORWARDING) > size += nla_total_size(4); > +#ifdef CONFIG_IPV6_MROUTE > if (type == -1 || type == NETCONFA_MC_FORWARDING) > size += nla_total_size(4); > +#endif > > return size; > } > @@ -498,11 +500,12 @@ static int inet6_netconf_fill_devconf(struct sk_buff *skb, int ifindex, > if ((type == -1 || type == NETCONFA_FORWARDING) && > nla_put_s32(skb, NETCONFA_FORWARDING, devconf->forwarding) < 0) > goto nla_put_failure; > +#ifdef CONFIG_IPV6_MROUTE > if ((type == -1 || type == NETCONFA_MC_FORWARDING) && > nla_put_s32(skb, NETCONFA_MC_FORWARDING, > devconf->mc_forwarding) < 0) > goto nla_put_failure; > - > +#endif > return nlmsg_end(skb, nlh); > > nla_put_failure: -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index 28e0e62..6fca01f 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c @@ -469,8 +469,10 @@ static int inet6_netconf_msgsize_devconf(int type) /* type -1 is used for ALL */ if (type == -1 || type == NETCONFA_FORWARDING) size += nla_total_size(4); +#ifdef CONFIG_IPV6_MROUTE if (type == -1 || type == NETCONFA_MC_FORWARDING) size += nla_total_size(4); +#endif return size; } @@ -498,11 +500,12 @@ static int inet6_netconf_fill_devconf(struct sk_buff *skb, int ifindex, if ((type == -1 || type == NETCONFA_FORWARDING) && nla_put_s32(skb, NETCONFA_FORWARDING, devconf->forwarding) < 0) goto nla_put_failure; +#ifdef CONFIG_IPV6_MROUTE if ((type == -1 || type == NETCONFA_MC_FORWARDING) && nla_put_s32(skb, NETCONFA_MC_FORWARDING, devconf->mc_forwarding) < 0) goto nla_put_failure; - +#endif return nlmsg_end(skb, nlh); nla_put_failure:
Thanks, fixed as follows: -------------------- [PATCH] ipv6: Protect ->mc_forwarding access with CONFIG_IPV6_MROUTE Reported-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net> --- net/ipv6/addrconf.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)