disable lazy init if compiler supports GCC constructor attribute
commit2d265582a27dd358052d2644c9d736450f63b9c9
authorrofl0r <rofl0r@users.noreply.github.com>
Mon, 20 Mar 2023 20:07:21 +0000 (20 20:07 +0000)
committerrofl0r <rofl0r@users.noreply.github.com>
Mon, 20 Mar 2023 20:15:00 +0000 (20 20:15 +0000)
treeda4b0b734477257e6b7041e5fd0c1e65df327946
parent66f99b19dd045510a3ee3820bda0f01431d1fcb3
disable lazy init if compiler supports GCC constructor attribute

before we started to use the gcc constructor attribute to load our
initialization code, each function hook used to check whether the
initialization was already done, and if not, do it at that point.

this workaround is quite ugly, and creates a circular reference
if the startup code calls any of the hooked functions.

now we only do the lazy init if the compiler used is not GCC
compatible.
src/libproxychains.c