From: Alan T. DeKok Date: Sun, 13 Apr 2025 13:53:39 +0000 (-0400) Subject: no need to switch over LHS type when we know what it is X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c21fdb11edaa6a6bf92f8b28f84b7045d7fbd60c;p=thirdparty%2Ffreeradius-server.git no need to switch over LHS type when we know what it is --- diff --git a/src/lib/server/map.c b/src/lib/server/map.c index 1110c9aff26..3027d9611a6 100644 --- a/src/lib/server/map.c +++ b/src/lib/server/map.c @@ -1502,9 +1502,10 @@ static int map_exec_to_vp(TALLOC_CTX *ctx, fr_pair_list_t *out, request_t *reque { int result; char *expanded = NULL; - char answer[1024]; + fr_pair_t *vp; fr_pair_list_t *input_pairs = NULL; fr_pair_list_t output_pairs; + char answer[1024]; fr_pair_list_init(&output_pairs); fr_pair_list_free(out); @@ -1536,27 +1537,16 @@ static int map_exec_to_vp(TALLOC_CTX *ctx, fr_pair_list_t *out, request_t *reque return -1; } - switch (map->lhs->type) { - case TMPL_TYPE_ATTR: - { - fr_pair_t *vp; - - MEM(vp = fr_pair_afrom_da(ctx, tmpl_attr_tail_da(map->lhs))); - vp->op = map->op; - if (fr_pair_value_from_str(vp, answer, strlen(answer), &fr_value_unescape_single, false) < 0) { - RPEDEBUG("Failed parsing exec output"); - talloc_free(&vp); - return -2; - } - fr_pair_append(out, vp); - - return 0; + MEM(vp = fr_pair_afrom_da(ctx, tmpl_attr_tail_da(map->lhs))); + vp->op = map->op; + if (fr_pair_value_from_str(vp, answer, strlen(answer), &fr_value_unescape_single, false) < 0) { + RPEDEBUG("Failed parsing exec output"); + talloc_free(&vp); + return -2; } + fr_pair_append(out, vp); - default: - fr_assert(0); - return -1; - } + return 0; } /** Convert a map to a #fr_pair_t