Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[linux-2.6-microblaze.git] / net / ipv6 / ip6mr.c
index 8110362..efc0098 100644 (file)
@@ -2215,14 +2215,15 @@ static int ip6mr_fill_mroute(struct mr6_table *mrt, struct sk_buff *skb,
        rtm->rtm_src_len  = 128;
        rtm->rtm_tos      = 0;
        rtm->rtm_table    = mrt->id;
-       NLA_PUT_U32(skb, RTA_TABLE, mrt->id);
+       if (nla_put_u32(skb, RTA_TABLE, mrt->id))
+               goto nla_put_failure;
        rtm->rtm_scope    = RT_SCOPE_UNIVERSE;
        rtm->rtm_protocol = RTPROT_UNSPEC;
        rtm->rtm_flags    = 0;
 
-       NLA_PUT(skb, RTA_SRC, 16, &c->mf6c_origin);
-       NLA_PUT(skb, RTA_DST, 16, &c->mf6c_mcastgrp);
-
+       if (nla_put(skb, RTA_SRC, 16, &c->mf6c_origin) ||
+           nla_put(skb, RTA_DST, 16, &c->mf6c_mcastgrp))
+               goto nla_put_failure;
        if (__ip6mr_fill_mroute(mrt, skb, c, rtm) < 0)
                goto nla_put_failure;