8022410: Fix Javac Warnings in com.sun.security.auth Package

Reviewed-by: darcy
This commit is contained in:
Dan Xu 2013-08-06 14:33:56 -07:00
parent 6c4cb95171
commit bcf263eb10
2 changed files with 63 additions and 67 deletions

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved.
* 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
@ -47,6 +47,10 @@ import javax.security.auth.PrivateCredentialPermission;
import sun.security.util.PropertyExpander;
import sun.security.provider.PolicyParser.PrincipalEntry;
import sun.security.provider.PolicyParser.GrantEntry;
import sun.security.provider.PolicyParser.PermissionEntry;
/**
* This class represents a default implementation for
* <code>javax.security.auth.Policy</code>.
@ -469,7 +473,8 @@ public class PolicyFile extends javax.security.auth.Policy {
* @param policyFile the policy Reader object.
*/
private void init(URL policy) {
PolicyParser pp = new PolicyParser(expandProperties);
sun.security.provider.PolicyParser pp =
new sun.security.provider.PolicyParser(expandProperties);
try {
InputStreamReader isr
= new InputStreamReader(getInputStream(policy));
@ -477,12 +482,12 @@ public class PolicyFile extends javax.security.auth.Policy {
isr.close();
KeyStore keyStore = initKeyStore(policy, pp.getKeyStoreUrl(),
pp.getKeyStoreType());
Enumeration<PolicyParser.GrantEntry> enum_ = pp.grantElements();
Enumeration<GrantEntry> enum_ = pp.grantElements();
while (enum_.hasMoreElements()) {
PolicyParser.GrantEntry ge = enum_.nextElement();
GrantEntry ge = enum_.nextElement();
addGrantEntry(ge, keyStore);
}
} catch (PolicyParser.ParsingException pe) {
} catch (sun.security.provider.PolicyParser.ParsingException pe) {
System.err.println(AUTH_POLICY +
rb.getString(".error.parsing.") + policy);
System.err.println(AUTH_POLICY +
@ -521,8 +526,8 @@ public class PolicyFile extends javax.security.auth.Policy {
*
* @return null if signedBy alias is not recognized
*/
CodeSource getCodeSource(PolicyParser.GrantEntry ge, KeyStore keyStore)
throws java.net.MalformedURLException
CodeSource getCodeSource(GrantEntry ge, KeyStore keyStore)
throws java.net.MalformedURLException
{
Certificate[] certs = null;
if (ge.signedBy != null) {
@ -559,20 +564,18 @@ public class PolicyFile extends javax.security.auth.Policy {
/**
* Add one policy entry to the vector.
*/
private void addGrantEntry(PolicyParser.GrantEntry ge,
KeyStore keyStore) {
private void addGrantEntry(GrantEntry ge, KeyStore keyStore) {
if (debug != null) {
debug.println("Adding policy entry: ");
debug.println(" signedBy " + ge.signedBy);
debug.println(" codeBase " + ge.codeBase);
if (ge.principals != null && ge.principals.size() > 0) {
ListIterator<PolicyParser.PrincipalEntry> li =
ge.principals.listIterator();
ListIterator<PrincipalEntry> li = ge.principals.listIterator();
while (li.hasNext()) {
PolicyParser.PrincipalEntry pppe = li.next();
debug.println(" " + pppe.principalClass +
" " + pppe.principalName);
PrincipalEntry pppe = li.next();
debug.println(" " + pppe.getPrincipalClass() +
" " + pppe.getPrincipalName());
}
}
debug.println();
@ -584,10 +587,9 @@ public class PolicyFile extends javax.security.auth.Policy {
if (codesource == null) return;
PolicyEntry entry = new PolicyEntry(codesource);
Enumeration<PolicyParser.PermissionEntry> enum_ =
ge.permissionElements();
Enumeration<PermissionEntry> enum_ = ge.permissionElements();
while (enum_.hasMoreElements()) {
PolicyParser.PermissionEntry pe = enum_.nextElement();
PermissionEntry pe = enum_.nextElement();
try {
// XXX special case PrivateCredentialPermission-SELF
Permission perm;
@ -998,11 +1000,11 @@ public class PolicyFile extends javax.security.auth.Policy {
return true;
}
ListIterator<PolicyParser.PrincipalEntry> pli =
scs.getPrincipals().listIterator();
ListIterator<PrincipalEntry> pli =
scs.getPrincipals().listIterator();
while (pli.hasNext()) {
PolicyParser.PrincipalEntry principal = pli.next();
PrincipalEntry principal = pli.next();
// XXX
// if the Policy entry's Principal does not contain a
@ -1050,30 +1052,29 @@ public class PolicyFile extends javax.security.auth.Policy {
* if (y == 1), it's the principal name.
*/
private String[][] getPrincipalInfo
(PolicyParser.PrincipalEntry principal,
final CodeSource accCs) {
(PrincipalEntry principal, final CodeSource accCs) {
// there are 3 possibilities:
// 1) the entry's Principal class and name are not wildcarded
// 2) the entry's Principal name is wildcarded only
// 3) the entry's Principal class and name are wildcarded
if (!principal.principalClass.equals
(PolicyParser.PrincipalEntry.WILDCARD_CLASS) &&
!principal.principalName.equals
(PolicyParser.PrincipalEntry.WILDCARD_NAME)) {
if (!principal.getPrincipalClass().equals
(PrincipalEntry.WILDCARD_CLASS) &&
!principal.getPrincipalName().equals
(PrincipalEntry.WILDCARD_NAME)) {
// build a PrivateCredentialPermission for the principal
// from the Policy entry
String[][] info = new String[1][2];
info[0][0] = principal.principalClass;
info[0][1] = principal.principalName;
info[0][0] = principal.getPrincipalClass();
info[0][1] = principal.getPrincipalName();
return info;
} else if (!principal.principalClass.equals
(PolicyParser.PrincipalEntry.WILDCARD_CLASS) &&
principal.principalName.equals
(PolicyParser.PrincipalEntry.WILDCARD_NAME)) {
} else if (!principal.getPrincipalClass().equals
(PrincipalEntry.WILDCARD_CLASS) &&
principal.getPrincipalName().equals
(PrincipalEntry.WILDCARD_NAME)) {
// build a PrivateCredentialPermission for all
// the Subject's principals that are instances of principalClass
@ -1088,7 +1089,7 @@ public class PolicyFile extends javax.security.auth.Policy {
// If it doesn't, we should stop here with a ClassCastException.
@SuppressWarnings("unchecked")
Class<? extends Principal> pClass = (Class<? extends Principal>)
Class.forName(principal.principalClass, false,
Class.forName(principal.getPrincipalClass(), false,
ClassLoader.getSystemClassLoader());
principalSet = scs.getSubject().getPrincipals(pClass);
} catch (Exception e) {
@ -1387,6 +1388,7 @@ public class PolicyFile extends javax.security.auth.Policy {
}
}
@SuppressWarnings("deprecation")
class PolicyPermissions extends PermissionCollection {
private static final long serialVersionUID = -1954188373270545523L;

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
* 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
@ -33,6 +33,7 @@ import java.security.cert.Certificate;
import java.lang.reflect.Constructor;
import javax.security.auth.Subject;
import sun.security.provider.PolicyParser.PrincipalEntry;
/**
* <p> This <code>SubjectCodeSource</code> class contains
@ -57,7 +58,7 @@ class SubjectCodeSource extends CodeSource implements java.io.Serializable {
});
private Subject subject;
private LinkedList<PolicyParser.PrincipalEntry> principals;
private LinkedList<PrincipalEntry> principals;
private static final Class[] PARAMS = { String.class };
private static final sun.security.util.Debug debug =
sun.security.util.Debug.getInstance("auth", "\t[Auth Access]");
@ -87,14 +88,14 @@ class SubjectCodeSource extends CodeSource implements java.io.Serializable {
* <code>SubjectCodeSource</code> <p>
*/
SubjectCodeSource(Subject subject,
LinkedList<PolicyParser.PrincipalEntry> principals,
LinkedList<PrincipalEntry> principals,
URL url, Certificate[] certs) {
super(url, certs);
this.subject = subject;
this.principals = (principals == null ?
new LinkedList<PolicyParser.PrincipalEntry>() :
new LinkedList<PolicyParser.PrincipalEntry>(principals));
new LinkedList<PrincipalEntry>() :
new LinkedList<PrincipalEntry>(principals));
sysClassLoader = java.security.AccessController.doPrivileged
(new java.security.PrivilegedAction<ClassLoader>() {
public ClassLoader run() {
@ -114,7 +115,7 @@ class SubjectCodeSource extends CodeSource implements java.io.Serializable {
* <code>SubjectCodeSource</code> as a <code>LinkedList</code>
* of <code>PolicyParser.PrincipalEntry</code> objects.
*/
LinkedList<PolicyParser.PrincipalEntry> getPrincipals() {
LinkedList<PrincipalEntry> getPrincipals() {
return principals;
}
@ -167,7 +168,7 @@ class SubjectCodeSource extends CodeSource implements java.io.Serializable {
*/
public boolean implies(CodeSource codesource) {
LinkedList<PolicyParser.PrincipalEntry> subjectList = null;
LinkedList<PrincipalEntry> subjectList = null;
if (codesource == null ||
!(codesource instanceof SubjectCodeSource) ||
@ -197,20 +198,19 @@ class SubjectCodeSource extends CodeSource implements java.io.Serializable {
return false;
}
ListIterator<PolicyParser.PrincipalEntry> li =
this.principals.listIterator(0);
ListIterator<PrincipalEntry> li = this.principals.listIterator(0);
while (li.hasNext()) {
PolicyParser.PrincipalEntry pppe = li.next();
PrincipalEntry pppe = li.next();
try {
// handle PrincipalComparators
Class<?> principalComparator = Class.forName(
pppe.principalClass, true, sysClassLoader);
pppe.getPrincipalClass(), true, sysClassLoader);
Constructor<?> c = principalComparator.getConstructor(PARAMS);
PrincipalComparator pc =
(PrincipalComparator)c.newInstance
(new Object[] { pppe.principalName });
(new Object[] { pppe.getPrincipalName() });
if (!pc.implies(that.getSubject())) {
if (debug != null)
@ -236,11 +236,10 @@ class SubjectCodeSource extends CodeSource implements java.io.Serializable {
Iterator<Principal> i =
that.getSubject().getPrincipals().iterator();
subjectList = new LinkedList<PolicyParser.PrincipalEntry>();
subjectList = new LinkedList<PrincipalEntry>();
while (i.hasNext()) {
Principal p = i.next();
PolicyParser.PrincipalEntry spppe =
new PolicyParser.PrincipalEntry
PrincipalEntry spppe = new PrincipalEntry
(p.getClass().getName(), p.getName());
subjectList.add(spppe);
}
@ -281,23 +280,19 @@ class SubjectCodeSource extends CodeSource implements java.io.Serializable {
* <i>pppe</i> argument.
*/
private boolean subjectListImpliesPrincipalEntry(
LinkedList<PolicyParser.PrincipalEntry> subjectList,
PolicyParser.PrincipalEntry pppe) {
LinkedList<PrincipalEntry> subjectList, PrincipalEntry pppe) {
ListIterator<PolicyParser.PrincipalEntry> li =
subjectList.listIterator(0);
ListIterator<PrincipalEntry> li = subjectList.listIterator(0);
while (li.hasNext()) {
PolicyParser.PrincipalEntry listPppe = li.next();
PrincipalEntry listPppe = li.next();
if (pppe.principalClass.equals
(PolicyParser.PrincipalEntry.WILDCARD_CLASS) ||
pppe.principalClass.equals
(listPppe.principalClass)) {
if (pppe.principalName.equals
(PolicyParser.PrincipalEntry.WILDCARD_NAME) ||
pppe.principalName.equals
(listPppe.principalName))
if (pppe.getPrincipalClass().equals
(PrincipalEntry.WILDCARD_CLASS) ||
pppe.getPrincipalClass().equals(listPppe.getPrincipalClass()))
{
if (pppe.getPrincipalName().equals
(PrincipalEntry.WILDCARD_NAME) ||
pppe.getPrincipalName().equals(listPppe.getPrincipalName()))
return true;
}
}
@ -390,13 +385,12 @@ class SubjectCodeSource extends CodeSource implements java.io.Serializable {
}
}
if (principals != null) {
ListIterator<PolicyParser.PrincipalEntry> li =
principals.listIterator();
ListIterator<PrincipalEntry> li = principals.listIterator();
while (li.hasNext()) {
PolicyParser.PrincipalEntry pppe = li.next();
PrincipalEntry pppe = li.next();
returnMe = returnMe + rb.getString("NEWLINE") +
pppe.principalClass + " " +
pppe.principalName;
pppe.getPrincipalClass() + " " +
pppe.getPrincipalName();
}
}
return returnMe;