[apparmor] [PATCH 1/6] Update x conflict failure message
Seth Arnold
seth.arnold at gmail.com
Fri Feb 18 01:51:02 UTC 2011
Looks incomplete, details below.
On Thu, Feb 17, 2011 at 5:22 PM, John Johansen
<john.johansen at canonical.com> wrote:
> Output a better failure message when a conflict of x permissions cause
> policy compilation to fail. We don't have enough information available
> to output which rules during the dfa compilation so just improve the
> message to let people know that it means there are conflicting x modifiers
> in the rules.
>
> Signed-off-by: John Johansen <john.johansen at canonical.com>
> ---
> parser/immunix.h | 4 ++--
> parser/libapparmor_re/regexp.y | 3 +++
> parser/parser_merge.c | 2 +-
> 3 files changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/parser/immunix.h b/parser/immunix.h
> index 0d1729f..72446fc 100644
> --- a/parser/immunix.h
> +++ b/parser/immunix.h
> @@ -150,12 +150,12 @@ static inline int is_merged_x_consistent(int a, int b)
> {
> if ((a & AA_USER_EXEC) && (b & AA_USER_EXEC) &&
> ((a & AA_USER_EXEC_TYPE) != (b & AA_USER_EXEC_TYPE)))
> -{ fprintf(stderr, "failed user merge 0x%x 0x%x\n", a, b);
> + { //fprintf(stderr, "failed user merge 0x%x 0x%x\n", a, b);
> return 0;
> }
> if ((a & AA_OTHER_EXEC) && (b & AA_OTHER_EXEC) &&
> ((a & AA_OTHER_EXEC_TYPE) != (b & AA_OTHER_EXEC_TYPE)))
> -{ fprintf(stderr, "failed other merge 0x%x 0x%x\n", a, b);
> + { //fprintf(stderr, "failed other merge 0x%x 0x%x\n", a, b);
> return 0;
> }
> return 1;
> diff --git a/parser/libapparmor_re/regexp.y b/parser/libapparmor_re/regexp.y
> index c07b1cf..e0b47b2 100644
> --- a/parser/libapparmor_re/regexp.y
> +++ b/parser/libapparmor_re/regexp.y
> @@ -2823,6 +2823,9 @@ uint32_t accept_perms(NodeSet *state, uint32_t *audit_ctl, int *error)
> //if (perms & AA_CHANGE_HAT)
> // fprintf(stderr, "change_hat 0x%x\n", perms);
>
> + if (*error)
> + PERROR(_("profile has merged rule %s with conflicting x modifiers\n"));
There's a %s but no corresponding argument.
> +
> return perms;
> }
>
> diff --git a/parser/parser_merge.c b/parser/parser_merge.c
> index cc6ffb1..7044bfc 100644
> --- a/parser/parser_merge.c
> +++ b/parser/parser_merge.c
> @@ -108,7 +108,7 @@ static int process_file_entries(struct codomain *cod)
> if (file_comp(&cur, &next) == 0) {
> /* check for merged x consistency */
> if (!is_merged_x_consistent(cur->mode, next->mode)) {
> - PERROR(_("profile %s: has merged rule %s with multiple x modifiers\n"),
> + PERROR(_("profile %s: has merged rule %s with conflicting x modifiers\n"),
This one looks better, but the translations probably need a
s/multiple/conflicting/ -- maybe with a note to translators, too?
> cod->name, cur->name);
> return 0;
> }
> --
> 1.7.1
>
>
> --
> AppArmor mailing list
> AppArmor at lists.ubuntu.com
> Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/apparmor
>
More information about the AppArmor
mailing list