8148854: Class names "SomeClass" and "LSomeClass;" treated by JVM as an equivalent

Added default format checking of class names loaded by the app class loader

Reviewed-by: coleenp, lfoltan
This commit is contained in:
Rachel Protacio 2016-08-25 09:23:45 -04:00
parent 3ba0af5c09
commit c6c1bee762
6 changed files with 200 additions and 6 deletions

View file

@ -446,7 +446,7 @@ static bool can_relax_access_check_for(const Klass* accessor,
(accessor_ik->major_version() < Verifier::STRICTER_ACCESS_CTRL_CHECK_VERSION &&
accessee_ik->major_version() < Verifier::STRICTER_ACCESS_CTRL_CHECK_VERSION)) {
return classloader_only &&
Verifier::relax_verify_for(accessor_ik->class_loader()) &&
Verifier::relax_access_for(accessor_ik->class_loader()) &&
accessor_ik->protection_domain() == accessee_ik->protection_domain() &&
accessor_ik->class_loader() == accessee_ik->class_loader();
}