radcli_dae_reply_to_buffer(3) Radius client library NAME radcli_dae_reply_to_buffer - Produce a reply as bytes instead of sending it the L0 counterpart of radcli_dae_reply()/radcli_dae_reply_error(), for a request that came from radcli_dae_process(). SYNOPSIS #include int radcli_dae_reply_to_buffer( radcli_dae_request *req, int ack, uint32_t error_cause, void *buf, size_t *len ); DESCRIPTION For a request radcli_dae_process() returned RADCLI_DAE_DUPLICATE for, ack and error_cause are ignored: a genuine retransmission always gets the same answer it originally got (RFC 5176 SS2.3), never a fresh one, so the bytes produced are always that cached decision's. PARAMETERS req a request from radcli_dae_process(), not yet replied to (unless RADCLI_DAE_DUPLICATE, which may be called any number of times). ack non-zero for an ACK, zero for a NAK ignored if req is a RADCLI_DAE_DUPLICATE. error_cause a radcli_error_cause value for a NAK, or 0 for a bare one ignored if req is a RADCLI_DAE_DUPLICATE. buf filled with the reply's bytes on success. len buf's capacity on entry; the reply's actual length on success. RETURN VALUE 0 on success, -1 on failure (any argument NULL, req already replied to and not a RADCLI_DAE_DUPLICATE, or buf too small). SEE ALSO radcli_ctx_dispatch(3), radcli_ctx_get_poll(3), radcli_dae_free(3), radcli_dae_new(3), radcli_dae_process(3), radcli_dae_reply(3), radcli_dae_reply_error(3), radcli_dae_req_attrs(3), radcli_dae_req_code(3), radcli_dae_req_framed_ip(3), radcli_dae_req_nas_port(3), radcli_dae_req_session_id(3), radcli_dae_req_user_name(3), radcli_dae_request_free(3), radcli_dae_set_handler(3), radcli_dae_start(3) radcli 2026-09-03 radcli_dae_reply_to_buffer(3)