From: Alan T. DeKok Date: Tue, 27 Jun 2017 18:39:05 +0000 (-0400) Subject: HACK: don't save / restore state for internal proxying X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d8cfeba4b4b5d5358eb5dd5b0c3eb75f094cf508;p=thirdparty%2Ffreeradius-server.git HACK: don't save / restore state for internal proxying --- diff --git a/src/modules/proto_radius/proto_radius_auth.c b/src/modules/proto_radius/proto_radius_auth.c index 5071d7f790a..eab0da4f32c 100644 --- a/src/modules/proto_radius/proto_radius_auth.c +++ b/src/modules/proto_radius/proto_radius_auth.c @@ -158,7 +158,7 @@ static fr_io_final_t mod_process(REQUEST *request, UNUSED fr_io_action_t action) /* * Grab the VPS and data associated with the State attribute. */ - fr_state_to_request(global_state, request, request->packet); + if (!request->parent) fr_state_to_request(global_state, request, request->packet); /* * Push the conf section into the unlang stack. @@ -450,10 +450,10 @@ static fr_io_final_t mod_process(REQUEST *request, UNUSED fr_io_action_t action) * discard it for everything else. */ if (request->reply->code == FR_CODE_ACCESS_CHALLENGE) { - fr_request_to_state(global_state, request, request->packet, request->reply); + if (!request->parent) fr_request_to_state(global_state, request, request->packet, request->reply); } else { - fr_state_discard(global_state, request, request->packet); + if (!request->parent) fr_state_discard(global_state, request, request->packet); } if (!request->reply->code) {