u32 buf[2], len; 
__le32 buf[2]; u32 len; 
static int user_read(struct policydb *p, struct hashtab *h, void *fp){	char *key = NULL;	struct user_datum *usrdatum;	int rc;	u32 buf[2], len;	usrdatum = kmalloc(sizeof(*usrdatum), GFP_KERNEL);	if (!usrdatum) {		rc = -ENOMEM;		goto out;	}	memset(usrdatum, 0, sizeof(*usrdatum));	rc = next_entry(buf, fp, sizeof buf);	if (rc < 0)		goto bad;	len = le32_to_cpu(buf[0]);	usrdatum->value = le32_to_cpu(buf[1]);	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;	rc = ebitmap_read(&usrdatum->roles, fp);	if (rc)		goto bad;	if (p->policyvers >= POLICYDB_VERSION_MLS) {		rc = mls_read_range_helper(&usrdatum->range, fp);		if (rc)			goto bad;		rc = mls_read_level(&usrdatum->dfltlevel, fp);		if (rc)			goto bad;	}	rc = hashtab_insert(h, key, usrdatum);	if (rc)		goto bad;out:	return rc;bad:	user_destroy(key, usrdatum, NULL);	goto out;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b5bf6c55edf94e9c7fc01724d5b271f78eaf1d3f/policydb.c/buggy/security/selinux/ss/policydb.c