Talked with Zeyuan, he clarified that an example call would be something like:
const char *ctx[666]; int n_actual_ctx; rc = TSSslClientContextsGet(666, ctx, &n_actual_ctx); I don't know enough about SSL to know when the pointers in ctx[] would become dangling. On Wed, May 1, 2019 at 2:55 PM Zeyuan Yu <zeyu...@gmail.com> wrote: > Alan and Walt pointed out the API needs to be C. Here are the new > prototypes: > > TSReturnCode TSSslClientContextsGet(int n, const char **result, int > *actual) > ; > TSSslContext TSSslClientContextFind(const char *name); > > > [image: work-eat-sleep--400090.jpg] > > *Zeyuan Yu* > Software Development Engineer, Verizon Media Group > > work: 217.369.5086 > > personal: 217.898.1085 > > > On Wed, May 1, 2019 at 2:07 PM Zeyuan Yu <zeyu...@gmail.com> wrote: > > > > > vector<string> TSSslClientContextsGet(); > > TSSslContext TSSslClientContextFind(const string name); > > > > ATS has APIs for server context retrieval (TSSslContextFindByName(), > > TSSslContextFindByAddr()). It would be useful to expose client context > via > > APIs too. > > > > > > I would like to propose new APIs for this purpose. Given client context > > are stored in unordered_map, TSSslClientContextsGet() will return all > keys > > (essentially the path to CA/cert files) in a vector; > > TSSslClientContextFid() will return the context corresponding to the > input > > string. > > > > > > > > > > [image: work-eat-sleep--400090.jpg] > > > > *Zeyuan Yu* > > Software Development Engineer, Verizon Media Group > > > > work: 217.369.5086 > > > > personal: 217.898.1085 > > >