Skip to content

Commit

Permalink
[CONNECTOR]: clean up {,__}cn_rx_skb()
Browse files Browse the repository at this point in the history
- __cn_rx_skb() does nothing but calls cn_call_callback(), it doesn't
check skb and msg sizes as the comment suggests, but cn_rx_skb() checks
those sizes.

- In cn_rx_skb() Local variable 'len' is not used. 'len' is probably
intended to be passed to skb_pull(), but here skb_pull() is not needed,
instead skb_free() is called.

Signed-off-by: Li Zefan <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
  • Loading branch information
Li Zefan authored and davem330 committed Jan 28, 2008
1 parent fd00eec commit 00f5e06
Showing 1 changed file with 4 additions and 26 deletions.
30 changes: 4 additions & 26 deletions drivers/connector/connector.c
Original file line number Diff line number Diff line change
Expand Up @@ -181,34 +181,15 @@ static int cn_call_callback(struct cn_msg *msg, void (*destruct_data)(void *), v
return err;
}

/*
* Skb receive helper - checks skb and msg size and calls callback
* helper.
*/
static int __cn_rx_skb(struct sk_buff *skb, struct nlmsghdr *nlh)
{
u32 pid, uid, seq, group;
struct cn_msg *msg;

pid = NETLINK_CREDS(skb)->pid;
uid = NETLINK_CREDS(skb)->uid;
seq = nlh->nlmsg_seq;
group = NETLINK_CB((skb)).dst_group;
msg = NLMSG_DATA(nlh);

return cn_call_callback(msg, (void (*)(void *))kfree_skb, skb);
}

/*
* Main netlink receiving function.
*
* It checks skb and netlink header sizes and calls the skb receive
* helper with a shared skb.
* It checks skb, netlink header and msg sizes, and calls callback helper.
*/
static void cn_rx_skb(struct sk_buff *__skb)
{
struct cn_msg *msg;
struct nlmsghdr *nlh;
u32 len;
int err;
struct sk_buff *skb;

Expand All @@ -224,11 +205,8 @@ static void cn_rx_skb(struct sk_buff *__skb)
return;
}

len = NLMSG_ALIGN(nlh->nlmsg_len);
if (len > skb->len)
len = skb->len;

err = __cn_rx_skb(skb, nlh);
msg = NLMSG_DATA(nlh);
err = cn_call_callback(msg, (void (*)(void *))kfree_skb, skb);
if (err < 0)
kfree_skb(skb);
}
Expand Down

0 comments on commit 00f5e06

Please sign in to comment.