Ah, I now see that this is more of our code involved than I think.
What seems to be happening is that we register a destructor using GCC's
__attribute__(destructor) at default priority that finalizes everything
including calling shibresolver::term.
One potential problem here is that we're a direct consumer of opensaml
and so that opensaml is going to be initialized (and thus initialize
xmltooling) both via us and via shibresolver. I wonder if that's the
issue here.
--Sam
|