RDEBUG("%s (%s)", frame->instruction->name ? frame->instruction->name : "",
fr_table_str_by_value(mod_rcode_table, rcode, "<invalid>"));
- request->rcode = rcode;
if (state->p_result) *state->p_result = rcode; /* Inform our caller if we have one */
*p_result = rcode;
request->module = state->previous_module;
ua = resume(&state->rcode, MODULE_CTX(mc->instance->dl_inst, state->thread->data, state->rctx), request);
safe_unlock(mc->instance);
- request->rcode = state->rcode;
-
if (request->master_state == REQUEST_STOP_PROCESSING) ua = UNLANG_ACTION_STOP_PROCESSING;
switch (ua) {
*/
case 'c': /* Current epoch time seconds */
+ /*
+ * @todo - leave this as FR_TYPE_DATE, but add an enumv which changes the scale to
+ * seconds?
+ */
MEM(value = fr_value_box_alloc(ctx, FR_TYPE_UINT64, NULL, false));
value->datum.uint64 = (uint64_t)fr_time_to_sec(fr_time());
break;
case 'C': /* Current epoch time microsecond component */
+ /*
+ * @todo - we probably should remove this now that we have FR_TYPE_DATE with scaling.
+ */
MEM(value = fr_value_box_alloc(ctx, FR_TYPE_UINT64, NULL, false));
value->datum.uint64 = (uint64_t)fr_time_to_usec(fr_time()) % 1000000;
break;
break;
case 'l': /* Request timestamp as seconds since the epoch */
+ /*
+ * @todo - leave this as FR_TYPE_DATE, but add an enumv which changes the scale to
+ * seconds?
+ */
MEM(value = fr_value_box_alloc(ctx, FR_TYPE_UINT64, NULL, false));
value->datum.uint64 = (uint64_t ) now;
break;
break;
case 'M': /* Request time microsecond component */
+ /*
+ * @todo - we probably should remove this now that we have FR_TYPE_DATE with scaling.
+ */
MEM(value = fr_value_box_alloc(ctx, FR_TYPE_UINT32, NULL, false));
value->datum.uint32 = fr_time_to_msec(request->packet->timestamp) % 1000;
break;