Fix for https://bugs.launchpad.net/moonshot/+bug/1705714 (Infinite loop in tids exit... dbreslau/1705714_infinite_loop_at_exit
authorDan Breslau <dbreslau@painless-security.com>
Fri, 21 Jul 2017 13:59:04 +0000 (09:59 -0400)
committerDan Breslau <dbreslau@painless-security.com>
Fri, 21 Jul 2017 13:59:04 +0000 (09:59 -0400)
commit545815969c4e07de7233f93f4f46e7c9d391885c
tree9f7da8fc65f6e96e37adf89c4363c907aa8be785
parentfc78c30acf20d98c3b37dd953aae34d353406925
Fix for https://bugs.launchpad.net/moonshot/+bug/1705714 (Infinite loop in tids exit handlers)

Refactored the C++ static object whose destructor was unloading the libraries.
The shibresolver library is now unloaded by a "smaller" static object that is
created after shibresolver is loaded. Creating that object late means that it
will be destroyed earlier, before the static objects in the log4shib library
are destroyed.
mech_eap/eap_mech.c
mech_eap/util_attr.cpp
mech_eap/util_shib.cpp