Occasionally, I need to modify an already set value, which needs de-allocation. This right now seems to require a call to ldap_pvt_thread_pool_getkey() to get the old value first, followed by a call to ldap_pvt_thread_pool_setkey(). This requires running twice through the list of keys (not much a hassle, but not a clean interface either). I see two options:
1) let ldap_pvt_thread_pool_setkey() call the free handler, if defined, passing the old value if not null
2) change the API of ldap_pvt_thread_pool_setkey() so that it returns the old value, if passed a non-null pointer to hold it.
Option 2 is more intrusive (requires multiple changes to existing code) but possibly more versatile.
Comments?
p.
Ing. Pierangelo Masarati OpenLDAP Core Team
SysNet s.r.l. via Dossi, 8 - 27100 Pavia - ITALIA http://www.sys-net.it --------------------------------------- Office: +39 02 23998309 Mobile: +39 333 4963172 Email: pierangelo.masarati@sys-net.it ---------------------------------------