diff options
Diffstat (limited to 'security/selinux/ss/conditional.c')
-rw-r--r-- | security/selinux/ss/conditional.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/security/selinux/ss/conditional.c b/security/selinux/ss/conditional.c index 456e1a9bcfde..34afeadd9e73 100644 --- a/security/selinux/ss/conditional.c +++ b/security/selinux/ss/conditional.c | |||
@@ -242,6 +242,8 @@ int cond_read_bool(struct policydb *p, struct hashtab *h, void *fp) | |||
242 | goto err; | 242 | goto err; |
243 | 243 | ||
244 | len = le32_to_cpu(buf[2]); | 244 | len = le32_to_cpu(buf[2]); |
245 | if (((len == 0) || (len == (u32)-1))) | ||
246 | goto err; | ||
245 | 247 | ||
246 | rc = -ENOMEM; | 248 | rc = -ENOMEM; |
247 | key = kmalloc(len + 1, GFP_KERNEL); | 249 | key = kmalloc(len + 1, GFP_KERNEL); |