Skip to content

Commit

Permalink
Merge pull request #1255 from Hummer12007/policy
Browse files Browse the repository at this point in the history
Prevent null pointer dereferences with policy allocation failure
  • Loading branch information
ddevault committed Jul 1, 2017
2 parents fe76399 + 7d8a84b commit f745a3b
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 9 deletions.
6 changes: 3 additions & 3 deletions sway/commands.c
Expand Up @@ -608,10 +608,10 @@ struct cmd_results *config_commands_command(char *exec) {
}
if (!policy) {
policy = alloc_command_policy(cmd);
if (!policy) {
sway_abort("Unable to allocate security policy");
sway_assert(policy, "Unable to allocate security policy");
if (policy) {
list_add(config->command_policies, policy);
}
list_add(config->command_policies, policy);
}
policy->context = context;

Expand Down
6 changes: 3 additions & 3 deletions sway/commands/permit.c
Expand Up @@ -65,11 +65,11 @@ struct cmd_results *cmd_permit(int argc, char **argv) {
}

struct feature_policy *policy = get_feature_policy(program);
if (assign_perms) {
if (policy && assign_perms) {
policy->features |= get_features(argc, argv, &error);
sway_log(L_DEBUG, "Permissions granted to %s for features %d",
policy->program, policy->features);
}
sway_log(L_DEBUG, "Permissions granted to %s for features %d",
policy->program, policy->features);

free(program);
return cmd_results_new(CMD_SUCCESS, NULL, NULL);
Expand Down
6 changes: 3 additions & 3 deletions sway/security.c
Expand Up @@ -152,10 +152,10 @@ struct feature_policy *get_feature_policy(const char *name) {
}
if (!policy) {
policy = alloc_feature_policy(name);
if (!policy) {
sway_abort("Unable to allocate security policy");
sway_assert(policy, "Unable to allocate security policy");
if (policy) {
list_add(config->feature_policies, policy);
}
list_add(config->feature_policies, policy);
}
return policy;
}
Expand Down

0 comments on commit f745a3b

Please sign in to comment.