< prev index next >

src/java.base/share/native/libjava/Class.c

Print this page
rev 56072 : 8230043: Lazily load libverify
Reviewed-by: hseigel, erikj, alanb

*** 33,48 **** #include <stdlib.h> #include "jni.h" #include "jni_util.h" #include "jvm.h" #include "java_lang_Class.h" - /* defined in libverify.so/verify.dll (src file common/check_format.c) */ - extern jboolean VerifyClassname(char *utf_name, jboolean arrayAllowed); - extern jboolean VerifyFixClassname(char *utf_name); - #define OBJ "Ljava/lang/Object;" #define CLS "Ljava/lang/Class;" #define CPL "Ljdk/internal/reflect/ConstantPool;" #define STR "Ljava/lang/String;" #define FLD "Ljava/lang/reflect/Field;" --- 33,45 ---- #include <stdlib.h> #include "jni.h" #include "jni_util.h" #include "jvm.h" + #include "check_classname.h" #include "java_lang_Class.h" #define OBJ "Ljava/lang/Object;" #define CLS "Ljava/lang/Class;" #define CPL "Ljdk/internal/reflect/ConstantPool;" #define STR "Ljava/lang/String;" #define FLD "Ljava/lang/reflect/Field;"
*** 120,137 **** } else { clname = buf; } (*env)->GetStringUTFRegion(env, classname, 0, unicode_len, clname); ! if (VerifyFixClassname(clname) == JNI_TRUE) { /* slashes present in clname, use name b4 translation for exception */ (*env)->GetStringUTFRegion(env, classname, 0, unicode_len, clname); JNU_ThrowClassNotFoundException(env, clname); goto done; } ! if (!VerifyClassname(clname, JNI_TRUE)) { /* expects slashed name */ JNU_ThrowClassNotFoundException(env, clname); goto done; } cls = JVM_FindClassFromCaller(env, clname, initialize, loader, caller); --- 117,134 ---- } else { clname = buf; } (*env)->GetStringUTFRegion(env, classname, 0, unicode_len, clname); ! if (verifyFixClassname(clname) == JNI_TRUE) { /* slashes present in clname, use name b4 translation for exception */ (*env)->GetStringUTFRegion(env, classname, 0, unicode_len, clname); JNU_ThrowClassNotFoundException(env, clname); goto done; } ! if (!verifyClassname(clname, JNI_TRUE)) { /* expects slashed name */ JNU_ThrowClassNotFoundException(env, clname); goto done; } cls = JVM_FindClassFromCaller(env, clname, initialize, loader, caller);
< prev index next >