On Mon, Nov 02, 2026 at 10:38:28AM +0000, Christopher Staite wrote: > Subject: [PATCH] BUG/MINOR: ssl/ckch: free the new instance when > ckch_inst_rebuild() fails > ckch_inst_rebuild() creates the new ckch_inst of a "commit ssl cert" with > its sni_ctx and SSL_CTX, then prepares the SSL_CTX of the server or of > the bind line. When this preparation fails it returns an error to > ckch_store_rebuild_instances() which only returns -1, so the new instance, > which is not linked anywhere yet, is leaked with its SSL_CTXs, and with > everything they reference (the certificate, the chain, the key, the CA > file links). > > The impact is a memory leak for each failed commit, which requires an > admin to commit a certificate that doesn't fit its bind or server lines. > > Free the instance with ckch_inst_free() and reset the pointer on these > two error paths. The instance is not in any tree nor list at this point, > which ckch_inst_free() handles. The first error path, after > ckch_inst_new_load_store() or ckch_inst_new_load_srv_store(), is already > fine since these functions never leave an instance behind on failure. > > This should be backported to all stable branches, the function exists > since 2.5. >
Thanks, merged! -- William Lallemand

