*
*/
struct fr_coord_pair_reg_s {
+ char const *name; //!< Name for log / request name.
fr_dlist_t entry; //!< Entry in list of pair list registrations
fr_dict_attr_t const *attr_packet_type; //!< Attribute containing packet type
fr_dict_attr_t const *root; //!< Pair list decoding root attribute
MEM(coord_pair_reg = talloc(coord_pair_regs, fr_coord_pair_reg_t));
*coord_pair_reg = (fr_coord_pair_reg_t) {
+ .name = reg_ctx->name,
.root = reg_ctx->root,
.cb_id = reg_ctx->cb_id,
.max_request_time = fr_time_delta_eq(reg_ctx->max_request_time, fr_time_delta_from_msec(0)) ?
}
static inline CC_HINT(always_inline)
-void coord_pair_request_name_number(request_t *request)
+void coord_pair_request_name_number(request_t *request, char const *name)
{
request->number = atomic_fetch_add_explicit(&request_number, 1, memory_order_seq_cst);
if (request->name) talloc_const_free(request->name);
- request->name = talloc_asprintf(request, "Coord-%"PRIu64, request->number);
+ request->name = talloc_asprintf(request, "Coord-%s-%"PRIu64, name, request->number);
}
static int _coord_pair_request_deinit( request_t *request, UNUSED void *uctx)
.uctx = uctx
};
coord_pair_request_init(coord_pair->el, request, now, packet_ctx);
- coord_pair_request_name_number(request);
+ coord_pair_request_name_number(request, coord_pair->coord_pair_reg->name);
unlang_interpret_set(request, coord_pair->intp);
} fr_coord_worker_pair_cb_reg_t;
typedef struct {
+ char const *name; //!< Name for log entries / request names.
fr_coord_worker_pair_cb_reg_t *worker_cb; //!< Callbacks for coordinator -> worker pair messages.
fr_dict_attr_t const *root; //!< Root attribute for decoding pair list messages.
uint32_t cb_id; //!< Coordinator callback id used for pair list messages.
rlm_crl_t *inst = talloc_get_type_abort(mctx->mi->data, rlm_crl_t);
inst->coord_pair_reg = fr_coord_pair_register(&(fr_coord_pair_reg_ctx_t) {
+ .name = mctx->mi->name,
.worker_cb = worker_pair_callbacks,
.cb_id = CRL_COORD_PAIR_CALLBACK_ID,
.root = fr_dict_root(dict_crl),