--- old/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSContext.java 2016-10-07 00:47:00.302814800 +0800
+++ new/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSContext.java 2016-10-07 00:46:59.380891800 +0800
@@ -26,8 +26,6 @@
package com.sun.security.jgss;
import org.ietf.jgss.*;
-import sun.security.jgss.GSSContextImpl;
-import sun.security.krb5.internal.AuthorizationData;
/**
* The extended GSSContext interface for supporting additional
@@ -36,40 +34,6 @@
*/
public interface ExtendedGSSContext extends GSSContext {
- // The impl is almost identical to GSSContextImpl with only 2 differences:
- // 1. It implements the extended interface
- // 2. It translates result to data types here in inquireSecContext
- static class ExtendedGSSContextImpl extends GSSContextImpl
- implements ExtendedGSSContext {
-
- public ExtendedGSSContextImpl(GSSContextImpl old) {
- super(old);
- }
-
- @Override
- public Object inquireSecContext(InquireType type) throws GSSException {
- SecurityManager security = System.getSecurityManager();
- if (security != null) {
- security.checkPermission(
- new InquireSecContextPermission(type.toString()));
- }
- Object output = super.inquireSecContext(type.name());
- if (output != null) {
- if (type == InquireType.KRB5_GET_AUTHZ_DATA) {
- AuthorizationData ad = (AuthorizationData) output;
- AuthorizationDataEntry[] authzData =
- new AuthorizationDataEntry[ad.count()];
- for (int i = 0; i < ad.count(); i++) {
- authzData[i] = new AuthorizationDataEntry(
- ad.item(i).adType, ad.item(i).adData);
- }
- output = authzData;
- }
- }
- return output;
- }
- }
-
/**
* Return the mechanism-specific attribute associated with {@code type}.
* <p>
--- old/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSCredential.java 2016-10-07 00:47:10.553348500 +0800
+++ new/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSCredential.java 2016-10-07 00:47:08.975142800 +0800
@@ -26,7 +26,6 @@
package com.sun.security.jgss;
import org.ietf.jgss.*;
-import sun.security.jgss.GSSCredentialImpl;
/**
* The extended GSSCredential interface for supporting additional
@@ -35,14 +34,6 @@
*/
public interface ExtendedGSSCredential extends GSSCredential {
- static class ExtendedGSSCredentialImpl extends GSSCredentialImpl
- implements ExtendedGSSCredential {
-
- public ExtendedGSSCredentialImpl(GSSCredentialImpl old) {
- super(old);
- }
- }
-
/**
* Impersonates a principal. In Kerberos, this can be implemented
* using the Microsoft S4U2self extension.
--- old/src/jdk.security.jgss/share/classes/com/sun/security/jgss/Extender.java 2016-10-07 00:47:17.928737100 +0800
+++ new/src/jdk.security.jgss/share/classes/com/sun/security/jgss/Extender.java 2016-10-07 00:47:16.053635800 +0800
@@ -39,18 +39,18 @@
}
public GSSCredential wrap(GSSCredential cred) {
- if (cred instanceof ExtendedGSSCredential.ExtendedGSSCredentialImpl) {
+ if (cred instanceof ExtendedGSSCredentialImpl) {
return cred;
} else {
- return new ExtendedGSSCredential.ExtendedGSSCredentialImpl((GSSCredentialImpl)cred);
+ return new ExtendedGSSCredentialImpl((GSSCredentialImpl)cred);
}
}
public GSSContext wrap(GSSContext ctxt) {
- if (ctxt instanceof ExtendedGSSContext.ExtendedGSSContextImpl) {
+ if (ctxt instanceof ExtendedGSSContextImpl) {
return ctxt;
} else {
- return new ExtendedGSSContext.ExtendedGSSContextImpl((GSSContextImpl)ctxt);
+ return new ExtendedGSSContextImpl((GSSContextImpl)ctxt);
}
}
}
--- /dev/null 2016-10-07 00:47:25.000000000 +0800
+++ new/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSContextImpl.java 2016-10-07 00:47:23.810033400 +0800
@@ -0,0 +1,64 @@
+/*
+ * Copyright (c) 2016, 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 com.sun.security.jgss;
+
+import org.ietf.jgss.*;
+import sun.security.jgss.GSSContextImpl;
+import sun.security.krb5.internal.AuthorizationData;
+
+// The impl is almost identical to GSSContextImpl with only 2 differences:
+// 1. It implements the extended interface
+// 2. It translates result to data types here in inquireSecContext
+class ExtendedGSSContextImpl extends GSSContextImpl
+ implements ExtendedGSSContext {
+
+ public ExtendedGSSContextImpl(GSSContextImpl old) {
+ super(old);
+ }
+
+ @Override
+ public Object inquireSecContext(InquireType type) throws GSSException {
+ SecurityManager security = System.getSecurityManager();
+ if (security != null) {
+ security.checkPermission(
+ new InquireSecContextPermission(type.toString()));
+ }
+ Object output = super.inquireSecContext(type.name());
+ if (output != null) {
+ if (type == InquireType.KRB5_GET_AUTHZ_DATA) {
+ AuthorizationData ad = (AuthorizationData) output;
+ AuthorizationDataEntry[] authzData =
+ new AuthorizationDataEntry[ad.count()];
+ for (int i = 0; i < ad.count(); i++) {
+ authzData[i] = new AuthorizationDataEntry(
+ ad.item(i).adType, ad.item(i).adData);
+ }
+ output = authzData;
+ }
+ }
+ return output;
+ }
+}
--- /dev/null 2016-10-07 00:47:32.000000000 +0800
+++ new/src/jdk.security.jgss/share/classes/com/sun/security/jgss/ExtendedGSSCredentialImpl.java 2016-10-07 00:47:29.485216600 +0800
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2016, 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 com.sun.security.jgss;
+
+import sun.security.jgss.GSSCredentialImpl;
+
+class ExtendedGSSCredentialImpl extends GSSCredentialImpl
+ implements ExtendedGSSCredential {
+
+ public ExtendedGSSCredentialImpl(GSSCredentialImpl old) {
+ super(old);
+ }
+}