]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
add nonnull
authorAlan T. DeKok <aland@freeradius.org>
Mon, 14 Apr 2025 12:55:08 +0000 (08:55 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Mon, 14 Apr 2025 13:00:27 +0000 (09:00 -0400)
to hopefully get more information about UBSAN issues in CI OSX

src/lib/unlang/xlat.h
src/lib/unlang/xlat_expr.c

index ab1fb0f7a26626f97812efabd619308541edcba5..833ee83efe5207084f43bba1839d4ad9eea7ecd6 100644 (file)
@@ -396,10 +396,10 @@ ssize_t           xlat_aeval_compiled(TALLOC_CTX *ctx, char **out, request_t *request,
 int            xlat_flatten_to_argv(TALLOC_CTX *ctx, xlat_exp_head_t ***argv, xlat_exp_head_t *head);
 
 fr_slen_t      xlat_tokenize_expression(TALLOC_CTX *ctx, xlat_exp_head_t **head, fr_sbuff_t *in,
-                                        fr_sbuff_parse_rules_t const *p_rules, tmpl_rules_t const *t_rules);
+                                        fr_sbuff_parse_rules_t const *p_rules, tmpl_rules_t const *t_rules) CC_HINT(nonnull(1,2,3));
 
 fr_slen_t      xlat_tokenize_condition(TALLOC_CTX *ctx, xlat_exp_head_t **head, fr_sbuff_t *in,
-                                       fr_sbuff_parse_rules_t const *p_rules, tmpl_rules_t const *t_rules);
+                                       fr_sbuff_parse_rules_t const *p_rules, tmpl_rules_t const *t_rules) CC_HINT(nonnull(1,2,3));
 
 fr_slen_t      xlat_tokenize_argv(TALLOC_CTX *ctx, xlat_exp_head_t **head, fr_sbuff_t *in,
                                   xlat_t const *xlat, fr_sbuff_parse_rules_t const *p_rules, tmpl_rules_t const *t_rules,
index 5938fbfe615e63a0b39024734eacd2a329b56e92..1e9929e881e1c8afb66f9a89d5034b0be5b4faa6 100644 (file)
@@ -1944,11 +1944,15 @@ static const int precedence[T_TOKEN_LAST] = {
 static ssize_t tokenize_expression(xlat_exp_head_t *head, xlat_exp_t **out, fr_sbuff_t *in,
                                   fr_sbuff_parse_rules_t const *p_rules, tmpl_rules_t const *t_rules,
                                   fr_token_t prev, fr_sbuff_parse_rules_t const *bracket_rules,
-                                  fr_sbuff_parse_rules_t const *input_rules, bool cond);
+                                  fr_sbuff_parse_rules_t const *input_rules, bool cond) CC_HINT(nonnull(1,2,3,4,5));
 
 static ssize_t tokenize_field(xlat_exp_head_t *head, xlat_exp_t **out, fr_sbuff_t *in,
                              fr_sbuff_parse_rules_t const *p_rules, tmpl_rules_t const *t_rules,
-                             fr_sbuff_parse_rules_t const *bracket_rules, char *out_c, bool cond);
+                             fr_sbuff_parse_rules_t const *bracket_rules, char *out_c, bool cond) CC_HINT(nonnull(1,2,3,4,5));
+
+static fr_slen_t tokenize_unary(xlat_exp_head_t *head, xlat_exp_t **out, fr_sbuff_t *in,
+                               fr_sbuff_parse_rules_t const *p_rules, tmpl_rules_t const *t_rules,
+                               fr_sbuff_parse_rules_t const *bracket_rules, char *out_c, bool cond) CC_HINT(nonnull(1,2,3,4,5));
 
 static fr_table_num_sorted_t const expr_quote_table[] = {
        { L("\""),      T_DOUBLE_QUOTED_STRING  },      /* Don't re-order, backslash throws off ordering */