When loaded CRL files are displayed via "show ssl crl-file" command, the
in-progess transaction, if any, is also displayed. However, if the command
yield, the transaction is re-displayed again and again.
To fix the issue, old_crlfile_entry field is used to remember the transaction
was already displayed.
This patch must be backported as far as 2.5.
if (trash == NULL)
return 1;
- if (!ctx->old_crlfile_entry) {
- if (crlfile_transaction.old_crlfile_entry) {
- chunk_appendf(trash, "# transaction\n");
- chunk_appendf(trash, "*%s\n", crlfile_transaction.old_crlfile_entry->path);
- }
+ if (!ctx->old_crlfile_entry && crlfile_transaction.old_crlfile_entry) {
+ chunk_appendf(trash, "# transaction\n");
+ chunk_appendf(trash, "*%s\n", crlfile_transaction.old_crlfile_entry->path);
+ if (applet_putchk(appctx, trash) == -1)
+ goto yield;
+ ctx->old_crlfile_entry = crlfile_transaction.old_crlfile_entry;
}
/* First time in this io_handler. */