提交 c64e66c6 编写于 作者: D David S. Miller

audit: netlink: Move away from NLMSG_NEW().

And use nlmsg_data() while we're here too.
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 e0527334
......@@ -384,7 +384,7 @@ static void audit_hold_skb(struct sk_buff *skb)
static void audit_printk_skb(struct sk_buff *skb)
{
struct nlmsghdr *nlh = nlmsg_hdr(skb);
char *data = NLMSG_DATA(nlh);
char *data = nlmsg_data(nlh);
if (nlh->nlmsg_type != AUDIT_EOE) {
if (printk_ratelimit())
......@@ -516,14 +516,15 @@ struct sk_buff *audit_make_reply(int pid, int seq, int type, int done,
if (!skb)
return NULL;
nlh = NLMSG_NEW(skb, pid, seq, t, size, flags);
data = NLMSG_DATA(nlh);
nlh = nlmsg_put(skb, pid, seq, t, size, flags);
if (!nlh)
goto out_kfree_skb;
data = nlmsg_data(nlh);
memcpy(data, payload, size);
return skb;
nlmsg_failure: /* Used by NLMSG_NEW */
if (skb)
kfree_skb(skb);
out_kfree_skb:
kfree_skb(skb);
return NULL;
}
......@@ -680,7 +681,7 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
sessionid = audit_get_sessionid(current);
security_task_getsecid(current, &sid);
seq = nlh->nlmsg_seq;
data = NLMSG_DATA(nlh);
data = nlmsg_data(nlh);
switch (msg_type) {
case AUDIT_GET:
......@@ -1060,13 +1061,15 @@ static struct audit_buffer * audit_buffer_alloc(struct audit_context *ctx,
ab->skb = nlmsg_new(AUDIT_BUFSIZ, gfp_mask);
if (!ab->skb)
goto nlmsg_failure;
goto err;
nlh = NLMSG_NEW(ab->skb, 0, 0, type, 0, 0);
nlh = nlmsg_put(ab->skb, 0, 0, type, 0, 0);
if (!nlh)
goto out_kfree_skb;
return ab;
nlmsg_failure: /* Used by NLMSG_NEW */
out_kfree_skb:
kfree_skb(ab->skb);
ab->skb = NULL;
err:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册