Fix TSSslClientCertUpdate updates - #13576
Conversation
Review notesThe Provenance worth adding to the commit message: this broke in 7dbb6cb ("Add hook for loading certificate and key data from plugin", #6609, 2021-06-25), which changed The test changes, however, still don't assert anything. 1. Blocker —
|
ed50af0 to
0dea1d8
Compare
|
Thanks Claude: all points were valid and are addressed in 0dea1d8. The test now uses Streams.All and covers multiple CA buckets. The update retains the SSL configuration safely, updates every matching context, preserves existing contexts on rebuild failure, and documents the resolved certificate-path key. |
TSSslClientCertUpdate has been unable to find normally configured outbound client contexts since 7dbb6cb changed the lookup key from certificate-and-key paths to the resolved certificate path. The existing AuTest hid the regression because its lowercase Streams.all assignments did not register assertions. This patch updates every matching CA bucket using the stored certificate path, preserves working contexts when a replacement cannot be built, and releases the SSL configuration after use. It also corrects the API documentation and strengthens the AuTest to verify both CA buckets and expected certificate subjects. Fixes: apache#13575
0dea1d8 to
48475d2
Compare
TSSslClientCertUpdate cannot find normally configured outbound client
contexts because its lookup key differs from the key used by the context
map. The existing AuTest masked the failure with permissive gold-file
expressions.
This patch uses the stored certificate-path key for updates and makes
the AuTest explicitly require both successful update messages and the
expected client certificate subjects.
Fixes: #13575