.\" File automatically generated by doxy2man0.3 .\" Generation date: Thu Sep 3 2026 .TH radcli_request_done 3 2026-09-03 "radcli" "Radius client library" .SH "NAME" radcli_request_done \- Report r's outcome once radcli_ctx_dispatch() has resolved it a pure state query, performing no I/O of its own. .SH SYNOPSIS .nf .B #include .sp \fBint radcli_request_done\fP( \fBradcli_request *\fP\fIr\fP ); .fi .SH DESCRIPTION .PP Since REQ-NET2-SEND-016/013, r shares ctx's request socket/session with every other concurrently in-flight RADCLI_REQUEST_SENDONLY request, and radcli_ctx_dispatch() is what actually drives it to completion (draining replies, retransmitting, expiring on timeout) this call never performs I/O itself, so calling it any number of times between radcli_ctx_dispatch() calls is free. .SH PARAMETERS .TP .B r a request radcli_request_perform(r, RADCLI_REQUEST_SENDONLY) returned RADCLI_OK for. .SH RETURN VALUE .PP RADCLI_AGAIN if still waiting (call radcli_ctx_get_poll()/ radcli_ctx_dispatch() and try again), RADCLI_OK if a validated reply was received (read it with radcli_request_code()/_attrs(), same as radcli_request_perform()), RADCLI_TIMEOUT if retries are exhausted, or RADCLI_ERROR on failure or if r was never sent with RADCLI_REQUEST_SENDONLY. .SH SEE ALSO .PP .nh .ad l \fIradcli_aaa\fP(3), \fIradcli_request_attrs\fP(3), \fIradcli_request_code\fP(3), \fIradcli_request_free\fP(3), \fIradcli_request_new\fP(3), \fIradcli_request_perform\fP(3), \fIradcli_request_server\fP(3) .ad .hy