On Wed, Mar 4, 2020 at 10:28 PM James Carter <jwcart2@xxxxxxxxx> wrote: > 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 <jwcart2@xxxxxxxxx> > --- > 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; > } > } > > -- > 2.17.1 > Acked-by: Ondrej Mosnacek <omosnace@xxxxxxxxxx> -- Ondrej Mosnacek <omosnace at redhat dot com> Software Engineer, Security Technologies Red Hat, Inc.