2042 |
int len = 256; |
int len = 256; |
2043 |
char *realpath = NULL; |
char *realpath = NULL; |
2044 |
char *argv0 = NULL; |
char *argv0 = NULL; |
2045 |
const struct ccs_profile *profile = ccs_profile(ee->r.domain->profile); |
const struct ccs_profile *profile = ccs_profile(ccs_current_domain()-> |
2046 |
|
profile); |
2047 |
if (profile->learning->learning_exec_realpath) { |
if (profile->learning->learning_exec_realpath) { |
2048 |
struct file *file = ee->bprm->file; |
struct file *file = ee->bprm->file; |
2049 |
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) |
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) |
2169 |
struct ccs_query_entry *ccs_query_entry = NULL; |
struct ccs_query_entry *ccs_query_entry = NULL; |
2170 |
bool quota_exceeded = false; |
bool quota_exceeded = false; |
2171 |
char *header; |
char *header; |
2172 |
if (!r->domain) |
struct ccs_domain_info * const domain = ccs_current_domain(); |
|
r->domain = ccs_current_domain(); |
|
2173 |
switch (r->mode) { |
switch (r->mode) { |
2174 |
char *buffer; |
char *buffer; |
2175 |
struct ccs_condition *cond; |
struct ccs_condition *cond; |
2195 |
cond = ccs_get_condition(str); |
cond = ccs_get_condition(str); |
2196 |
} else |
} else |
2197 |
cond = NULL; |
cond = NULL; |
2198 |
ccs_write_domain_policy2(buffer, r->domain, cond, false); |
ccs_write_domain_policy2(buffer, domain, cond, false); |
2199 |
ccs_put_condition(cond); |
ccs_put_condition(cond); |
2200 |
kfree(buffer); |
kfree(buffer); |
2201 |
/* fall through */ |
/* fall through */ |
2206 |
int i; |
int i; |
2207 |
if (current->ccs_flags & CCS_DONT_SLEEP_ON_ENFORCE_ERROR) |
if (current->ccs_flags & CCS_DONT_SLEEP_ON_ENFORCE_ERROR) |
2208 |
return -EPERM; |
return -EPERM; |
2209 |
for (i = 0; i < ccs_profile(r->domain->profile)->enforcing-> |
for (i = 0; i < ccs_profile(domain->profile)->enforcing-> |
2210 |
enforcing_penalty; i++) { |
enforcing_penalty; i++) { |
2211 |
set_current_state(TASK_INTERRUPTIBLE); |
set_current_state(TASK_INTERRUPTIBLE); |
2212 |
schedule_timeout(HZ / 10); |
schedule_timeout(HZ / 10); |