8162340: Better class stream parsing

Check platform and boot loader for java/* packages

Reviewed-by: lfoltan, coleenp, dholmes
This commit is contained in:
Karen Kinnear 2016-07-27 08:31:48 -04:00
parent 64f4953141
commit 9c928767ba
10 changed files with 99 additions and 107 deletions

View file

@ -470,6 +470,12 @@ class InstanceKlass: public Klass {
static bool find_inner_classes_attr(instanceKlassHandle k,
int* ooff, int* noff, TRAPS);
private:
// Check prohibited package ("java/" only loadable by boot or platform loaders)
static void check_prohibited_package(Symbol* class_name,
Handle class_loader,
TRAPS);
public:
// tell if two classes have the same enclosing class (at package level)
bool is_same_package_member(const Klass* class2, TRAPS) const {
return is_same_package_member_impl(this, class2, THREAD);