#include <freeradius-devel/state.h>
#include <freeradius-devel/rad_assert.h>
-static fr_io_final_t mod_process(REQUEST *request, UNUSED fr_io_action_t action)
+static fr_io_final_t mod_process(REQUEST *request, fr_io_action_t action)
{
VALUE_PAIR *vp;
rlm_rcode_t rcode;
VERIFY_REQUEST(request);
+ /*
+ * Pass this through asynchronously to the module which
+ * is waiting for something to happen.
+ */
+ if (action != FR_ACTION_RUN) {
+ unlang_signal(request, action);
+ return;
+ }
+
switch (request->request_state) {
case REQUEST_INIT:
radlog_request(L_DBG, L_DBG_LVL_1, request, "Received %s ID %i",
extra);
}
-static fr_io_final_t mod_process(REQUEST *request, UNUSED fr_io_action_t action)
+static fr_io_final_t mod_process(REQUEST *request, fr_io_action_t action)
{
VALUE_PAIR *vp, *auth_type;
rlm_rcode_t rcode;
fr_dict_attr_t const *da = NULL;
vp_cursor_t cursor;
+ VERIFY_REQUEST(request);
+
+ /*
+ * Pass this through asynchronously to the module which
+ * is waiting for something to happen.
+ */
+ if (action != FR_ACTION_RUN) {
+ unlang_signal(request, action);
+ return;
+ }
+
switch (request->request_state) {
case REQUEST_INIT:
radlog_request(L_DBG, L_DBG_LVL_1, request, "Received %s ID %i",
#include <freeradius-devel/dict.h>
#include <freeradius-devel/rad_assert.h>
-static fr_io_final_t mod_process(REQUEST *request, UNUSED fr_io_action_t action)
+static fr_io_final_t mod_process(REQUEST *request, fr_io_action_t action)
{
VALUE_PAIR *vp;
rlm_rcode_t rcode;
VERIFY_REQUEST(request);
+ /*
+ * Pass this through asynchronously to the module which
+ * is waiting for something to happen.
+ */
+ if (action != FR_ACTION_RUN) {
+ unlang_signal(request, action);
+ return;
+ }
+
switch (request->request_state) {
case REQUEST_INIT:
radlog_request(L_DBG, L_DBG_LVL_1, request, "Received %s ID %i",
#include <freeradius-devel/dict.h>
#include <freeradius-devel/rad_assert.h>
-static fr_io_final_t mod_process(REQUEST *request, UNUSED fr_io_action_t action)
+static fr_io_final_t mod_process(REQUEST *request, fr_io_action_t action)
{
rlm_rcode_t rcode;
CONF_SECTION *unlang;
VERIFY_REQUEST(request);
+ /*
+ * Pass this through asynchronously to the module which
+ * is waiting for something to happen.
+ */
+ if (action != FR_ACTION_RUN) {
+ unlang_signal(request, action);
+ return;
+ }
+
switch (request->request_state) {
case REQUEST_INIT:
radlog_request(L_DBG, L_DBG_LVL_1, request, "Received %s ID %i",