'\" t .\" Title: tlsrpt_finish_policy .\" Author: Boris Lohner .\" Generator: Asciidoctor 2.0.26 .\" Date: 2026-09-01 .\" Manual: tlsrpt_finish_policy .\" Source: tlsrpt_finish_policy .\" Language: English .\" .TH "TLSRPT_FINISH_POLICY" "3" "2026-09-01" "tlsrpt_finish_policy" "tlsrpt_finish_policy" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "NAME" tlsrpt_finish_policy \- finishes a policy within a delivery request .SH "SYNOPSIS" .sp #include .sp int tlsrpt_finish_policy(struct tlsrpt_dr_t* dr, tlsrpt_final_result_t final_result) .SH "DESCRIPTION" .sp The \f(CRtlsrpt_finish_policy\fP function finishes a policy within a delivery request. It frees all the resources allocated by \f(CRtlsrpt_init_policy\fP. Every call to \f(CRtlsrpt_init_policy\fP must be matched by a call to \f(CRtlsrpt_finish_policy\fP! .if n .sp .RS 4 .it 1 an-trap .nr an-no-space-flag 1 .nr an-break-flag 1 .br .ps +1 .B Note .ps -1 .br .sp No plausibility checks are done by the library regarding the number of failures added to this policy and the final result. It is just as well possible to finish a poliy as \f(CRTLSRPT_FINAL_FAILURE\fP with no failures added at all, as it is possible to finish a poliy as \f(CRTLSRPT_FINAL_SUCCESS\fP with one or more failures added. .sp .5v .RE .SH "RETURN VALUE" .sp The tlsrpt_finish_policy function returns 0 on success and a combined error code on failure. The combined error code can be analyzed with the \fItlsrpt_strerror\fP function. .SH "SEE ALSO" .sp man:tlsrpt_init_policy[3], man:tlsrpt_strerror[3], man:tlsrpt_error_code_is_internal[3] .SH "AUTHOR" .sp Boris Lohner