/* Returns: The number of times the packet has been sent previously  */
static unsigned dn_nsp_clone_and_send(struct sk_buff *skb, gfp_t gfp)
/* Returns: The number of times the packet has been sent previously  */
static unsigned dn_nsp_clone_and_send(struct sk_buff *skb, gfp_t gfp)
{
	struct dn_skb_cb *cb = DN_SKB_CB(skb);
	struct sk_buff *skb2;
	int ret = 0;
	if ((skb2 = skb_clone(skb, gfp)) != NULL) {
		ret = cb->xmit_count;
		cb->xmit_count++;
		cb->stamp = jiffies;
		skb2->sk = skb->sk;
		dn_nsp_send(skb2);
	}
	return ret;
}