changeset 1809:f880cc950ce8

Merge
author asaha
date Mon, 09 Apr 2018 11:35:50 -0700
parents 4fb42ec1875c 875a75c440cd
children 73c9956642a2
files .hgtags
diffstat 6 files changed, 144 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/.hgtags	Mon Jan 22 11:10:34 2018 -0800
+++ b/.hgtags	Mon Apr 09 11:35:50 2018 -0700
@@ -805,6 +805,11 @@
 2b4802994bf5a4a634258c9ff06d3da474130f8b jdk8u152-b14
 f89071fbde60b327d6940a34fcdeed96b6440dd2 jdk8u152-b15
 674aecf3d87ae774e2026a1cb2a60eaa651bc7c2 jdk8u152-b16
+e05b7f7238ddad4c2fe428da73c1d234cb90284f jdk8u152-b31
+c4e0935e4570dd821b19ede0e06d27378b93caf4 jdk8u152-b32
+a6c0eb254c54d050bd04dcd308a2993e517bb0de jdk8u152-b33
+abcbb543abb7924fba059ab8eea256589007b79b jdk8u152-b34
+3db2418690f0d45d9934121a748948dc659250d5 jdk8u152-b35
 2dbdceff6ade82aa9942cdea6b62d5655d65183c jdk8u151-b00
 4449c73dbfdf2e32889e3ce769bd4160daa48b71 jdk8u151-b01
 ffa099d5b88ff14cea677d2afa4229354e9404d0 jdk8u151-b02
@@ -859,8 +864,29 @@
 2c68567bdcf2bb465d38c9783c0886df98fc496e jdk8u162-b10
 6029daad75bf459b330fc79ebf208dc35dc682d5 jdk8u162-b11
 ace99846c1fd92e8bec4cbe912ec3fc8a74fbf0c jdk8u162-b12
+acbd335f56f1a09fd8f80c2663367f90cdb00c46 jdk8u162-b31
+bb767c7211eace9df83649ba937d2ce507223e4d jdk8u171-b00
+9895f9c0845cf5f8dd7be62bf2a1a73a3868f799 jdk8u171-b01
+28be709707f8b275aeaa2ed41338678620e3ef5f jdk8u171-b02
+d534205fffcf950a11ed37103f5a0c23fe14ee49 jdk8u171-b03
+0baf88a7b3880bbefdbb221e67a6ce96b0552033 jdk8u171-b04
+0c6a772d60b94de90907f2f6d4683ceac8aba54b jdk8u171-b05
+3bca003f024c7bb6774499ff2ede57d300c18c79 jdk8u171-b06
+b90a8fc589afa4ac20a4d1e4f819058a5730af9f jdk8u171-b07
+f7f59d87e97dd1e3a7ff4ebc5ed843b2ed5f2361 jdk8u171-b08
+b3563151fe42c6b997279fc24f8329c4c03add96 jdk8u171-b09
+6a9efc03746028c30c3133d57030a388e752dd99 jdk8u171-b10
+fd5e2fc0b714d3f18c4c02e67ac093ee0cc2341a jdk8u171-b11
 72dbc8d63308f5b04b9fd3e06d139d673f992212 jdk8u172-b00
 fbb7c1e76e59aabb85a70c81301f47b980f83225 jdk8u172-b01
 56874ff37e89559692d1314d48cbab574544b677 jdk8u172-b02
 65a52284d8a3a5b1e6de1e8c86eec6683cef346e jdk8u172-b03
+c3942af7d2fa3c13cf43c49399d36843dd21731f jdk8u172-b04
+13c1af9669c26044981325eb1e2d239e74346b35 jdk8u172-b05
+ad4a16f06c355b7e9f13fa2dfab7d22ac9726b3d jdk8u172-b06
+bd2328706d14d6d17fac585645c886f94591bb28 jdk8u172-b07
+bf262dc4ed05a905b3292bb5f2e765a9c930681c jdk8u172-b08
+e9aaa28b626de73ffcef047992a1658f11262984 jdk8u172-b09
+f39115b612ab6641f4d1f0bea5b70eed8bd34b19 jdk8u172-b10
+6841ddd69c3033b2f6c2cbd3a3410b11e8935ec6 jdk8u172-b11
 a5563d019ac440b19e791afcd298f3322b311291 jdk8u182-b00
--- a/make/BuildCorba.gmk	Mon Jan 22 11:10:34 2018 -0800
+++ b/make/BuildCorba.gmk	Mon Apr 09 11:35:50 2018 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -174,7 +174,8 @@
         SETUP := GENERATE_NEWBYTECODE, \
         SRC := $(CORBA_TOPDIR)/src/share/classes $(CORBA_OUTPUTDIR)/gensrc $(CORBA_OUTPUTDIR)/logwrappers, \
         EXCLUDES := com/sun/corba/se/PortableActivationIDL \
-            com/sun/tools/corba/se/logutil, \
+            com/sun/tools/corba/se/logutil \
+            sun/misc, \
         EXCLUDE_FILES := com/sun/corba/se/impl/presentation/rmi/JNDIStateFactoryImpl.java \
             com/sun/corba/se/spi/presentation/rmi/StubWrapper.java \
             com/sun/org/omg/CORBA/IDLTypeOperations.java \
--- a/src/share/classes/com/sun/corba/se/impl/ior/StubIORImpl.java	Mon Jan 22 11:10:34 2018 -0800
+++ b/src/share/classes/com/sun/corba/se/impl/ior/StubIORImpl.java	Mon Apr 09 11:35:50 2018 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -31,10 +31,9 @@
 
 package com.sun.corba.se.impl.ior;
 
-import java.io.ObjectInputStream ;
-import java.io.ObjectOutputStream ;
-import java.io.IOException ;
-import java.io.StringWriter ;
+import java.io.IOException;
+import java.io.ObjectOutputStream;
+import sun.corba.SharedSecrets;
 
 import org.omg.CORBA.ORB ;
 
@@ -125,14 +124,20 @@
     {
         // read the IOR from the ObjectInputStream
         int typeLength = stream.readInt();
+        SharedSecrets.getJavaOISAccess().checkArray(stream, byte[].class, typeLength);
         typeData = new byte[typeLength];
         stream.readFully(typeData);
+
         int numProfiles = stream.readInt();
+        SharedSecrets.getJavaOISAccess().checkArray(stream, int[].class, numProfiles);
+        SharedSecrets.getJavaOISAccess().checkArray(stream, byte[].class, numProfiles);
         profileTags = new int[numProfiles];
         profileData = new byte[numProfiles][];
         for (int i = 0; i < numProfiles; i++) {
             profileTags[i] = stream.readInt();
-            profileData[i] = new byte[stream.readInt()];
+            int dataSize = stream.readInt();
+            SharedSecrets.getJavaOISAccess().checkArray(stream, byte[].class, dataSize);
+            profileData[i] = new byte[dataSize];
             stream.readFully(profileData[i]);
         }
     }
--- a/src/share/classes/sun/corba/SharedSecrets.java	Mon Jan 22 11:10:34 2018 -0800
+++ b/src/share/classes/sun/corba/SharedSecrets.java	Mon Apr 09 11:35:50 2018 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2018, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -26,9 +26,10 @@
 package sun.corba;
 
 import com.sun.corba.se.impl.io.ValueUtility;
+import sun.misc.JavaOISAccess;
 import sun.misc.Unsafe;
 
-import java.security.AccessController;
+import java.lang.reflect.Method;
 
 /** A repository of "shared secrets", which are a mechanism for
     calling implementation-private methods in another package without
@@ -43,6 +44,31 @@
 public class SharedSecrets {
     private static final Unsafe unsafe = Unsafe.getUnsafe();
     private static JavaCorbaAccess javaCorbaAccess;
+    private static final Method getJavaOISAccessMethod;
+    private static JavaOISAccess javaOISAccess;
+
+    // Initialize getJavaOISAccessMethod using reflection.
+    static {
+        try {
+            Class sharedSecret = Class.forName("sun.misc.SharedSecrets");
+            getJavaOISAccessMethod =
+                    sharedSecret.getMethod("getJavaOISAccess");
+        } catch (Exception e) {
+            throw new ExceptionInInitializerError(e);
+        }
+    }
+
+    public static JavaOISAccess getJavaOISAccess() {
+        if (javaOISAccess == null) {
+            try {
+                javaOISAccess =
+                        (JavaOISAccess) getJavaOISAccessMethod.invoke(null);
+            } catch (Exception e) {
+                throw new ExceptionInInitializerError(e);
+            }
+        }
+        return javaOISAccess;
+    }
 
     public static JavaCorbaAccess getJavaCorbaAccess() {
         if (javaCorbaAccess == null) {
@@ -56,5 +82,4 @@
     public static void setJavaCorbaAccess(JavaCorbaAccess access) {
         javaCorbaAccess = access;
     }
-
 }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/share/classes/sun/misc/JavaOISAccess.java	Mon Apr 09 11:35:50 2018 -0700
@@ -0,0 +1,40 @@
+/*
+ * Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package sun.misc;
+
+import java.io.InvalidClassException;
+import java.io.ObjectInputStream;
+
+/*
+ * Skeleton interface added so com.sun.corba.se.impl.ior.StubIORImpl will compile.
+ * JDK implementation will be used at runtime.
+ */
+public interface JavaOISAccess {
+    void setObjectInputFilter(ObjectInputStream stream, ObjectInputFilter filter);
+    ObjectInputFilter getObjectInputFilter(ObjectInputStream stream);
+    void checkArray(ObjectInputStream stream, Class<?> arrayType, int arrayLength)
+        throws InvalidClassException;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/share/classes/sun/misc/ObjectInputFilter.java	Mon Apr 09 11:35:50 2018 -0700
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.  Oracle designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Oracle in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+package sun.misc;
+
+import java.io.InvalidClassException;
+import java.io.ObjectInputStream;
+
+/*
+ * Skeleton interface added so com.sun.corba.se.impl.ior.StubIORImpl will compile.
+ * JDK implementation will be used at runtime.
+ */
+public interface ObjectInputFilter {
+}