decnet: dn_rtmsg: Move away from NLMSG_PUT().

And use nlmsg_data() while we're here too.

Also, remove pointless kernel log message.

Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
David S. Miller 2012-06-26 21:25:55 -07:00
parent 62566ca55d
commit 77ca4ed566
1 changed files with 10 additions and 10 deletions

View 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_SPACE(rt_skb->len);
size += NLMSG_ALIGN(sizeof(struct nf_dn_rtmsg)); size += NLMSG_ALIGN(sizeof(struct nf_dn_rtmsg));
skb = alloc_skb(size, GFP_ATOMIC); skb = alloc_skb(size, GFP_ATOMIC);
if (!skb) if (!skb) {
goto nlmsg_failure; *errp = -ENOMEM;
return NULL;
}
old_tail = skb->tail; 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 = (struct nf_dn_rtmsg *)NLMSG_DATA(nlh);
rtm->nfdn_ifindex = rt_skb->dev->ifindex; rtm->nfdn_ifindex = rt_skb->dev->ifindex;
ptr = NFDN_RTMSG(rtm); ptr = NFDN_RTMSG(rtm);
skb_copy_from_linear_data(rt_skb, ptr, rt_skb->len); skb_copy_from_linear_data(rt_skb, ptr, rt_skb->len);
nlh->nlmsg_len = skb->tail - old_tail; nlh->nlmsg_len = skb->tail - old_tail;
return skb; 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) static void dnrmg_send_peer(struct sk_buff *skb)