unlang_frame_state_foreach_t *state = talloc_get_type_abort(frame->state, unlang_frame_state_foreach_t);
fr_value_box_t *box;
- if (!state->success) {
+ if (!state->success) {
RDEBUG("Failed expanding 'foreach' list");
*p_result = RLM_MODULE_FAIL;
return UNLANG_ACTION_CALCULATE_RESULT;
if (tmpl_dcursor_print(&FR_SBUFF_IN(state->buffer, BUFFER_SIZE), &state->cc) > 0) {
fr_value_box_strdup(state->key, &state->key->data, NULL, state->buffer, false);
}
- break;
+ break;
default:
fr_assert(0);
}
fr_assert(state->key != NULL);
}
-
+
if (tmpl_is_attr(gext->vpt)) {
MEM(state->buffer = talloc_array(state, char, BUFFER_SIZE));
return unlang_foreach_attr_init(p_result, request, frame, state);
[RLM_MODULE_UPDATED] = 0
},
.retry = RETRY_INIT,
- },
+ }
};
/** Generic signal handler
.interpret = unlang_function_call,
.signal = unlang_function_signal,
.dump = unlang_function_dump,
- .debug_braces = false,
+ .flag = UNLANG_OP_FLAG_DEBUG_BRACES | UNLANG_OP_FLAG_RETURN_POINT,
.frame_state_size = sizeof(unlang_frame_state_func_t),
.frame_state_type = "unlang_frame_state_func_t",
});
* Ignore everything except cancel.
*/
if (action != FR_SIGNAL_CANCEL) return;
-
+
fr_edit_list_abort(state->el);
state->el = NULL;
}
case RLM_MODULE_DISALLOW:
fr_edit_list_abort(state->el);
break;
-
+
case RLM_MODULE_OK:
case RLM_MODULE_HANDLED:
case RLM_MODULE_NOOP: