49 fr_dbuff_uctx_talloc_t
tctx;
76 struct iovec *vector_p,
size_t vector_len);
unlang_action_t
Returned by unlang_op_t calls, determine the next action of the interpreter.
Temporary structure to hold arguments for module calls.
struct linelog_write_uctx_s linelog_write_uctx_t
linelog_buffer_action_t file_enqueue_write(rlm_linelog_file_entry_t **entry_p, module_ctx_t const *mctx, linelog_call_env_t const *call_env, request_t *request, struct iovec *vector_p, size_t vector_len)
void file_batching_mod_handle_signal(module_ctx_t const *mctx, request_t *request, fr_signal_t action)
char const * filename
Talloced filename string.
fr_dbuff_t dbuff
Talloced, dynamically resized dbuff containing all of the linelog content to write out.
unlang_action_t file_batching_mod_resume(unlang_result_t *p_result, module_ctx_t const *mctx, request_t *request)
void file_thread_init(rlm_linelog_thread_t *thread, fr_timer_list_t *tl)
rlm_linelog_file_entry_t entry[]
Array of metadata for each pending write.
rlm_linelog_file_t * file
The file being written to.
fr_dbuff_uctx_talloc_t tctx
Talloc context for the dbuff.
rlm_linelog_t const * mod_inst
Module instance this file belongs to.
fr_timer_list_t * tl
Timer list for this thread.
void file_batching_xlat_handle_signal(xlat_ctx_t const *xctx, request_t *request, fr_signal_t action)
request_t * request
The request that created the data.
fr_value_box_t * log_header
Header to prepend to each log line.
xlat_action_t file_batching_xlat_resume(TALLOC_CTX *ctx, fr_dcursor_t *out, xlat_ctx_t const *xctx, request_t *request, fr_value_box_list_t *in)
rlm_linelog_file_entry_t * entry_last
Last entry in the array.
fr_hash_table_t * file_table
Hash table of files.
fr_timer_t * write
When we need to write out any pending data in the buffer.
size_t data_len
How much data this entry holds in the sbuff.
int error
Error code if the write failed.
@ LINELOG_BUFFER_WRITE_YIELD
Writing buffered data yielded.
@ LINELOG_BUFFER_WRITE_DONE
Writing buffered data completed.
@ LINELOG_BUFFER_WRITE_FAIL
Writing buffered data failed.
rlm_linelog_file_entry_t * entry_p
Last entry we wrote to.
rlm_linelog_thread_t * thread_inst
Thread instance this file belongs to.
fr_timer_t * expiry
When we should cleanup file metadata due to inactivity.
linelog module thread specific structure
fr_signal_t
Signals that can be generated/processed by request signal handlers.
static size_t char ** out