decnet: dn_rtmsg: Move away from NLMSG_PUT().
authorDavid S. Miller <davem@davemloft.net>
Wed, 27 Jun 2012 04:25:55 +0000 (21:25 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 27 Jun 2012 04:25:55 +0000 (21:25 -0700)
And use nlmsg_data() while we're here too.

Also, remove pointless kernel log message.

Signed-off-by: David S. Miller <davem@davemloft.net>
net/decnet/netfilter/dn_rtmsg.c

index e6f886255cde3427e77821436fc7de880ef458d7..b8f7f5b8c3509b57e6c850d590df4c52f9f60c3a 100644 (file)
@@ -42,23 +42,23 @@ static struct sk_buff *dnrmg_build_message(struct sk_buff *rt_skb, int *errp)
        size = NLMSG_SPACE(rt_skb->len);
        size += NLMSG_ALIGN(sizeof(struct nf_dn_rtmsg));
        skb = alloc_skb(size, GFP_ATOMIC);
-       if (!skb)
-               goto nlmsg_failure;
+       if (!skb) {
+               *errp = -ENOMEM;
+               return NULL;
+       }
        old_tail = skb->tail;
-       nlh = NLMSG_PUT(skb, 0, 0, 0, size - sizeof(*nlh));
+       nlh = nlmsg_put(skb, 0, 0, 0, size - sizeof(*nlh), 0);
+       if (!nlh) {
+               kfree_skb(skb);
+               *errp = -ENOMEM;
+               return NULL;
+       }
        rtm = (struct nf_dn_rtmsg *)NLMSG_DATA(nlh);
        rtm->nfdn_ifindex = rt_skb->dev->ifindex;
        ptr = NFDN_RTMSG(rtm);
        skb_copy_from_linear_data(rt_skb, ptr, rt_skb->len);
        nlh->nlmsg_len = skb->tail - old_tail;
        return skb;
-
-nlmsg_failure:
-       if (skb)
-               kfree_skb(skb);
-       *errp = -ENOMEM;
-       net_err_ratelimited("dn_rtmsg: error creating netlink message\n");
-       return NULL;
 }
 
 static void dnrmg_send_peer(struct sk_buff *skb)