You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jun 16, 2021. It is now read-only.
We store one single global function table for ALL Tor versions, but really we want a new function table for each individual Tor version.
The problem is inside of shadowtorpreload_init. This function gets called once for every different Tor version, but every time that happens it wipes out the old function table and the old library handle that is stored in per thread state. This problem will affect any thread that is configured to run nodes with different Tor versions.
Shadow will call the new hook functions if they are defined in the
plug-in library. This allows the plug-in to any necessary
adjustments to running more smoothly in Shadow.
The symbols Shadow searches for and will call are:
__shadow_plugin_load__
__shadow_plugin_unload__
__shadow_plugin_enter__
__shadow_plugin_exit__
Shadow will pass a unique void* pointer in these calls. The GLib
GModule* of the plug-in library is currently passed.
refs shadow/shadow-plugin-tor#22
We store one single global function table for ALL Tor versions, but really we want a new function table for each individual Tor version.
The problem is inside of
shadowtorpreload_init
. This function gets called once for every different Tor version, but every time that happens it wipes out the old function table and the old library handle that is stored in per thread state. This problem will affect any thread that is configured to run nodes with different Tor versions.Thanks for finding this @swojo!
The text was updated successfully, but these errors were encountered: