Actions
Bug #4215
closedpkcs11_tpm botches shared library initialization, murders its friends
Start date:
2013-10-16
Due date:
% Done:
100%
Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:
Description
pkcs11_tpm calls _init() in C_GetFunctionList(). This causes us to call all of our initializers twice, once on library load, once again later.
This is absolutely and devastatingly fatal if the runtime provides _init handlers.
Presumably, they meant to call api_init() and this is the result of poor renaming, but I can't work out why they would even do that, given we know it has been called when the library loaded, and that api_fini() will only be called on unload. Thus, I propose to fix it by just removing the call, rather than by adjusting it to a call to api_init() which will always re-open the system log (which I'll file a separate bug for) and immediately return.
This is the root cause of #4204.
Updated by Rich Lowe over 8 years ago
- Status changed from In Progress to Resolved
- % Done changed from 80 to 100
Resolved in 9048537
Actions