8316970: Add internal annotation to mark restricted methods

Reviewed-by: jvernee, iris, alanb
This commit is contained in:
Maurizio Cimadamore 2023-09-28 09:49:57 +00:00
parent 77fac0f4c6
commit 798125152b
7 changed files with 221 additions and 0 deletions

View file

@ -30,6 +30,7 @@ import jdk.internal.access.SharedSecrets;
import jdk.internal.foreign.MemorySessionImpl;
import jdk.internal.foreign.Utils;
import jdk.internal.javac.PreviewFeature;
import jdk.internal.javac.Restricted;
import jdk.internal.loader.BuiltinClassLoader;
import jdk.internal.loader.NativeLibrary;
import jdk.internal.loader.RawNativeLibraries;
@ -232,6 +233,7 @@ public interface SymbolLookup {
* @throws IllegalCallerException If the caller is in a module that does not have native access enabled.
*/
@CallerSensitive
@Restricted
static SymbolLookup libraryLookup(String name, Arena arena) {
Reflection.ensureNativeAccess(Reflection.getCallerClass(), SymbolLookup.class, "libraryLookup");
if (Utils.containsNullChars(name)) {
@ -264,6 +266,7 @@ public interface SymbolLookup {
* @throws IllegalCallerException If the caller is in a module that does not have native access enabled.
*/
@CallerSensitive
@Restricted
static SymbolLookup libraryLookup(Path path, Arena arena) {
Reflection.ensureNativeAccess(Reflection.getCallerClass(), SymbolLookup.class, "libraryLookup");
return libraryLookup(path, RawNativeLibraries::load, arena);