From: Alan T. DeKok Date: Thu, 14 Sep 2017 23:09:18 +0000 (-0400) Subject: use correct process ptr X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=314a16e4a46f2125ef2dfd69cc9c38f7194a4e45;p=thirdparty%2Ffreeradius-server.git use correct process ptr --- diff --git a/src/main/unlang_compile.c b/src/main/unlang_compile.c index 124ca89855d..e2517f8581d 100644 --- a/src/main/unlang_compile.c +++ b/src/main/unlang_compile.c @@ -2567,6 +2567,7 @@ static unlang_t *compile_call(unlang_t *parent, unlang_compile_t *unlang_ctx, CO char *server; char *packet; CONF_SECTION *server_cs, *root; + fr_io_process_t *process_p; /* * calls with a normal packet are not allowed. It will @@ -2651,14 +2652,16 @@ static unlang_t *compile_call(unlang_t *parent, unlang_compile_t *unlang_ctx, CO * Verify it exists, but don't bother caching it. We can * figure it out at run-time. */ - g->process = cf_data_find(server_cs, fr_io_process_t, packet); - if (!g->process) { + process_p = (fr_io_process_t *) cf_data_value(cf_data_find(server_cs, fr_io_process_t, packet)); + if (!process_p) { cf_log_err(cs, "Virtual server %s cannot process '%s' packets", cf_section_name2(server_cs), packet); talloc_free(g); return NULL; } + g->process = *process_p; + c = unlang_group_to_generic(g); c->name = unlang_ops[c->type].name; c->debug_name = c->name;