8159544: Remove deprecated classes in com.sun.security.auth.**
Reviewed-by: jlahoda, vinnie, weijun
--- a/jdk/make/mapfiles/libjaas/mapfile-vers Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/make/mapfiles/libjaas/mapfile-vers Mon Aug 21 14:05:10 2017 +0000
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2005, 2017, 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
@@ -27,7 +27,6 @@
SUNWprivate_1.1 {
global:
- Java_com_sun_security_auth_module_SolarisSystem_getSolarisInfo;
Java_com_sun_security_auth_module_UnixSystem_getUnixInfo;
local:
*;
--- a/jdk/src/java.base/share/classes/javax/security/auth/Policy.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/src/java.base/share/classes/javax/security/auth/Policy.java Mon Aug 21 14:05:10 2017 +0000
@@ -82,13 +82,13 @@
*
* <pre>
* grant CodeBase "foo.com", Signedby "foo",
- * Principal com.sun.security.auth.SolarisPrincipal "duke" {
+ * Principal com.sun.security.auth.UnixPrincipal "duke" {
* permission java.io.FilePermission "/home/duke", "read, write";
* };
* </pre>
*
* This <b><i>grant</i></b> entry specifies that code from "foo.com",
- * signed by "foo', and running as a {@code SolarisPrincipal} with the
+ * signed by "foo', and running as a {@code UnixPrincipal} with the
* name, duke, has one {@code Permission}. This {@code Permission}
* permits the executing code to read and write files in the directory,
* "/home/duke".
@@ -107,8 +107,8 @@
* for that {@code Subject} to be granted the specified Permissions.
*
* <pre>
- * grant Principal com.sun.security.auth.SolarisPrincipal "duke",
- * Principal com.sun.security.auth.SolarisNumericUserPrincipal "0" {
+ * grant Principal com.sun.security.auth.UnixPrincipal "duke",
+ * Principal com.sun.security.auth.UnixNumericUserPrincipal "0" {
* permission java.io.FilePermission "/home/duke", "read, write";
* permission java.net.SocketPermission "duke.com", "connect";
* };
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources.java Mon Aug 21 14:05:10 2017 +0000
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2017, 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
@@ -95,51 +95,6 @@
"Kerberos username [{0}]: "},
{"Kerberos.password.for.username.",
"Kerberos password for {0}: "},
-
- /*** EVERYTHING BELOW IS DEPRECATED ***/
-
- // com.sun.security.auth.PolicyFile
- {".error.parsing.", ": error parsing "},
- {"COLON", ": "},
- {".error.adding.Permission.", ": error adding Permission "},
- {"SPACE", " "},
- {"NEWLINE", "\n"},
- {".error.adding.Entry.", ": error adding Entry "},
- {"LPARAM", "("},
- {"RPARAM", ")"},
- {"attempt.to.add.a.Permission.to.a.readonly.PermissionCollection",
- "attempt to add a Permission to a readonly PermissionCollection"},
-
- // com.sun.security.auth.PolicyParser
- {"expected.keystore.type", "expected keystore type"},
- {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
- "can not specify Principal with a wildcard class without a wildcard name"},
- {"expected.codeBase.or.SignedBy", "expected codeBase or SignedBy"},
- {"only.Principal.based.grant.entries.permitted",
- "only Principal-based grant entries permitted"},
- {"expected.permission.entry", "expected permission entry"},
- {"number.", "number "},
- {"expected.expect.read.end.of.file.",
- "expected {0}, read end of file"},
- {"expected.read.end.of.file", "expected ';', read end of file"},
- {"line.", "line "},
- {".expected.", ": expected '"},
- {".found.", "', found '"},
- {"QUOTE", "'"},
-
- // SolarisPrincipals
- {"SolarisNumericGroupPrincipal.Primary.Group.",
- "SolarisNumericGroupPrincipal [Primary Group]: "},
- {"SolarisNumericGroupPrincipal.Supplementary.Group.",
- "SolarisNumericGroupPrincipal [Supplementary Group]: "},
- {"SolarisNumericUserPrincipal.",
- "SolarisNumericUserPrincipal: "},
- {"SolarisPrincipal.", "SolarisPrincipal: "},
- // provided.null.name is the NullPointerException message when a
- // developer incorrectly passes a null name to the constructor of
- // subclasses of java.security.Principal
- {"provided.null.name", "provided null name"}
-
};
/**
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_de.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_de.java Mon Aug 21 14:05:10 2017 +0000
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2017, 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
@@ -95,50 +95,6 @@
"Kerberos-Benutzername [{0}]: "},
{"Kerberos.password.for.username.",
"Kerberos-Kennwort f\u00FCr {0}: "},
-
- /*** EVERYTHING BELOW IS DEPRECATED ***/
-
- // com.sun.security.auth.PolicyFile
- {".error.parsing.", ": Parsefehler "},
- {"COLON", ": "},
- {".error.adding.Permission.", ": Fehler beim Hinzuf\u00FCgen der Berechtigung "},
- {"SPACE", " "},
- {".error.adding.Entry.", ": Fehler beim Hinzuf\u00FCgen des Eintrags "},
- {"LPARAM", "("},
- {"RPARAM", ")"},
- {"attempt.to.add.a.Permission.to.a.readonly.PermissionCollection",
- "Es wurde versucht, eine Berechtigung zu einer schreibgesch\u00FCtzten PermissionCollection hinzuzuf\u00FCgen"},
-
- // com.sun.security.auth.PolicyParser
- {"expected.keystore.type", "Keystore-Typ erwartet"},
- {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
- "Principal kann nicht mit einer Platzhalterklasse ohne Platzhalternamen angegeben werden"},
- {"expected.codeBase.or.SignedBy", "codeBase oder SignedBy erwartet"},
- {"only.Principal.based.grant.entries.permitted",
- "Nur Principal-basierte Berechtigungseintr\u00E4ge zul\u00E4ssig"},
- {"expected.permission.entry", "Berechtigungseintrag erwartet"},
- {"number.", "Nummer "},
- {"expected.expect.read.end.of.file.",
- "{0} erwartet, Dateiende gelesen"},
- {"expected.read.end.of.file", "\";\" erwartet, Dateiende gelesen"},
- {"line.", "Zeile "},
- {".expected.", ": erwartet: \""},
- {".found.", "\", gefunden: \""},
- {"QUOTE", "'"},
-
- // SolarisPrincipals
- {"SolarisNumericGroupPrincipal.Primary.Group.",
- "SolarisNumericGroupPrincipal [Prim\u00E4rgruppe]: "},
- {"SolarisNumericGroupPrincipal.Supplementary.Group.",
- "SolarisNumericGroupPrincipal [Zusatzgruppe]: "},
- {"SolarisNumericUserPrincipal.",
- "SolarisNumericUserPrincipal: "},
- {"SolarisPrincipal.", "SolarisPrincipal: "},
- // provided.null.name is the NullPointerException message when a
- // developer incorrectly passes a null name to the constructor of
- // subclasses of java.security.Principal
- {"provided.null.name", "Nullname angegeben"}
-
};
/**
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_es.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_es.java Mon Aug 21 14:05:10 2017 +0000
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2017, 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
@@ -95,50 +95,6 @@
"Nombre de usuario de Kerberos [{0}]: "},
{"Kerberos.password.for.username.",
"Contrase\u00F1a de Kerberos de {0}: "},
-
- /*** EVERYTHING BELOW IS DEPRECATED ***/
-
- // com.sun.security.auth.PolicyFile
- {".error.parsing.", ": error de an\u00E1lisis "},
- {"COLON", ": "},
- {".error.adding.Permission.", ": error al agregar el permiso "},
- {"SPACE", " "},
- {".error.adding.Entry.", ": error al agregar la entrada "},
- {"LPARAM", "("},
- {"RPARAM", ")"},
- {"attempt.to.add.a.Permission.to.a.readonly.PermissionCollection",
- "se ha intentado agregar un permiso a una recopilaci\u00F3n de permisos de s\u00F3lo lectura"},
-
- // com.sun.security.auth.PolicyParser
- {"expected.keystore.type", "se esperaba un tipo de almac\u00E9n de claves"},
- {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
- "no se puede especificar Principal con una clase de comod\u00EDn sin un nombre de comod\u00EDn"},
- {"expected.codeBase.or.SignedBy", "se esperaba codeBase o SignedBy"},
- {"only.Principal.based.grant.entries.permitted",
- "s\u00F3lo se permite otorgar entradas basadas en Principal"},
- {"expected.permission.entry", "se esperaba un permiso de entrada"},
- {"number.", "n\u00FAmero "},
- {"expected.expect.read.end.of.file.",
- "se esperaba [{0}], se ha le\u00EDdo final de archivo"},
- {"expected.read.end.of.file", "se esperaba ';', se ha le\u00EDdo el final de archivo"},
- {"line.", "l\u00EDnea "},
- {".expected.", ": se esperaba '"},
- {".found.", "', se ha encontrado '"},
- {"QUOTE", "'"},
-
- // SolarisPrincipals
- {"SolarisNumericGroupPrincipal.Primary.Group.",
- "SolarisNumericGroupPrincipal [Grupo Principal]: "},
- {"SolarisNumericGroupPrincipal.Supplementary.Group.",
- "SolarisNumericGroupPrincipal [Grupo Adicional]: "},
- {"SolarisNumericUserPrincipal.",
- "SolarisNumericUserPrincipal: "},
- {"SolarisPrincipal.", "SolarisPrincipal: "},
- // provided.null.name is the NullPointerException message when a
- // developer incorrectly passes a null name to the constructor of
- // subclasses of java.security.Principal
- {"provided.null.name", "se ha proporcionado un nombre nulo"}
-
};
/**
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_fr.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_fr.java Mon Aug 21 14:05:10 2017 +0000
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2017, 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
@@ -95,50 +95,6 @@
"Nom utilisateur Kerberos [{0}] : "},
{"Kerberos.password.for.username.",
"Mot de passe Kerberos pour {0} : "},
-
- /*** EVERYTHING BELOW IS DEPRECATED ***/
-
- // com.sun.security.auth.PolicyFile
- {".error.parsing.", ": erreur d'analyse "},
- {"COLON", ": "},
- {".error.adding.Permission.", ": erreur d'ajout de droit "},
- {"SPACE", " "},
- {".error.adding.Entry.", ": erreur d'ajout d'entr\u00E9e "},
- {"LPARAM", "("},
- {"RPARAM", ")"},
- {"attempt.to.add.a.Permission.to.a.readonly.PermissionCollection",
- "tentative d'ajout de droit \u00E0 un ensemble de droits en lecture seule"},
-
- // com.sun.security.auth.PolicyParser
- {"expected.keystore.type", "type de fichier de cl\u00E9s attendu"},
- {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
- "impossible de sp\u00E9cifier le principal avec une classe g\u00E9n\u00E9rique sans nom g\u00E9n\u00E9rique"},
- {"expected.codeBase.or.SignedBy", "codeBase ou SignedBy attendu"},
- {"only.Principal.based.grant.entries.permitted",
- "seules les entr\u00E9es bas\u00E9es sur Principal sont autoris\u00E9es"},
- {"expected.permission.entry", "entr\u00E9e de droit attendue"},
- {"number.", "nombre "},
- {"expected.expect.read.end.of.file.",
- "attendu {0}, lecture de fin de fichier"},
- {"expected.read.end.of.file", "attendu ';', lecture de fin de fichier"},
- {"line.", "ligne "},
- {".expected.", ": attendu '"},
- {".found.", "', trouv\u00E9 '"},
- {"QUOTE", "'"},
-
- // SolarisPrincipals
- {"SolarisNumericGroupPrincipal.Primary.Group.",
- "SolarisNumericGroupPrincipal [groupe principal] : "},
- {"SolarisNumericGroupPrincipal.Supplementary.Group.",
- "SolarisNumericGroupPrincipal [groupe suppl\u00E9mentaire] : "},
- {"SolarisNumericUserPrincipal.",
- "SolarisNumericUserPrincipal : "},
- {"SolarisPrincipal.", "SolarisPrincipal : "},
- // provided.null.name is the NullPointerException message when a
- // developer incorrectly passes a null name to the constructor of
- // subclasses of java.security.Principal
- {"provided.null.name", "nom NULL fourni"}
-
};
/**
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_it.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_it.java Mon Aug 21 14:05:10 2017 +0000
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2017, 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
@@ -95,50 +95,6 @@
"Nome utente Kerberos [{0}]: "},
{"Kerberos.password.for.username.",
"Password Kerberos per {0}: "},
-
- /*** EVERYTHING BELOW IS DEPRECATED ***/
-
- // com.sun.security.auth.PolicyFile
- {".error.parsing.", ": errore durante l'analisi "},
- {"COLON", ": "},
- {".error.adding.Permission.", ": errore durante l'aggiunta dell'autorizzazione "},
- {"SPACE", " "},
- {".error.adding.Entry.", ": errore durante l'aggiunta della voce "},
- {"LPARAM", "("},
- {"RPARAM", ")"},
- {"attempt.to.add.a.Permission.to.a.readonly.PermissionCollection",
- "tentativo di aggiungere un'autorizzazione a una PermissionCollection di sola lettura"},
-
- // com.sun.security.auth.PolicyParser
- {"expected.keystore.type", "tipo keystore previsto"},
- {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
- "impossibile specificare un principal con una classe carattere jolly senza un nome carattere jolly"},
- {"expected.codeBase.or.SignedBy", "previsto codeBase o SignedBy"},
- {"only.Principal.based.grant.entries.permitted",
- "sono consentiti solo valori garantiti basati sul principal"},
- {"expected.permission.entry", "prevista voce di autorizzazione"},
- {"number.", "numero "},
- {"expected.expect.read.end.of.file.",
- "previsto {0}, letto end of file"},
- {"expected.read.end.of.file", "previsto ';', letto end of file"},
- {"line.", "riga "},
- {".expected.", ": previsto '"},
- {".found.", "', trovato '"},
- {"QUOTE", "'"},
-
- // SolarisPrincipals
- {"SolarisNumericGroupPrincipal.Primary.Group.",
- "SolarisNumericGroupPrincipal [gruppo primario]: "},
- {"SolarisNumericGroupPrincipal.Supplementary.Group.",
- "SolarisNumericGroupPrincipal [gruppo supplementare]: "},
- {"SolarisNumericUserPrincipal.",
- "SolarisNumericUserPrincipal: "},
- {"SolarisPrincipal.", "SolarisPrincipal: "},
- // provided.null.name is the NullPointerException message when a
- // developer incorrectly passes a null name to the constructor of
- // subclasses of java.security.Principal
- {"provided.null.name", "il nome fornito \u00E8 nullo"}
-
};
/**
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_ja.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_ja.java Mon Aug 21 14:05:10 2017 +0000
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2017, 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
@@ -95,50 +95,6 @@
"Kerberos\u30E6\u30FC\u30B6\u30FC\u540D[{0}]: "},
{"Kerberos.password.for.username.",
"{0}\u306EKerberos\u30D1\u30B9\u30EF\u30FC\u30C9: "},
-
- /*** EVERYTHING BELOW IS DEPRECATED ***/
-
- // com.sun.security.auth.PolicyFile
- {".error.parsing.", ": \u89E3\u6790\u30A8\u30E9\u30FC "},
- {"COLON", ": "},
- {".error.adding.Permission.", ": \u30A2\u30AF\u30BB\u30B9\u6A29\u306E\u8FFD\u52A0\u30A8\u30E9\u30FC "},
- {"SPACE", " "},
- {".error.adding.Entry.", ": \u30A8\u30F3\u30C8\u30EA\u306E\u8FFD\u52A0\u30A8\u30E9\u30FC "},
- {"LPARAM", "("},
- {"RPARAM", ")"},
- {"attempt.to.add.a.Permission.to.a.readonly.PermissionCollection",
- "\u8AAD\u53D6\u308A\u5C02\u7528\u306EPermissionCollection\u306B\u30A2\u30AF\u30BB\u30B9\u6A29\u306E\u8FFD\u52A0\u304C\u8A66\u884C\u3055\u308C\u307E\u3057\u305F"},
-
- // com.sun.security.auth.PolicyParser
- {"expected.keystore.type", "\u4E88\u60F3\u3055\u308C\u305F\u30AD\u30FC\u30B9\u30C8\u30A2\u30FB\u30BF\u30A4\u30D7"},
- {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
- "\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u540D\u306E\u306A\u3044\u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u30FB\u30AF\u30E9\u30B9\u3092\u4F7F\u7528\u3057\u3066\u3001\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u3092\u6307\u5B9A\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093"},
- {"expected.codeBase.or.SignedBy", "\u4E88\u60F3\u3055\u308C\u305FcodeBase\u307E\u305F\u306FSignedBy"},
- {"only.Principal.based.grant.entries.permitted",
- "\u30D7\u30EA\u30F3\u30B7\u30D1\u30EB\u30FB\u30D9\u30FC\u30B9\u306E\u30A8\u30F3\u30C8\u30EA\u306E\u307F\u304C\u8A31\u53EF\u3055\u308C\u307E\u3059\u3002"},
- {"expected.permission.entry", "\u4E88\u60F3\u3055\u308C\u305F\u30A2\u30AF\u30BB\u30B9\u6A29\u30A8\u30F3\u30C8\u30EA"},
- {"number.", "\u6570 "},
- {"expected.expect.read.end.of.file.",
- "{0}\u3067\u306F\u306A\u304F\u30D5\u30A1\u30A4\u30EB\u306E\u7D42\u308F\u308A\u304C\u8AAD\u307F\u8FBC\u307E\u308C\u307E\u3057\u305F"},
- {"expected.read.end.of.file", "\u4E88\u60F3\u5024\u306F';'\u3067\u3059\u304C\u3001\u30D5\u30A1\u30A4\u30EB\u306E\u7D42\u308F\u308A\u304C\u8AAD\u307F\u8FBC\u307E\u308C\u307E\u3057\u305F"},
- {"line.", "\u884C\u756A\u53F7 "},
- {".expected.", ": \u4E88\u60F3\u5024'"},
- {".found.", "',\u691C\u51FA\u5024'"},
- {"QUOTE", "'"},
-
- // SolarisPrincipals
- {"SolarisNumericGroupPrincipal.Primary.Group.",
- "SolarisNumericGroupPrincipal [\u4E3B\u30B0\u30EB\u30FC\u30D7]: "},
- {"SolarisNumericGroupPrincipal.Supplementary.Group.",
- "SolarisNumericGroupPrincipal [\u88DC\u52A9\u30B0\u30EB\u30FC\u30D7]: "},
- {"SolarisNumericUserPrincipal.",
- "SolarisNumericUserPrincipal: "},
- {"SolarisPrincipal.", "SolarisPrincipal: "},
- // provided.null.name is the NullPointerException message when a
- // developer incorrectly passes a null name to the constructor of
- // subclasses of java.security.Principal
- {"provided.null.name", "null\u306E\u540D\u524D\u304C\u6307\u5B9A\u3055\u308C\u307E\u3057\u305F"}
-
};
/**
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_ko.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_ko.java Mon Aug 21 14:05:10 2017 +0000
@@ -95,50 +95,6 @@
"Kerberos \uC0AC\uC6A9\uC790 \uC774\uB984 [{0}]: "},
{"Kerberos.password.for.username.",
"{0}\uC758 Kerberos \uBE44\uBC00\uBC88\uD638: "},
-
- /*** EVERYTHING BELOW IS DEPRECATED ***/
-
- // com.sun.security.auth.PolicyFile
- {".error.parsing.", ": \uAD6C\uBB38\uBD84\uC11D \uC624\uB958 "},
- {"COLON", ": "},
- {".error.adding.Permission.", ": \uAD8C\uD55C \uCD94\uAC00 \uC624\uB958 "},
- {"SPACE", " "},
- {".error.adding.Entry.", ": \uD56D\uBAA9 \uCD94\uAC00 \uC624\uB958 "},
- {"LPARAM", "("},
- {"RPARAM", ")"},
- {"attempt.to.add.a.Permission.to.a.readonly.PermissionCollection",
- "\uC77D\uAE30 \uC804\uC6A9 PermissionCollection\uC5D0 \uAD8C\uD55C\uC744 \uCD94\uAC00\uD558\uB824\uACE0 \uC2DC\uB3C4\uD588\uC2B5\uB2C8\uB2E4."},
-
- // com.sun.security.auth.PolicyParser
- {"expected.keystore.type", "\uD0A4 \uC800\uC7A5\uC18C \uC720\uD615\uC774 \uD544\uC694\uD569\uB2C8\uB2E4."},
- {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
- "\uC640\uC77C\uB4DC \uCE74\uB4DC \uBB38\uC790 \uC774\uB984 \uC5C6\uC774 \uC640\uC77C\uB4DC \uCE74\uB4DC \uBB38\uC790 \uD074\uB798\uC2A4\uB97C \uC0AC\uC6A9\uD558\uB294 \uC8FC\uCCB4\uB97C \uC9C0\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."},
- {"expected.codeBase.or.SignedBy", "codeBase \uB610\uB294 SignedBy\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4."},
- {"only.Principal.based.grant.entries.permitted",
- "\uC8FC\uCCB4 \uAE30\uBC18 \uAD8C\uD55C \uBD80\uC5EC \uD56D\uBAA9\uB9CC \uD5C8\uC6A9\uB429\uB2C8\uB2E4."},
- {"expected.permission.entry", "\uAD8C\uD55C \uD56D\uBAA9\uC774 \uD544\uC694\uD569\uB2C8\uB2E4."},
- {"number.", "\uC22B\uC790 "},
- {"expected.expect.read.end.of.file.",
- "{0}\uC774(\uAC00) \uD544\uC694\uD558\uC9C0\uB9CC \uD30C\uC77C\uC758 \uB05D\uC5D0 \uB3C4\uB2EC\uD588\uC2B5\uB2C8\uB2E4."},
- {"expected.read.end.of.file", "';'\uC774 \uD544\uC694\uD558\uC9C0\uB9CC \uD30C\uC77C\uC758 \uB05D\uC5D0 \uB3C4\uB2EC\uD588\uC2B5\uB2C8\uB2E4."},
- {"line.", "\uD589 "},
- {".expected.", ": \uD544\uC694\uD55C \uD56D\uBAA9: '"},
- {".found.", "', \uBC1C\uACAC\uB41C \uD56D\uBAA9: '"},
- {"QUOTE", "'"},
-
- // SolarisPrincipals
- {"SolarisNumericGroupPrincipal.Primary.Group.",
- "SolarisNumericGroupPrincipal [\uAE30\uBCF8 \uADF8\uB8F9]: "},
- {"SolarisNumericGroupPrincipal.Supplementary.Group.",
- "SolarisNumericGroupPrincipal [\uBCF4\uC870 \uADF8\uB8F9]: "},
- {"SolarisNumericUserPrincipal.",
- "SolarisNumericUserPrincipal: "},
- {"SolarisPrincipal.", "SolarisPrincipal: "},
- // provided.null.name is the NullPointerException message when a
- // developer incorrectly passes a null name to the constructor of
- // subclasses of java.security.Principal
- {"provided.null.name", "\uB110 \uC774\uB984\uC744 \uC81C\uACF5\uD588\uC2B5\uB2C8\uB2E4."}
-
};
/**
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_pt_BR.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_pt_BR.java Mon Aug 21 14:05:10 2017 +0000
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2017, 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
@@ -95,50 +95,6 @@
"Nome do usu\u00E1rio de Kerberos [{0}]: "},
{"Kerberos.password.for.username.",
"Senha de Kerberos de {0}: "},
-
- /*** EVERYTHING BELOW IS DEPRECATED ***/
-
- // com.sun.security.auth.PolicyFile
- {".error.parsing.", ": erro de parsing "},
- {"COLON", ": "},
- {".error.adding.Permission.", ": erro ao adicionar a Permiss\u00E3o "},
- {"SPACE", " "},
- {".error.adding.Entry.", ": erro ao adicionar a Entrada "},
- {"LPARAM", "("},
- {"RPARAM", ")"},
- {"attempt.to.add.a.Permission.to.a.readonly.PermissionCollection",
- "tentativa de adicionar uma Permiss\u00E3o a um PermissionCollection somente para leitura"},
-
- // com.sun.security.auth.PolicyParser
- {"expected.keystore.type", "tipo de armazenamento de chaves esperado"},
- {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
- "n\u00E3o \u00E9 poss\u00EDvel especificar um principal com uma classe curinga sem um nome curinga"},
- {"expected.codeBase.or.SignedBy", "CodeBase ou SignedBy esperado"},
- {"only.Principal.based.grant.entries.permitted",
- "somente \u00E9 permitido conceder entradas com base no Principal"},
- {"expected.permission.entry", "entrada de permiss\u00E3o esperada"},
- {"number.", "n\u00FAmero "},
- {"expected.expect.read.end.of.file.",
- "esperado {0}, ler fim do arquivo"},
- {"expected.read.end.of.file", "esperado ';', fim de arquivo lido"},
- {"line.", "linha "},
- {".expected.", ": esperado '"},
- {".found.", "', encontrado '"},
- {"QUOTE", "'"},
-
- // SolarisPrincipals
- {"SolarisNumericGroupPrincipal.Primary.Group.",
- "SolarisNumericGroupPrincipal [Grupo Principal]: "},
- {"SolarisNumericGroupPrincipal.Supplementary.Group.",
- "SolarisNumericGroupPrincipal [Grupo Complementar]: "},
- {"SolarisNumericUserPrincipal.",
- "SolarisNumericUserPrincipal: "},
- {"SolarisPrincipal.", "SolarisPrincipal: "},
- // provided.null.name is the NullPointerException message when a
- // developer incorrectly passes a null name to the constructor of
- // subclasses of java.security.Principal
- {"provided.null.name", "nome nulo fornecido"}
-
};
/**
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_sv.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_sv.java Mon Aug 21 14:05:10 2017 +0000
@@ -95,50 +95,6 @@
"Kerberos-anv\u00E4ndarnamn [{0}]: "},
{"Kerberos.password.for.username.",
"Kerberos-l\u00F6senord f\u00F6r {0}: "},
-
- /*** EVERYTHING BELOW IS DEPRECATED ***/
-
- // com.sun.security.auth.PolicyFile
- {".error.parsing.", ": tolkningsfel "},
- {"COLON", ": "},
- {".error.adding.Permission.", ": fel vid till\u00E4gg av beh\u00F6righet "},
- {"SPACE", " "},
- {".error.adding.Entry.", ": fel vid till\u00E4gg av post "},
- {"LPARAM", "("},
- {"RPARAM", ")"},
- {"attempt.to.add.a.Permission.to.a.readonly.PermissionCollection",
- "f\u00F6rs\u00F6k att l\u00E4gga till beh\u00F6righet till skrivskyddad PermissionCollection"},
-
- // com.sun.security.auth.PolicyParser
- {"expected.keystore.type", "f\u00F6rv\u00E4ntad nyckellagertyp"},
- {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
- "kan inte ange identitetshavare med en jokerteckenklass utan ett jokerteckennamn"},
- {"expected.codeBase.or.SignedBy", "f\u00F6rv\u00E4ntade codeBase eller SignedBy"},
- {"only.Principal.based.grant.entries.permitted",
- "endast identitetshavarbaserade poster till\u00E5ts"},
- {"expected.permission.entry", "f\u00F6rv\u00E4ntade beh\u00F6righetspost"},
- {"number.", "nummer"},
- {"expected.expect.read.end.of.file.",
- "f\u00F6rv\u00E4ntade {0}, l\u00E4ste filslut"},
- {"expected.read.end.of.file", "f\u00F6rv\u00E4ntade ';', l\u00E4ste filslut"},
- {"line.", "rad "},
- {".expected.", ": f\u00F6rv\u00E4ntade '"},
- {".found.", "', hittade '"},
- {"QUOTE", "'"},
-
- // SolarisPrincipals
- {"SolarisNumericGroupPrincipal.Primary.Group.",
- "SolarisNumericGroupPrincipal [prim\u00E4r grupp]: "},
- {"SolarisNumericGroupPrincipal.Supplementary.Group.",
- "SolarisNumericGroupPrincipal [till\u00E4ggsgrupp]: "},
- {"SolarisNumericUserPrincipal.",
- "SolarisNumericUserPrincipal: "},
- {"SolarisPrincipal.", "SolarisPrincipal: "},
- // provided.null.name is the NullPointerException message when a
- // developer incorrectly passes a null name to the constructor of
- // subclasses of java.security.Principal
- {"provided.null.name", "null-namn angavs"}
-
};
/**
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_zh_CN.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_zh_CN.java Mon Aug 21 14:05:10 2017 +0000
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2017, 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
@@ -95,50 +95,6 @@
"Kerberos \u7528\u6237\u540D [{0}]: "},
{"Kerberos.password.for.username.",
"{0}\u7684 Kerberos \u53E3\u4EE4: "},
-
- /*** EVERYTHING BELOW IS DEPRECATED ***/
-
- // com.sun.security.auth.PolicyFile
- {".error.parsing.", ": \u89E3\u6790\u65F6\u51FA\u9519 "},
- {"COLON", ": "},
- {".error.adding.Permission.", ": \u6DFB\u52A0\u6743\u9650\u65F6\u51FA\u9519 "},
- {"SPACE", " "},
- {".error.adding.Entry.", ": \u6DFB\u52A0\u6761\u76EE\u65F6\u51FA\u9519 "},
- {"LPARAM", "("},
- {"RPARAM", ")"},
- {"attempt.to.add.a.Permission.to.a.readonly.PermissionCollection",
- "\u5C1D\u8BD5\u5C06\u6743\u9650\u6DFB\u52A0\u81F3\u53EA\u8BFB\u7684 PermissionCollection"},
-
- // com.sun.security.auth.PolicyParser
- {"expected.keystore.type", "\u5E94\u4E3A\u5BC6\u94A5\u5E93\u7C7B\u578B"},
- {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
- "\u6CA1\u6709\u901A\u914D\u7B26\u540D\u79F0, \u65E0\u6CD5\u4F7F\u7528\u901A\u914D\u7B26\u7C7B\u6307\u5B9A\u4E3B\u7528\u6237"},
- {"expected.codeBase.or.SignedBy", "\u5E94\u4E3A codeBase \u6216 SignedBy"},
- {"only.Principal.based.grant.entries.permitted",
- "\u53EA\u5141\u8BB8\u57FA\u4E8E\u4E3B\u7528\u6237\u7684\u6388\u6743\u6761\u76EE"},
- {"expected.permission.entry", "\u5E94\u4E3A\u6743\u9650\u6761\u76EE"},
- {"number.", "\u7F16\u53F7 "},
- {"expected.expect.read.end.of.file.",
- "\u5E94\u4E3A{0}, \u8BFB\u53D6\u7684\u662F\u6587\u4EF6\u7ED3\u5C3E"},
- {"expected.read.end.of.file", "\u5E94\u4E3A ';', \u8BFB\u53D6\u7684\u662F\u6587\u4EF6\u7ED3\u5C3E"},
- {"line.", "\u884C "},
- {".expected.", ": \u5E94\u4E3A '"},
- {".found.", "', \u627E\u5230 '"},
- {"QUOTE", "'"},
-
- // SolarisPrincipals
- {"SolarisNumericGroupPrincipal.Primary.Group.",
- "SolarisNumericGroupPrincipal [\u4E3B\u7EC4]: "},
- {"SolarisNumericGroupPrincipal.Supplementary.Group.",
- "SolarisNumericGroupPrincipal [\u8865\u5145\u7EC4]: "},
- {"SolarisNumericUserPrincipal.",
- "SolarisNumericUserPrincipal: "},
- {"SolarisPrincipal.", "SolarisPrincipal: "},
- // provided.null.name is the NullPointerException message when a
- // developer incorrectly passes a null name to the constructor of
- // subclasses of java.security.Principal
- {"provided.null.name", "\u63D0\u4F9B\u7684\u540D\u79F0\u4E3A\u7A7A\u503C"}
-
};
/**
--- a/jdk/src/java.base/share/classes/sun/security/util/AuthResources_zh_TW.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/src/java.base/share/classes/sun/security/util/AuthResources_zh_TW.java Mon Aug 21 14:05:10 2017 +0000
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2017, 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
@@ -95,50 +95,6 @@
"Kerberos \u4F7F\u7528\u8005\u540D\u7A31 [{0}]: "},
{"Kerberos.password.for.username.",
"Kerberos \u5BC6\u78BC {0}: "},
-
- /*** EVERYTHING BELOW IS DEPRECATED ***/
-
- // com.sun.security.auth.PolicyFile
- {".error.parsing.", ": \u5256\u6790\u932F\u8AA4 "},
- {"COLON", ": "},
- {".error.adding.Permission.", ": \u65B0\u589E\u6B0A\u9650\u932F\u8AA4 "},
- {"SPACE", " "},
- {".error.adding.Entry.", ": \u65B0\u589E\u8F38\u5165\u932F\u8AA4 "},
- {"LPARAM", "("},
- {"RPARAM", ")"},
- {"attempt.to.add.a.Permission.to.a.readonly.PermissionCollection",
- "\u8A66\u8457\u65B0\u589E\u6B0A\u9650\u81F3\u552F\u8B80\u7684 PermissionCollection"},
-
- // com.sun.security.auth.PolicyParser
- {"expected.keystore.type", "\u9810\u671F\u7684\u91D1\u9470\u5132\u5B58\u5EAB\u985E\u578B"},
- {"can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name",
- "\u6C92\u6709\u842C\u7528\u5B57\u5143\u540D\u7A31\uFF0C\u7121\u6CD5\u6307\u5B9A\u542B\u6709\u842C\u7528\u5B57\u5143\u985E\u5225\u7684 Principal"},
- {"expected.codeBase.or.SignedBy", "\u9810\u671F\u7684 codeBase \u6216 SignedBy"},
- {"only.Principal.based.grant.entries.permitted",
- "\u53EA\u5141\u8A31\u4EE5 Principal \u70BA\u57FA\u790E\u7684\u6388\u6B0A\u9805\u76EE"},
- {"expected.permission.entry", "\u9810\u671F\u7684\u6B0A\u9650\u9805\u76EE"},
- {"number.", "\u865F\u78BC "},
- {"expected.expect.read.end.of.file.",
- "\u9810\u671F\u70BA {0}, \u8B80\u53D6\u6A94\u6848\u7D50\u5C3E"},
- {"expected.read.end.of.file", "\u9810\u671F\u7684 ';'\uFF0C\u8B80\u53D6\u6A94\u6848\u7D50\u5C3E"},
- {"line.", "\u884C "},
- {".expected.", ": \u9810\u671F '"},
- {".found.", "'\uFF0C\u767C\u73FE '"},
- {"QUOTE", "'"},
-
- // SolarisPrincipals
- {"SolarisNumericGroupPrincipal.Primary.Group.",
- "SolarisNumericGroupPrincipal [\u4E3B\u7FA4\u7D44]: "},
- {"SolarisNumericGroupPrincipal.Supplementary.Group.",
- "SolarisNumericGroupPrincipal [\u9644\u52A0\u7FA4\u7D44]: "},
- {"SolarisNumericUserPrincipal.",
- "SolarisNumericUserPrincipal: "},
- {"SolarisPrincipal.", "SolarisPrincipal: "},
- // provided.null.name is the NullPointerException message when a
- // developer incorrectly passes a null name to the constructor of
- // subclasses of java.security.Principal
- {"provided.null.name", "\u63D0\u4F9B\u7A7A\u503C\u540D\u7A31"}
-
};
/**
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/PolicyFile.java Sun Aug 20 20:36:12 2017 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,300 +0,0 @@
-/*
- * Copyright (c) 1999, 2013, 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.auth;
-
-import java.security.CodeSource;
-import java.security.PermissionCollection;
-import javax.security.auth.Subject;
-
-/**
- * This class represents a default implementation for
- * {@code javax.security.auth.Policy}.
- *
- * <p> This object stores the policy for entire Java runtime,
- * and is the amalgamation of multiple static policy
- * configurations that resides in files.
- * The algorithm for locating the policy file(s) and reading their
- * information into this {@code Policy} object is:
- *
- * <ol>
- * <li>
- * Loop through the security properties,
- * <i>auth.policy.url.1</i>, <i>auth.policy.url.2</i>, ...,
- * <i>auth.policy.url.X</i>".
- * Each property value specifies a {@code URL} pointing to a
- * policy file to be loaded. Read in and load each policy.
- *
- * <li>
- * The {@code java.lang.System} property <i>java.security.auth.policy</i>
- * may also be set to a {@code URL} pointing to another policy file
- * (which is the case when a user uses the -D switch at runtime).
- * If this property is defined, and its use is allowed by the
- * security property file (the Security property,
- * <i>policy.allowSystemProperty</i> is set to <i>true</i>),
- * also load that policy.
- *
- * <li>
- * If the <i>java.security.auth.policy</i> property is defined using
- * "==" (rather than "="), then ignore all other specified
- * policies and only load this policy.
- * </ol>
- *
- * Each policy file consists of one or more grant entries, each of
- * which consists of a number of permission entries.
- *
- * <pre>
- * grant signedBy "<b>alias</b>", codeBase "<b>URL</b>",
- * principal <b>principalClass</b> "<b>principalName</b>",
- * principal <b>principalClass</b> "<b>principalName</b>",
- * ... {
- *
- * permission <b>Type</b> "<b>name</b> "<b>action</b>",
- * signedBy "<b>alias</b>";
- * permission <b>Type</b> "<b>name</b> "<b>action</b>",
- * signedBy "<b>alias</b>";
- * ....
- * };
- * </pre>
- *
- * All non-bold items above must appear as is (although case
- * doesn't matter and some are optional, as noted below).
- * Italicized items represent variable values.
- *
- * <p> A grant entry must begin with the word {@code grant}.
- * The {@code signedBy} and {@code codeBase}
- * name/value pairs are optional.
- * If they are not present, then any signer (including unsigned code)
- * will match, and any codeBase will match. Note that the
- * {@code principal} name/value pair is not optional.
- * This {@code Policy} implementation only permits
- * Principal-based grant entries. Note that the <i>principalClass</i>
- * may be set to the wildcard value, *, which allows it to match
- * any {@code Principal} class. In addition, the <i>principalName</i>
- * may also be set to the wildcard value, *, allowing it to match
- * any {@code Principal} name. When setting the <i>principalName</i>
- * to the *, do not surround the * with quotes.
- *
- * <p> A permission entry must begin with the word {@code permission}.
- * The word <i>{@code Type}</i> in the template above is
- * a specific permission type, such as {@code java.io.FilePermission}
- * or {@code java.lang.RuntimePermission}.
- *
- * <p> The "<i>action</i>" is required for
- * many permission types, such as {@code java.io.FilePermission}
- * (where it specifies what type of file access that is permitted).
- * It is not required for categories such as
- * {@code java.lang.RuntimePermission}
- * where it is not necessary - you either have the
- * permission specified by the "<i>{@code name}</i>"
- * value following the type name or you don't.
- *
- * <p> The {@code signedBy} name/value pair for a permission entry
- * is optional. If present, it indicates a signed permission. That is,
- * the permission class itself must be signed by the given alias in
- * order for it to be granted. For example,
- * suppose you have the following grant entry:
- *
- * <pre>
- * grant principal foo.com.Principal "Duke" {
- * permission Foo "foobar", signedBy "FooSoft";
- * }
- * </pre>
- *
- * <p> Then this permission of type <i>Foo</i> is granted if the
- * {@code Foo.class} permission has been signed by the
- * "FooSoft" alias, or if {@code Foo.class} is a
- * system class (i.e., is found on the CLASSPATH).
- *
- * <p> Items that appear in an entry must appear in the specified order
- * ({@code permission}, <i>Type</i>, "<i>name</i>", and
- * "<i>action</i>"). An entry is terminated with a semicolon.
- *
- * <p> Case is unimportant for the identifiers ({@code permission},
- * {@code signedBy}, {@code codeBase}, etc.) but is
- * significant for the <i>Type</i>
- * or for any string that is passed in as a value.
- *
- * <p> An example of two entries in a policy configuration file is
- * <pre>
- * // if the code is comes from "foo.com" and is running as "Duke",
- * // grant it read/write to all files in /tmp.
- *
- * grant codeBase "foo.com", principal foo.com.Principal "Duke" {
- * permission java.io.FilePermission "/tmp/*", "read,write";
- * };
- *
- * // grant any code running as "Duke" permission to read
- * // the "java.vendor" Property.
- *
- * grant principal foo.com.Principal "Duke" {
- * permission java.util.PropertyPermission "java.vendor";
- * </pre>
- *
- * <p> This {@code Policy} implementation supports
- * special handling for PrivateCredentialPermissions.
- * If a grant entry is configured with a
- * {@code PrivateCredentialPermission},
- * and the "Principal Class/Principal Name" for that
- * {@code PrivateCredentialPermission} is "self",
- * then the entry grants the specified {@code Subject} permission to
- * access its own private Credential. For example,
- * the following grants the {@code Subject} "Duke"
- * access to its own a.b.Credential.
- *
- * <pre>
- * grant principal foo.com.Principal "Duke" {
- * permission javax.security.auth.PrivateCredentialPermission
- * "a.b.Credential self",
- * "read";
- * };
- * </pre>
- *
- * The following grants the {@code Subject} "Duke"
- * access to all of its own private Credentials:
- *
- * <pre>
- * grant principal foo.com.Principal "Duke" {
- * permission javax.security.auth.PrivateCredentialPermission
- * "* self",
- * "read";
- * };
- * </pre>
- *
- * The following grants all Subjects authenticated as a
- * {@code SolarisPrincipal} (regardless of their respective names)
- * permission to access their own private Credentials:
- *
- * <pre>
- * grant principal com.sun.security.auth.SolarisPrincipal * {
- * permission javax.security.auth.PrivateCredentialPermission
- * "* self",
- * "read";
- * };
- * </pre>
- *
- * The following grants all Subjects permission to access their own
- * private Credentials:
- *
- * <pre>
- * grant principal * * {
- * permission javax.security.auth.PrivateCredentialPermission
- * "* self",
- * "read";
- * };
- * </pre>
-
- * @deprecated As of JDK 1.4, replaced by
- * {@code sun.security.provider.PolicyFile}.
- * This class is entirely deprecated.
- * This class is subject to removal in a future version of Java SE.
- *
- * @see java.security.CodeSource
- * @see java.security.Permissions
- * @see java.security.ProtectionDomain
- * @see java.security.Security security properties
- */
-@Deprecated(since="1.4", forRemoval=true)
-public class PolicyFile extends javax.security.auth.Policy {
-
- private final sun.security.provider.AuthPolicyFile apf;
-
- /**
- * Initializes the Policy object and reads the default policy
- * configuration file(s) into the Policy object.
- */
- public PolicyFile() {
- apf = new sun.security.provider.AuthPolicyFile();
- }
-
- /**
- * Refreshes the policy object by re-reading all the policy files.
- *
- * @exception SecurityException if the caller doesn't have permission
- * to refresh the {@code Policy}.
- */
- @Override
- public void refresh() {
- apf.refresh();
- }
-
- /**
- * Examines this {@code Policy} and returns the Permissions granted
- * to the specified {@code Subject} and {@code CodeSource}.
- *
- * <p> Permissions for a particular <i>grant</i> entry are returned
- * if the {@code CodeSource} constructed using the codebase and
- * signedby values specified in the entry {@code implies}
- * the {@code CodeSource} provided to this method, and if the
- * {@code Subject} provided to this method contains all of the
- * Principals specified in the entry.
- *
- * <p> The {@code Subject} provided to this method contains all
- * of the Principals specified in the entry if, for each
- * {@code Principal}, "P1", specified in the <i>grant</i> entry
- * one of the following two conditions is met:
- *
- * <ol>
- * <li> the {@code Subject} has a
- * {@code Principal}, "P2", where
- * {@code P2.getClass().getName()} equals the
- * P1's class name, and where
- * {@code P2.getName()} equals the P1's name.
- *
- * <li> P1 implements
- * {@code com.sun.security.auth.PrincipalComparator},
- * and {@code P1.implies} the provided {@code Subject}.
- * </ol>
- *
- * <p> Note that this {@code Policy} implementation has
- * special handling for PrivateCredentialPermissions.
- * When this method encounters a {@code PrivateCredentialPermission}
- * which specifies "self" as the {@code Principal} class and name,
- * it does not add that {@code Permission} to the returned
- * {@code PermissionCollection}. Instead, it builds
- * a new {@code PrivateCredentialPermission}
- * for each {@code Principal} associated with the provided
- * {@code Subject}. Each new {@code PrivateCredentialPermission}
- * contains the same Credential class as specified in the
- * originally granted permission, as well as the Class and name
- * for the respective {@code Principal}.
- *
- * @param subject the Permissions granted to this {@code Subject}
- * and the additionally provided {@code CodeSource}
- * are returned.
- *
- * @param codesource the Permissions granted to this {@code CodeSource}
- * and the additionally provided {@code Subject}
- * are returned.
- *
- * @return the Permissions granted to the provided {@code Subject}
- * {@code CodeSource}.
- */
- @Override
- public PermissionCollection getPermissions(final Subject subject,
- final CodeSource codesource) {
- return apf.getPermissions(subject, codesource);
- }
-}
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericGroupPrincipal.java Sun Aug 20 20:36:12 2017 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,193 +0,0 @@
-/*
- * Copyright (c) 1999, 2013, 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.auth;
-
-import java.security.Principal;
-import static sun.security.util.ResourcesMgr.getAuthResourceString;
-
-/**
- * This class implements the {@code Principal} interface
- * and represents a user's Solaris group identification number (GID).
- *
- * <p> Principals such as this {@code SolarisNumericGroupPrincipal}
- * may be associated with a particular {@code Subject}
- * to augment that {@code Subject} with an additional
- * identity. Refer to the {@code Subject} class for more information
- * on how to achieve this. Authorization decisions can then be based upon
- * the Principals associated with a {@code Subject}.
-
- * @deprecated As of JDK 1.4, replaced by
- * {@link UnixNumericGroupPrincipal}.
- * This class is entirely deprecated.
- * This class is subject to removal in a future version of Java SE.
- *
- * @see java.security.Principal
- * @see javax.security.auth.Subject
- */
-@Deprecated(since="1.4", forRemoval=true)
-public class SolarisNumericGroupPrincipal implements
- Principal,
- java.io.Serializable {
-
- private static final long serialVersionUID = 2345199581042573224L;
-
- /**
- * @serial
- */
- private String name;
-
- /**
- * @serial
- */
- private boolean primaryGroup;
-
- /**
- * Create a {@code SolarisNumericGroupPrincipal} using a
- * {@code String} representation of the user's
- * group identification number (GID).
- *
- * @param name the user's group identification number (GID)
- * for this user.
- *
- * @param primaryGroup true if the specified GID represents the
- * primary group to which this user belongs.
- *
- * @exception NullPointerException if the {@code name}
- * is {@code null}.
- */
- public SolarisNumericGroupPrincipal(String name, boolean primaryGroup) {
- if (name == null)
- throw new NullPointerException(getAuthResourceString("provided.null.name"));
-
- this.name = name;
- this.primaryGroup = primaryGroup;
- }
-
- /**
- * Create a {@code SolarisNumericGroupPrincipal} using a
- * long representation of the user's group identification number (GID).
- *
- * @param name the user's group identification number (GID) for this user
- * represented as a long.
- *
- * @param primaryGroup true if the specified GID represents the
- * primary group to which this user belongs.
- *
- */
- public SolarisNumericGroupPrincipal(long name, boolean primaryGroup) {
- this.name = Long.toString(name);
- this.primaryGroup = primaryGroup;
- }
-
- /**
- * Return the user's group identification number (GID) for this
- * {@code SolarisNumericGroupPrincipal}.
- *
- * @return the user's group identification number (GID) for this
- * {@code SolarisNumericGroupPrincipal}
- */
- public String getName() {
- return name;
- }
-
- /**
- * Return the user's group identification number (GID) for this
- * {@code SolarisNumericGroupPrincipal} as a long.
- *
- * @return the user's group identification number (GID) for this
- * {@code SolarisNumericGroupPrincipal} as a long.
- */
- public long longValue() {
- return Long.parseLong(name);
- }
-
- /**
- * Return whether this group identification number (GID) represents
- * the primary group to which this user belongs.
- *
- * @return true if this group identification number (GID) represents
- * the primary group to which this user belongs,
- * or false otherwise.
- */
- public boolean isPrimaryGroup() {
- return primaryGroup;
- }
-
- /**
- * Return a string representation of this
- * {@code SolarisNumericGroupPrincipal}.
- *
- * @return a string representation of this
- * {@code SolarisNumericGroupPrincipal}.
- */
- public String toString() {
- return primaryGroup ?
- getAuthResourceString
- ("SolarisNumericGroupPrincipal.Primary.Group.") + name :
- getAuthResourceString
- ("SolarisNumericGroupPrincipal.Supplementary.Group.") + name;
- }
-
- /**
- * Compares the specified Object with this
- * {@code SolarisNumericGroupPrincipal}
- * for equality. Returns true if the given object is also a
- * {@code SolarisNumericGroupPrincipal} and the two
- * SolarisNumericGroupPrincipals
- * have the same group identification number (GID).
- *
- * @param o Object to be compared for equality with this
- * {@code SolarisNumericGroupPrincipal}.
- *
- * @return true if the specified Object is equal to this
- * {@code SolarisNumericGroupPrincipal}.
- */
- public boolean equals(Object o) {
- if (o == null)
- return false;
-
- if (this == o)
- return true;
-
- if (!(o instanceof SolarisNumericGroupPrincipal))
- return false;
- SolarisNumericGroupPrincipal that = (SolarisNumericGroupPrincipal)o;
-
- if (this.getName().equals(that.getName()) &&
- this.isPrimaryGroup() == that.isPrimaryGroup())
- return true;
- return false;
- }
-
- /**
- * Return a hash code for this {@code SolarisNumericGroupPrincipal}.
- *
- * @return a hash code for this {@code SolarisNumericGroupPrincipal}.
- */
- public int hashCode() {
- return toString().hashCode();
- }
-}
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisNumericUserPrincipal.java Sun Aug 20 20:36:12 2017 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,161 +0,0 @@
-/*
- * Copyright (c) 1999, 2013, 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.auth;
-
-import java.security.Principal;
-import static sun.security.util.ResourcesMgr.getAuthResourceString;
-
-/**
- * This class implements the {@code Principal} interface
- * and represents a user's Solaris identification number (UID).
- *
- * <p> Principals such as this {@code SolarisNumericUserPrincipal}
- * may be associated with a particular {@code Subject}
- * to augment that {@code Subject} with an additional
- * identity. Refer to the {@code Subject} class for more information
- * on how to achieve this. Authorization decisions can then be based upon
- * the Principals associated with a {@code Subject}.
- * @deprecated As of JDK 1.4, replaced by
- * {@link UnixNumericUserPrincipal}.
- * This class is entirely deprecated.
- * This class is subject to removal in a future version of Java SE.
- *
- * @see java.security.Principal
- * @see javax.security.auth.Subject
- */
-@Deprecated(since="1.4", forRemoval=true)
-public class SolarisNumericUserPrincipal implements
- Principal,
- java.io.Serializable {
-
- private static final long serialVersionUID = -3178578484679887104L;
-
- /**
- * @serial
- */
- private String name;
-
- /**
- * Create a {@code SolarisNumericUserPrincipal} using a
- * {@code String} representation of the
- * user's identification number (UID).
- *
- * @param name the user identification number (UID) for this user.
- *
- * @exception NullPointerException if the {@code name}
- * is {@code null}.
- */
- public SolarisNumericUserPrincipal(String name) {
- if (name == null)
- throw new NullPointerException(getAuthResourceString("provided.null.name"));
-
- this.name = name;
- }
-
- /**
- * Create a {@code SolarisNumericUserPrincipal} using a
- * long representation of the user's identification number (UID).
- *
- * @param name the user identification number (UID) for this user
- * represented as a long.
- */
- public SolarisNumericUserPrincipal(long name) {
- this.name = Long.toString(name);
- }
-
- /**
- * Return the user identification number (UID) for this
- * {@code SolarisNumericUserPrincipal}.
- *
- * @return the user identification number (UID) for this
- * {@code SolarisNumericUserPrincipal}
- */
- public String getName() {
- return name;
- }
-
- /**
- * Return the user identification number (UID) for this
- * {@code SolarisNumericUserPrincipal} as a long.
- *
- * @return the user identification number (UID) for this
- * {@code SolarisNumericUserPrincipal} as a long.
- */
- public long longValue() {
- return Long.parseLong(name);
- }
-
- /**
- * Return a string representation of this
- * {@code SolarisNumericUserPrincipal}.
- *
- * @return a string representation of this
- * {@code SolarisNumericUserPrincipal}.
- */
- public String toString() {
- return(getAuthResourceString("SolarisNumericUserPrincipal.") + name);
- }
-
- /**
- * Compares the specified Object with this
- * {@code SolarisNumericUserPrincipal}
- * for equality. Returns true if the given object is also a
- * {@code SolarisNumericUserPrincipal} and the two
- * SolarisNumericUserPrincipals
- * have the same user identification number (UID).
- *
- * @param o Object to be compared for equality with this
- * {@code SolarisNumericUserPrincipal}.
- *
- * @return true if the specified Object is equal to this
- * {@code SolarisNumericUserPrincipal}.
- */
- public boolean equals(Object o) {
- if (o == null)
- return false;
-
- if (this == o)
- return true;
-
- if (!(o instanceof SolarisNumericUserPrincipal))
- return false;
- SolarisNumericUserPrincipal that = (SolarisNumericUserPrincipal)o;
-
- if (this.getName().equals(that.getName()))
- return true;
-
- return false;
- }
-
- /**
- * Return a hash code for this {@code SolarisNumericUserPrincipal}.
- *
- * @return a hash code for this {@code SolarisNumericUserPrincipal}.
- */
- public int hashCode() {
- return name.hashCode();
- }
-}
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/SolarisPrincipal.java Sun Aug 20 20:36:12 2017 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,129 +0,0 @@
-/*
- * Copyright (c) 1999, 2013, 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.auth;
-
-import java.security.Principal;
-import static sun.security.util.ResourcesMgr.getAuthResourceString;
-
-
-/**
- * This class implements the {@code Principal} interface
- * and represents a Solaris user.
- *
- * <p> Principals such as this {@code SolarisPrincipal}
- * may be associated with a particular {@code Subject}
- * to augment that {@code Subject} with an additional
- * identity. Refer to the {@code Subject} class for more information
- * on how to achieve this. Authorization decisions can then be based upon
- * the Principals associated with a {@code Subject}.
- *
- * @deprecated As of JDK 1.4, replaced by
- * {@link UnixPrincipal}.
- * This class is entirely deprecated.
- * This class is subject to removal in a future version of Java SE.
- * @see java.security.Principal
- * @see javax.security.auth.Subject
- */
-@Deprecated(since="1.4", forRemoval=true)
-public class SolarisPrincipal implements Principal, java.io.Serializable {
-
- private static final long serialVersionUID = -7840670002439379038L;
-
- /**
- * @serial
- */
- private String name;
-
- /**
- * Create a SolarisPrincipal with a Solaris username.
- *
- * @param name the Unix username for this user.
- *
- * @exception NullPointerException if the {@code name}
- * is {@code null}.
- */
- public SolarisPrincipal(String name) {
- if (name == null)
- throw new NullPointerException(getAuthResourceString("provided.null.name"));
-
- this.name = name;
- }
-
- /**
- * Return the Unix username for this {@code SolarisPrincipal}.
- *
- * @return the Unix username for this {@code SolarisPrincipal}
- */
- public String getName() {
- return name;
- }
-
- /**
- * Return a string representation of this {@code SolarisPrincipal}.
- *
- * @return a string representation of this {@code SolarisPrincipal}.
- */
- public String toString() {
- return(getAuthResourceString("SolarisPrincipal.") + name);
- }
-
- /**
- * Compares the specified Object with this {@code SolarisPrincipal}
- * for equality. Returns true if the given object is also a
- * {@code SolarisPrincipal} and the two SolarisPrincipals
- * have the same username.
- *
- * @param o Object to be compared for equality with this
- * {@code SolarisPrincipal}.
- *
- * @return true if the specified Object is equal to this
- * {@code SolarisPrincipal}.
- */
- public boolean equals(Object o) {
- if (o == null)
- return false;
-
- if (this == o)
- return true;
-
- if (!(o instanceof SolarisPrincipal))
- return false;
- SolarisPrincipal that = (SolarisPrincipal)o;
-
- if (this.getName().equals(that.getName()))
- return true;
- return false;
- }
-
- /**
- * Return a hash code for this {@code SolarisPrincipal}.
- *
- * @return a hash code for this {@code SolarisPrincipal}.
- */
- public int hashCode() {
- return name.hashCode();
- }
-}
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/X500Principal.java Sun Aug 20 20:36:12 2017 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,167 +0,0 @@
-/*
- * Copyright (c) 1999, 2013, 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.auth;
-
-import java.security.Principal;
-import sun.security.x509.X500Name;
-import static sun.security.util.ResourcesMgr.getAuthResourceString;
-
-/**
- * This class represents an X.500 {@code Principal}.
- * X500Principals have names such as,
- * "CN=Duke, OU=JavaSoft, O=Sun Microsystems, C=US"
- * (RFC 1779 style).
- *
- * <p> Principals such as this {@code X500Principal}
- * may be associated with a particular {@code Subject}
- * to augment that {@code Subject} with an additional
- * identity. Refer to the {@code Subject} class for more information
- * on how to achieve this. Authorization decisions can then be based upon
- * the Principals associated with a {@code Subject}.
- *
- * @see java.security.Principal
- * @see javax.security.auth.Subject
- * @deprecated A new X500Principal class is available in the Java platform.
- * This X500Principal classs is entirely deprecated and
- * is here to allow for a smooth transition to the new
- * class.
- * This class is subject to removal in a future version of Java SE.
- * @see javax.security.auth.x500.X500Principal
-*/
-@Deprecated(since="1.4", forRemoval=true)
-public class X500Principal implements Principal, java.io.Serializable {
-
- private static final long serialVersionUID = -8222422609431628648L;
-
- /**
- * @serial
- */
- private String name;
-
- transient private X500Name thisX500Name;
-
- /**
- * Create a X500Principal with an X.500 Name,
- * such as "CN=Duke, OU=JavaSoft, O=Sun Microsystems, C=US"
- * (RFC 1779 style).
- *
- * @param name the X.500 name
- *
- * @exception NullPointerException if the {@code name}
- * is {@code null}.
- *
- * @exception IllegalArgumentException if the {@code name}
- * is improperly specified.
- */
- public X500Principal(String name) {
- if (name == null)
- throw new NullPointerException(getAuthResourceString("provided.null.name"));
-
- try {
- thisX500Name = new X500Name(name);
- } catch (Exception e) {
- throw new IllegalArgumentException(e.toString());
- }
-
- this.name = name;
- }
-
- /**
- * Return the Unix username for this {@code X500Principal}.
- *
- * @return the Unix username for this {@code X500Principal}
- */
- public String getName() {
- return thisX500Name.getName();
- }
-
- /**
- * Return a string representation of this {@code X500Principal}.
- *
- * @return a string representation of this {@code X500Principal}.
- */
- public String toString() {
- return thisX500Name.toString();
- }
-
- /**
- * Compares the specified Object with this {@code X500Principal}
- * for equality.
- *
- * @param o Object to be compared for equality with this
- * {@code X500Principal}.
- *
- * @return true if the specified Object is equal to this
- * {@code X500Principal}.
- */
- public boolean equals(Object o) {
- if (o == null)
- return false;
-
- if (this == o)
- return true;
-
- if (o instanceof X500Principal) {
- X500Principal that = (X500Principal)o;
- try {
- X500Name thatX500Name = new X500Name(that.getName());
- return thisX500Name.equals(thatX500Name);
- } catch (Exception e) {
- // any parsing exceptions, return false
- return false;
- }
- } else if (o instanceof Principal) {
- // this will return 'true' if 'o' is a sun.security.x509.X500Name
- // and the X500Names are equal
- return o.equals(thisX500Name);
- }
-
- return false;
- }
-
- /**
- * Return a hash code for this {@code X500Principal}.
- *
- * @return a hash code for this {@code X500Principal}.
- */
- public int hashCode() {
- return thisX500Name.hashCode();
- }
-
- /**
- * Reads this object from a stream (i.e., deserializes it)
- */
- private void readObject(java.io.ObjectInputStream s) throws
- java.io.IOException,
- java.io.NotActiveException,
- ClassNotFoundException {
-
- s.defaultReadObject();
-
- // re-create thisX500Name
- thisX500Name = new X500Name(name);
- }
-}
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisLoginModule.java Sun Aug 20 20:36:12 2017 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,313 +0,0 @@
-/*
- * Copyright (c) 2000, 2017, 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.auth.module;
-
-import java.util.*;
-import java.io.IOException;
-import javax.security.auth.*;
-import javax.security.auth.callback.*;
-import javax.security.auth.login.*;
-import javax.security.auth.spi.*;
-import com.sun.security.auth.SolarisPrincipal;
-import com.sun.security.auth.SolarisNumericUserPrincipal;
-import com.sun.security.auth.SolarisNumericGroupPrincipal;
-
-/**
- * This {@code LoginModule} imports a user's Solaris
- * {@code Principal} information ({@code SolarisPrincipal},
- * {@code SolarisNumericUserPrincipal},
- * and {@code SolarisNumericGroupPrincipal})
- * and associates them with the current {@code Subject}.
- *
- * <p> This LoginModule recognizes the debug option.
- * If set to true in the login Configuration,
- * debug messages will be output to the output stream, System.out.
- * @deprecated As of JDK1.4, replaced by
- * {@code com.sun.security.auth.module.UnixLoginModule}.
- * This LoginModule is entirely deprecated and
- * is here to allow for a smooth transition to the new
- * UnixLoginModule.
- * This class is subject to removal in a future version of Java SE.
- *
- */
-@Deprecated(since="1.4", forRemoval=true)
-public class SolarisLoginModule implements LoginModule {
-
- // initial state
- private Subject subject;
- private CallbackHandler callbackHandler;
- private Map<String, ?> sharedState;
- private Map<String, ?> options;
-
- // configurable option
- private boolean debug = true;
-
- // SolarisSystem to retrieve underlying system info
- @SuppressWarnings("removal")
- private SolarisSystem ss;
-
- // the authentication status
- private boolean succeeded = false;
- private boolean commitSucceeded = false;
-
- // Underlying system info
- @SuppressWarnings("removal")
- private SolarisPrincipal userPrincipal;
- @SuppressWarnings("removal")
- private SolarisNumericUserPrincipal UIDPrincipal;
- @SuppressWarnings("removal")
- private SolarisNumericGroupPrincipal GIDPrincipal;
- @SuppressWarnings("removal")
- private LinkedList<SolarisNumericGroupPrincipal> supplementaryGroups =
- new LinkedList<>();
-
- /**
- * Initialize this {@code LoginModule}.
- *
- * @param subject the {@code Subject} to be authenticated.
- *
- * @param callbackHandler a {@code CallbackHandler} for communicating
- * with the end user (prompting for usernames and
- * passwords, for example).
- *
- * @param sharedState shared {@code LoginModule} state.
- *
- * @param options options specified in the login
- * {@code Configuration} for this particular
- * {@code LoginModule}.
- */
- public void initialize(Subject subject, CallbackHandler callbackHandler,
- Map<String,?> sharedState,
- Map<String,?> options)
- {
-
- this.subject = subject;
- this.callbackHandler = callbackHandler;
- this.sharedState = sharedState;
- this.options = options;
-
- // initialize any configured options
- debug = "true".equalsIgnoreCase((String)options.get("debug"));
- }
-
- /**
- * Authenticate the user (first phase).
- *
- * <p> The implementation of this method attempts to retrieve the user's
- * Solaris {@code Subject} information by making a native Solaris
- * system call.
- *
- * @exception FailedLoginException if attempts to retrieve the underlying
- * system information fail.
- *
- * @return true in all cases (this {@code LoginModule}
- * should not be ignored).
- */
- @SuppressWarnings("removal")
- public boolean login() throws LoginException {
-
- long[] solarisGroups = null;
-
- try {
- ss = new SolarisSystem();
- } catch (UnsatisfiedLinkError ule) {
- succeeded = false;
- throw new FailedLoginException
- ("Failed in attempt to import " +
- "the underlying system identity information" +
- " on " + System.getProperty("os.name"));
- }
- userPrincipal = new SolarisPrincipal(ss.getUsername());
- UIDPrincipal = new SolarisNumericUserPrincipal(ss.getUid());
- GIDPrincipal = new SolarisNumericGroupPrincipal(ss.getGid(), true);
- if (ss.getGroups() != null && ss.getGroups().length > 0)
- solarisGroups = ss.getGroups();
- for (int i = 0; i < solarisGroups.length; i++) {
- SolarisNumericGroupPrincipal ngp =
- new SolarisNumericGroupPrincipal
- (solarisGroups[i], false);
- if (!ngp.getName().equals(GIDPrincipal.getName()))
- supplementaryGroups.add(ngp);
- }
- if (debug) {
- System.out.println("\t\t[SolarisLoginModule]: " +
- "succeeded importing info: ");
- System.out.println("\t\t\tuid = " + ss.getUid());
- System.out.println("\t\t\tgid = " + ss.getGid());
- solarisGroups = ss.getGroups();
- for (int i = 0; i < solarisGroups.length; i++) {
- System.out.println("\t\t\tsupp gid = " + solarisGroups[i]);
- }
- }
- succeeded = true;
- return true;
- }
-
- /**
- * Commit the authentication (second phase).
- *
- * <p> This method is called if the LoginContext's
- * overall authentication succeeded
- * (the relevant REQUIRED, REQUISITE, SUFFICIENT and OPTIONAL LoginModules
- * succeeded).
- *
- * <p> If this LoginModule's own authentication attempt
- * succeeded (the importing of the Solaris authentication information
- * succeeded), then this method associates the Solaris Principals
- * with the {@code Subject} currently tied to the
- * {@code LoginModule}. If this LoginModule's
- * authentication attempted failed, then this method removes
- * any state that was originally saved.
- *
- * @exception LoginException if the commit fails
- *
- * @return true if this LoginModule's own login and commit attempts
- * succeeded, or false otherwise.
- */
- public boolean commit() throws LoginException {
- if (succeeded == false) {
- if (debug) {
- System.out.println("\t\t[SolarisLoginModule]: " +
- "did not add any Principals to Subject " +
- "because own authentication failed.");
- }
- return false;
- }
- if (subject.isReadOnly()) {
- throw new LoginException ("Subject is Readonly");
- }
- if (!subject.getPrincipals().contains(userPrincipal))
- subject.getPrincipals().add(userPrincipal);
- if (!subject.getPrincipals().contains(UIDPrincipal))
- subject.getPrincipals().add(UIDPrincipal);
- if (!subject.getPrincipals().contains(GIDPrincipal))
- subject.getPrincipals().add(GIDPrincipal);
- for (int i = 0; i < supplementaryGroups.size(); i++) {
- if (!subject.getPrincipals().contains(supplementaryGroups.get(i)))
- subject.getPrincipals().add(supplementaryGroups.get(i));
- }
-
- if (debug) {
- System.out.println("\t\t[SolarisLoginModule]: " +
- "added SolarisPrincipal,");
- System.out.println("\t\t\t\tSolarisNumericUserPrincipal,");
- System.out.println("\t\t\t\tSolarisNumericGroupPrincipal(s),");
- System.out.println("\t\t\t to Subject");
- }
-
- commitSucceeded = true;
- return true;
- }
-
-
- /**
- * Abort the authentication (second phase).
- *
- * <p> This method is called if the LoginContext's
- * overall authentication failed.
- * (the relevant REQUIRED, REQUISITE, SUFFICIENT and OPTIONAL LoginModules
- * did not succeed).
- *
- * <p> This method cleans up any state that was originally saved
- * as part of the authentication attempt from the {@code login}
- * and {@code commit} methods.
- *
- * @exception LoginException if the abort fails
- *
- * @return false if this LoginModule's own login and/or commit attempts
- * failed, and true otherwise.
- */
- @SuppressWarnings("removal")
- public boolean abort() throws LoginException {
- if (debug) {
- System.out.println("\t\t[SolarisLoginModule]: " +
- "aborted authentication attempt");
- }
-
- if (succeeded == false) {
- return false;
- } else if (succeeded == true && commitSucceeded == false) {
-
- // Clean out state
- succeeded = false;
- ss = null;
- userPrincipal = null;
- UIDPrincipal = null;
- GIDPrincipal = null;
- supplementaryGroups =
- new LinkedList<SolarisNumericGroupPrincipal>();
- } else {
- // overall authentication succeeded and commit succeeded,
- // but someone else's commit failed
- logout();
- }
- return true;
- }
-
- /**
- * Logout the user
- *
- * <p> This method removes the Principals associated
- * with the {@code Subject}.
- *
- * @exception LoginException if the logout fails
- *
- * @return true in all cases (this {@code LoginModule}
- * should not be ignored).
- */
- @SuppressWarnings("removal")
- public boolean logout() throws LoginException {
- if (debug) {
- System.out.println("\t\t[SolarisLoginModule]: " +
- "Entering logout");
- }
- if (subject.isReadOnly()) {
- throw new LoginException ("Subject is Readonly");
- }
- // remove the added Principals from the Subject
- subject.getPrincipals().remove(userPrincipal);
- subject.getPrincipals().remove(UIDPrincipal);
- subject.getPrincipals().remove(GIDPrincipal);
- for (int i = 0; i < supplementaryGroups.size(); i++) {
- subject.getPrincipals().remove(supplementaryGroups.get(i));
- }
-
- // clean out state
- ss = null;
- succeeded = false;
- commitSucceeded = false;
- userPrincipal = null;
- UIDPrincipal = null;
- GIDPrincipal = null;
- supplementaryGroups = new LinkedList<SolarisNumericGroupPrincipal>();
-
- if (debug) {
- System.out.println("\t\t[SolarisLoginModule]: " +
- "logged out Subject");
- }
- return true;
- }
-}
--- a/jdk/src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisSystem.java Sun Aug 20 20:36:12 2017 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-/*
- * Copyright (c) 2000, 2013, 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.auth.module;
-
-/**
- * This class implementation retrieves and makes available Solaris
- * UID/GID/groups information for the current user.
- *
- * @deprecated replaced by {@link UnixSystem}.
- * This class is subject to removal in a future version of Java SE.
- */
-@Deprecated(since="1.4", forRemoval=true)
-public class SolarisSystem {
-
- private native void getSolarisInfo();
-
- protected String username;
- protected long uid;
- protected long gid;
- protected long[] groups;
-
- /**
- * Instantiate a {@code SolarisSystem} and load
- * the native library to access the underlying system information.
- */
- public SolarisSystem() {
- System.loadLibrary("jaas_unix");
- getSolarisInfo();
- }
-
- /**
- * Get the username for the current Solaris user.
- *
- * @return the username for the current Solaris user.
- */
- public String getUsername() {
- return username;
- }
-
- /**
- * Get the UID for the current Solaris user.
- *
- * @return the UID for the current Solaris user.
- */
- public long getUid() {
- return uid;
- }
-
- /**
- * Get the GID for the current Solaris user.
- *
- * @return the GID for the current Solaris user.
- */
- public long getGid() {
- return gid;
- }
-
- /**
- * Get the supplementary groups for the current Solaris user.
- *
- * @return the supplementary groups for the current Solaris user.
- */
- public long[] getGroups() {
- return groups == null ? null : groups.clone();
- }
-}
--- a/jdk/src/jdk.security.auth/solaris/native/libjaas/Solaris.c Sun Aug 20 20:36:12 2017 -0700
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,152 +0,0 @@
-/*
- * Copyright (c) 2000, 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.
- */
-
-#include <jni.h>
-#include "com_sun_security_auth_module_SolarisSystem.h"
-#include <stdio.h>
-#include <unistd.h>
-#include <stdlib.h>
-#include <string.h>
-
-/* For POSIX-compliant getpwuid_r on Solaris */
-#if defined(__solaris__)
-#define _POSIX_PTHREAD_SEMANTICS
-#endif
-#include <pwd.h>
-
-static void throwIllegalArgumentException(JNIEnv *env, const char *msg) {
- jclass clazz = (*env)->FindClass(env, "java/lang/IllegalArgumentException");
- if (clazz != NULL)
- (*env)->ThrowNew(env, clazz, msg);
-}
-
-JNIEXPORT void JNICALL
-Java_com_sun_security_auth_module_SolarisSystem_getSolarisInfo
- (JNIEnv *env, jobject obj) {
-
- int i;
- long pwd_bufsize;
- char *pwd_buf = NULL;
- struct passwd pwd;
- struct passwd* p = NULL;
- jsize numSuppGroups = getgroups(0, NULL);
- jfieldID fid;
- jstring jstr;
- jlongArray jgroups;
- jlong *jgroupsAsArray;
- gid_t *groups;
- jclass cls;
-
- pwd_bufsize = sysconf(_SC_GETPW_R_SIZE_MAX);
- if (pwd_bufsize == -1) {
- pwd_bufsize = 1024;
- }
- pwd_buf = (char *)malloc(pwd_bufsize);
- groups = (gid_t *)calloc(numSuppGroups, sizeof(gid_t));
-
- if (pwd_buf == NULL || groups == NULL) {
- if (pwd_buf != NULL) {
- free(pwd_buf);
- }
- if (groups != NULL) {
- free(groups);
- }
- cls = (*env)->FindClass(env,"java/lang/OutOfMemoryError");
- if (cls != NULL) {
- (*env)->ThrowNew(env, cls, NULL);
- }
- return;
- }
-
- cls = (*env)->GetObjectClass(env, obj);
-
- if (getpwuid_r(getuid(), &pwd, pwd_buf, sizeof(pwd_buf), &p) != 0 &&
- p != NULL && getgroups(numSuppGroups, groups) != -1) {
-
- /*
- * set username
- */
- fid = (*env)->GetFieldID(env, cls, "username", "Ljava/lang/String;");
- if (fid == 0) {
- (*env)->ExceptionClear(env);
- throwIllegalArgumentException(env, "invalid field: username");
- goto cleanupAndReturn;
- }
- jstr = (*env)->NewStringUTF(env, pwd.pw_name);
- if (jstr == NULL) {
- goto cleanupAndReturn;
- }
- (*env)->SetObjectField(env, obj, fid, jstr);
-
- /*
- * set uid
- */
- fid = (*env)->GetFieldID(env, cls, "uid", "J");
- if (fid == 0) {
- (*env)->ExceptionClear(env);
- throwIllegalArgumentException(env, "invalid field: uid");
- goto cleanupAndReturn;
- }
- (*env)->SetLongField(env, obj, fid, pwd.pw_uid);
-
- /*
- * set gid
- */
- fid = (*env)->GetFieldID(env, cls, "gid", "J");
- if (fid == 0) {
- (*env)->ExceptionClear(env);
- throwIllegalArgumentException(env, "invalid field: gid");
- goto cleanupAndReturn;
- }
- (*env)->SetLongField(env, obj, fid, pwd.pw_gid);
-
- /*
- * set supplementary groups
- */
- fid = (*env)->GetFieldID(env, cls, "groups", "[J");
- if (fid == 0) {
- (*env)->ExceptionClear(env);
- throwIllegalArgumentException(env, "invalid field: groups");
- goto cleanupAndReturn;
- }
-
- jgroups = (*env)->NewLongArray(env, numSuppGroups);
- if (jgroups == NULL) {
- goto cleanupAndReturn;
- }
- jgroupsAsArray = (*env)->GetLongArrayElements(env, jgroups, 0);
- if (jgroupsAsArray == NULL) {
- goto cleanupAndReturn;
- }
- for (i = 0; i < numSuppGroups; i++)
- jgroupsAsArray[i] = groups[i];
- (*env)->ReleaseLongArrayElements(env, jgroups, jgroupsAsArray, 0);
- (*env)->SetObjectField(env, obj, fid, jgroups);
- }
-cleanupAndReturn:
- free(pwd_buf);
- free(groups);
- return;
-}
--- a/jdk/test/javax/security/auth/PrivateCredentialPermission/Subset.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/test/javax/security/auth/PrivateCredentialPermission/Subset.java Mon Aug 21 14:05:10 2017 +0000
@@ -34,7 +34,7 @@
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
-import com.sun.security.auth.SolarisPrincipal;
+import com.sun.security.auth.UnixPrincipal;
import javax.security.auth.Subject;
/*
@@ -46,7 +46,7 @@
* permission javax.security.auth.AuthPermission \
* "modifyPrivateCredentials";
* permission javax.security.auth.PrivateCredentialPermission \
- * "java.lang.String com.sun.security.auth.SolarisPrincipal \"user"", "read";
+ * "java.lang.String com.sun.security.auth.UnixPrincipal \"user"", "read";
* };
* The test verifies the following:
@@ -71,7 +71,7 @@
HashSet creds = new HashSet();
Subject emptys =
new Subject(false, //readOnly
- Collections.singleton(new SolarisPrincipal("user")),
+ Collections.singleton(new UnixPrincipal("user")),
Collections.EMPTY_SET,
creds);
/* Test principals */
@@ -104,7 +104,7 @@
creds.add(Boolean.TRUE);
Subject sremove =
new Subject(false, //readOnly
- Collections.singleton(new SolarisPrincipal("user")),
+ Collections.singleton(new UnixPrincipal("user")),
Collections.EMPTY_SET,
creds);
Set p2 = sremove.getPrivateCredentials();
@@ -184,7 +184,7 @@
creds1.add(new String("Exists"));
Subject scontain =
new Subject(false, //readOnly
- Collections.singleton(new SolarisPrincipal("user")),
+ Collections.singleton(new UnixPrincipal("user")),
Collections.EMPTY_SET,
creds1);
p2 = scontain.getPrivateCredentials();
@@ -237,7 +237,7 @@
creds2.add("ghi");
Subject sstring =
new Subject(false, //readOnly
- Collections.singleton(new SolarisPrincipal("user")),
+ Collections.singleton(new UnixPrincipal("user")),
Collections.EMPTY_SET,
creds2);
p2 = sstring.getPrivateCredentials();
@@ -262,7 +262,7 @@
creds4.add("Exists");
Subject scontain1 =
new Subject(false, //readOnly
- Collections.singleton(new SolarisPrincipal("user")),
+ Collections.singleton(new UnixPrincipal("user")),
Collections.EMPTY_SET,
creds4);
Set p3 = scontain1.getPrivateCredentials();
@@ -462,7 +462,7 @@
creds.add(new Integer(1));
Subject s =
new Subject(false, //readOnly
- Collections.singleton(new SolarisPrincipal("user")),
+ Collections.singleton(new UnixPrincipal("user")),
Collections.EMPTY_SET,
creds);
try {
--- a/jdk/test/javax/security/auth/PrivateCredentialPermission/Subset.policy Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/test/javax/security/auth/PrivateCredentialPermission/Subset.policy Mon Aug 21 14:05:10 2017 +0000
@@ -6,5 +6,5 @@
grant {
permission javax.security.auth.AuthPermission "modifyPrivateCredentials";
permission javax.security.auth.AuthPermission "modifyPublicCredentials";
- permission javax.security.auth.PrivateCredentialPermission "java.lang.String com.sun.security.auth.SolarisPrincipal \"user\"", "read";
+ permission javax.security.auth.PrivateCredentialPermission "java.lang.String com.sun.security.auth.UnixPrincipal \"user\"", "read";
};
--- a/jdk/test/sun/security/provider/PolicyFile/Comparator.java Sun Aug 20 20:36:12 2017 -0700
+++ b/jdk/test/sun/security/provider/PolicyFile/Comparator.java Mon Aug 21 14:05:10 2017 +0000
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2004, 2017, 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
@@ -42,7 +42,6 @@
import sun.security.provider.PolicyFile;
import com.sun.security.auth.UnixPrincipal;
import com.sun.security.auth.NTUserPrincipal;
-import com.sun.security.auth.SolarisPrincipal;
public class Comparator {
@@ -88,7 +87,7 @@
new X500Principal("cn=x500") };
private static final Principal[] badP = new Principal[] {
- new SolarisPrincipal("bad") };
+ new UnixPrincipal("bad") };
public static class PCompare1 implements Principal {