Hi,
with Samba-4.2.x libwbclient has a new interface version because new
calls were added which have an opaque context as an argument to allow
threaded applications to send multiple requests to winbind in parallel.
This patch adds the new interface but so far does not implement any calls.
We have a similar issue in SSSD, all applications either single all
multi-threaded use a single file-descriptor to talk to the SSSD
responders and the requests are serialized. Originally the only clients
were the NSS and PAM client code where there was no way around it
because the PAM and NSS interface do not provide a way to pass a
thread-local context.
Nowadays there are applications like 389ds running on a FreeIPA server
which want to get data exclusively from SSSD which can use more enhanced
interface. So I think it would make sense to consider an enhancement to
the low-level client communication code similar to the changes done in
Samba so that threads can get an individual file-descriptors to talk to
the responders. When this is done the new context aware libwbclient
calls can be implemented (as long as it is possible).
bye,
Sumit