kernel: fix secctx mem leak (#1283)
Co-authored-by: weishu <twsxtd@gmail.com>
This commit is contained in:
@@ -103,11 +103,14 @@ bool is_ksu_domain()
|
|||||||
{
|
{
|
||||||
char *domain;
|
char *domain;
|
||||||
u32 seclen;
|
u32 seclen;
|
||||||
|
bool result;
|
||||||
int err = security_secid_to_secctx(current_sid(), &domain, &seclen);
|
int err = security_secid_to_secctx(current_sid(), &domain, &seclen);
|
||||||
if (err) {
|
if (err) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return strncmp(KERNEL_SU_DOMAIN, domain, seclen) == 0;
|
result = strncmp(KERNEL_SU_DOMAIN, domain, seclen) == 0;
|
||||||
|
security_release_secctx(domain, seclen);
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool is_zygote(void *sec)
|
bool is_zygote(void *sec)
|
||||||
@@ -118,9 +121,12 @@ bool is_zygote(void *sec)
|
|||||||
}
|
}
|
||||||
char *domain;
|
char *domain;
|
||||||
u32 seclen;
|
u32 seclen;
|
||||||
|
bool result;
|
||||||
int err = security_secid_to_secctx(tsec->sid, &domain, &seclen);
|
int err = security_secid_to_secctx(tsec->sid, &domain, &seclen);
|
||||||
if (err) {
|
if (err) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return strncmp("u:r:zygote:s0", domain, seclen) == 0;
|
result = strncmp("u:r:zygote:s0", domain, seclen) == 0;
|
||||||
|
security_release_secctx(domain, seclen);
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user