maskit opened a new pull request, #12914: URL: https://github.com/apache/trafficserver/pull/12914
This PR is based on https://github.com/apache/trafficserver/pull/12790, and most work was done by @jasmine-nahrain. Please look at the PR for the overall description. I made additional changes to eliminate the heap allocations that were introduced on the PR. Additional changes: - Removed the container that holds copies of items in ClientHello - Made `TSVConnClientHelloGet` returns a object by value instead of a pointer - Removed `TSClientHelloDestroy` since the returned value is no longer a pointer - Changed the type of `TSExtensionTypeList` to a custom class that supports range-based for-loop (this eliminates the use of `std::vector`). Changes for the plugin code are trivial: - Check the availability of `TSClientHello` by `is_available()` instead of comparing with `nullptr` - Change `->` to `.` since `TSClientHello` is no longer a pointer - Remove the call for `TSClientHelloDestroy` Now all getters access the original data in a library specific data structure. Plugin developers can copy things by themselves if they need to. At a minimum, it's not necessary for this (ja4) plugin. The internal implementation is getting a little messy. I think `TLSSNISupport::ClientHello` should be decoupled from `TLSSNISupport`, but the change wouldn't affect the plugin API, so we can do it later. -- 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]
