jpeach commented on code in PR #9975:
URL: https://github.com/apache/trafficserver/pull/9975#discussion_r1259016511
##########
plugins/certifier/certifier.cc:
##########
@@ -529,28 +531,33 @@ cert_retriever(TSCont contp, TSEvent event, void *edata)
SSL_CTX *ref_ctx = nullptr;
if (servername == nullptr) {
- TSError("[%s] cert_retriever(): No SNI available.", PLUGIN_NAME);
+ TSError("[%s] %s: no SNI available", __func__, PLUGIN_NAME);
return TS_ERROR;
}
+
bool wontdo = false;
ref_ctx = ssl_list->lookup_and_create(servername, edata, wontdo);
+
if (wontdo) {
- TSDebug(PLUGIN_NAME, "cert_retriever(): Won't generate cert for %s",
servername);
+ TSDebug(PLUGIN_NAME, "%s: won't generate cert for %s", __func__,
servername);
TSVConnReenable(ssl_vc);
- } else if (nullptr == ref_ctx) {
- // If no existing context, schedule TASK thread to generate
- TSDebug(PLUGIN_NAME, "cert_retriever(): schedule thread to
generate/retrieve cert for %s", servername);
- TSCont schedule_cont = TSContCreate(shadow_cert_generator,
TSMutexCreate());
- TSContDataSet(schedule_cont, (void *)servername);
- TSContScheduleOnPool(schedule_cont, 0, TS_THREAD_POOL_TASK);
- } else {
- // Use existing context
- TSDebug(PLUGIN_NAME, "cert_retriever(): Reuse existing cert and context
for %s", servername);
+ return TS_SUCCESS;
+ }
+
+ if (ref_ctx) {
+ // Use existing context.
+ TSDebug(PLUGIN_NAME, "%s: reusing existing cert and context for %s",
__func__, servername);
SSL_set_SSL_CTX(ssl, ref_ctx);
TSVConnReenable(ssl_vc);
+ return TS_SUCCESS;
}
- /// For scheduled connections, the scheduled continuation will handle the
reenabling
+ // If no existing context, schedule TASK thread to generate.
+ TSDebug(PLUGIN_NAME, "%s: scheduling thread to generate/retrieve cert for
%s", __func__, servername);
+ TSCont schedule_cont = TSContCreate(shadow_cert_generator, TSMutexCreate());
Review Comment:
This didn't change any code. Why clean up continuations on exit? Just for
leak detection?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]