u32 buf[2], len, i; 
__le32 buf[2]; u32 len, i; 
static int cond_read_node(struct policydb *p, struct cond_node *node, void *fp){	u32 buf[2], len, i;	int rc;	struct cond_expr *expr = NULL, *last = NULL;	rc = next_entry(buf, fp, sizeof(u32));	if (rc < 0)		return -1;	node->cur_state = le32_to_cpu(buf[0]);	len = 0;	rc = next_entry(buf, fp, sizeof(u32));	if (rc < 0)		return -1;	/* expr */	len = le32_to_cpu(buf[0]);	for (i = 0; i < len; i++ ) {		rc = next_entry(buf, fp, sizeof(u32) * 2);		if (rc < 0)			goto err;		expr = kmalloc(sizeof(struct cond_expr), GFP_KERNEL);		if (!expr) {			goto err;		}		memset(expr, 0, sizeof(struct cond_expr));		expr->expr_type = le32_to_cpu(buf[0]);		expr->bool = le32_to_cpu(buf[1]);		if (!expr_isvalid(p, expr)) {			kfree(expr);			goto err;		}		if (i == 0) {			node->expr = expr;		} else {			last->next = expr;		}		last = expr;	}	if (cond_read_av_list(p, fp, &node->true_list, NULL) != 0)		goto err;	if (cond_read_av_list(p, fp, &node->false_list, node->true_list) != 0)		goto err;	return 0;err:	cond_node_destroy(node);	return -1;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b5bf6c55edf94e9c7fc01724d5b271f78eaf1d3f/conditional.c/buggy/security/selinux/ss/conditional.c