diff options
author | Wei Yongjun <weiyongjun1@huawei.com> | 2016-09-10 09:43:48 +0200 |
---|---|---|
committer | Paul Moore <paul@paul-moore.com> | 2016-09-13 23:14:43 +0200 |
commit | 9b6a9ecc2d88ccdc57efc22d69436b9dd7e2eceb (patch) | |
tree | 40391e0237dd127fec6134c89fdb7667c8d58ebc /security/selinux | |
parent | selinux: fix overflow and 0 length allocations (diff) | |
download | linux-9b6a9ecc2d88ccdc57efc22d69436b9dd7e2eceb.tar.xz linux-9b6a9ecc2d88ccdc57efc22d69436b9dd7e2eceb.zip |
selinux: fix error return code in policydb_read()
Fix to return error code -EINVAL from the error handling case instead
of 0 (rc is overwrite to 0 when policyvers >=
POLICYDB_VERSION_ROLETRANS), as done elsewhere in this function.
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
[PM: normalize "selinux" in patch subject, description line wrap]
Signed-off-by: Paul Moore <paul@paul-moore.com>
Diffstat (limited to 'security/selinux')
-rw-r--r-- | security/selinux/ss/policydb.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/security/selinux/ss/policydb.c b/security/selinux/ss/policydb.c index 8c661f0451ec..ace683838d80 100644 --- a/security/selinux/ss/policydb.c +++ b/security/selinux/ss/policydb.c @@ -2417,6 +2417,7 @@ int policydb_read(struct policydb *p, void *fp) } else tr->tclass = p->process_class; + rc = -EINVAL; if (!policydb_role_isvalid(p, tr->role) || !policydb_type_isvalid(p, tr->type) || !policydb_class_isvalid(p, tr->tclass) || |