From 879d222c4f8d45afbd9ca5d2a7307e9a5aa41b73 Mon Sep 17 00:00:00 2001 From: James Carter Date: Wed, 4 Mar 2020 16:28:31 -0500 Subject: [PATCH] libsepol/cil: Do not check flavor when checking for duplicate parameters A parameter of a macro was only considered to be a duplicate if it matched both the name and flavor of another parameter. While it is true that CIL is able to differentiate between those two parameters, there is no reason to use the same name for two macro parameters and it is better to return an error for what is probably an error. Remove the check of the flavors when checking for duplicate parameters. Signed-off-by: James Carter Acked-by: Ondrej Mosnacek --- libsepol/cil/src/cil_build_ast.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/libsepol/cil/src/cil_build_ast.c b/libsepol/cil/src/cil_build_ast.c index 307b1ee3..fcecdc4f 100644 --- a/libsepol/cil/src/cil_build_ast.c +++ b/libsepol/cil/src/cil_build_ast.c @@ -5304,11 +5304,9 @@ int cil_gen_macro(struct cil_db *db, struct cil_tree_node *parse_current, struct struct cil_list_item *curr_param; cil_list_for_each(curr_param, macro->params) { if (param->str == ((struct cil_param*)curr_param->data)->str) { - if (param->flavor == ((struct cil_param*)curr_param->data)->flavor) { - cil_log(CIL_ERR, "Duplicate parameter\n"); - cil_destroy_param(param); - goto exit; - } + cil_log(CIL_ERR, "Duplicate parameter\n"); + cil_destroy_param(param); + goto exit; } }