u32 buf[4], len, nel; 
__le32 buf[4]; u32 len, nel; 
static int common_read(struct policydb *p, struct hashtab *h, void *fp){	char *key = NULL;	struct common_datum *comdatum;	u32 buf[4], len, nel;	int i, rc;	comdatum = kmalloc(sizeof(*comdatum), GFP_KERNEL);	if (!comdatum) {		rc = -ENOMEM;		goto out;	}	memset(comdatum, 0, sizeof(*comdatum));	rc = next_entry(buf, fp, sizeof buf);	if (rc < 0)		goto bad;	len = le32_to_cpu(buf[0]);	comdatum->value = le32_to_cpu(buf[1]);	rc = symtab_init(&comdatum->permissions, PERM_SYMTAB_SIZE);	if (rc)		goto bad;	comdatum->permissions.nprim = le32_to_cpu(buf[2]);	nel = le32_to_cpu(buf[3]);	key = kmalloc(len + 1,GFP_KERNEL);	if (!key) {		rc = -ENOMEM;		goto bad;	}	rc = next_entry(key, fp, len);	if (rc < 0)		goto bad;	key[len] = 0;	for (i = 0; i < nel; i++) {		rc = perm_read(p, comdatum->permissions.table, fp);		if (rc)			goto bad;	}	rc = hashtab_insert(h, key, comdatum);	if (rc)		goto bad;out:	return rc;bad:	common_destroy(key, comdatum, NULL);	goto out;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b5bf6c55edf94e9c7fc01724d5b271f78eaf1d3f/policydb.c/buggy/security/selinux/ss/policydb.c