perdatum = kmalloc(sizeof(*perdatum), GFP_KERNEL); 
perdatum = kzalloc(sizeof(*perdatum), GFP_KERNEL); 
static int perm_read(struct policydb *p, struct hashtab *h, void *fp){	char *key = NULL;	struct perm_datum *perdatum;	int rc;	__le32 buf[2];	u32 len;	perdatum = kmalloc(sizeof(*perdatum), GFP_KERNEL);	if (!perdatum) {		rc = -ENOMEM;		goto out;	}	memset(perdatum, 0, sizeof(*perdatum));	rc = next_entry(buf, fp, sizeof buf);	if (rc < 0)		goto bad;	len = le32_to_cpu(buf[0]);	perdatum->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 = hashtab_insert(h, key, perdatum);	if (rc)		goto bad;out:	return rc;bad:	perm_destroy(key, perdatum, NULL);	goto out;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/89d155ef62e5e0c10e4b37aaa5056f0beafe10e6/policydb.c/buggy/security/selinux/ss/policydb.c