if (skb->len) { 
if (skb->len) 
static void xfrm_netlink_rcv(struct sock *sk, int len){	unsigned int qlen = skb_queue_len(&sk->sk_receive_queue);	do {		struct sk_buff *skb;		down(&xfrm_cfg_sem);		if (qlen > skb_queue_len(&sk->sk_receive_queue))			qlen = skb_queue_len(&sk->sk_receive_queue);		while (qlen--) {			skb = skb_dequeue(&sk->sk_receive_queue);			if (xfrm_user_rcv_skb(skb)) {				if (skb->len) {					skb_queue_head(&sk->sk_receive_queue,						       skb);					qlen++;				} else					kfree_skb(skb);				break;			}			kfree_skb(skb);		}		up(&xfrm_cfg_sem);	} while (qlen);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/09e14305982efc2f3b509d3c50ef5dcbff64a998/xfrm_user.c/buggy/net/xfrm/xfrm_user.c