a6dfd08812
Motivation: Instrumenting the NIO selector implementation requires special permissions. Yet, the code for performing this instrumentation is executed in a manner that would require all code leading up to the initialization to have the requisite permissions. In a restrictive environment (e.g., under a security policy that only grants the requisite permissions the Netty transport jar but not to application code triggering the Netty initialization), then instrumeting the selector will not succeed even if the security policy would otherwise permit it. Modifications: This commit marks the necessary blocks as privileged. This enables access to the necessary resources for instrumenting the selector. The idea is that we are saying the Netty code is trusted, and as long as the Netty code has been granted the necessary permissions, then we will allow the caller access to these resources even though the caller itself might not have the requisite permissions. Result: The selector can be instrumented in a restrictive security environment. |
||
---|---|---|
.. | ||
src | ||
pom.xml |