This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Patch: FYI: java.security spec cleanups


I'm checking this in to both Classpath and libgcj.
This fixes a bunch of divergences between our java.security and the spec.

Tom

Index: ChangeLog
from  Tom Tromey  <tromey@redhat.com>

	* java/security/AccessController.java (checkPermission): Now
	throws AccessControlException.
	* java/security/AllPermission.java: Class now final.
	* java/security/Permission.java (getName): Now final.
	(name): Now private.
	(equals): New abstract method.
	* java/security/PermissionCollection.java (linesep): Now private.
	* java/security/Permissions.java: Class now final.
	* java/security/Security.java (Security): New private
	constructor.
	* java/security/UnresolvedPermission.java: Import
	java.security.cert.Certificate.  Class now final.
	* java/security/acl/Group.java: Now extends Principal.
	(isMember): Added Principal argument.
	* java/security/spec/X509EncodedKeySpec.java (getFormat): Now
	final.
	* java/security/spec/PKCS8EncodedKeySpec.java (getFormat): Now
	final.

Index: java/security/AccessController.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/security/AccessController.java,v
retrieving revision 1.1
diff -u -r1.1 AccessController.java
--- java/security/AccessController.java 2001/04/25 15:45:12 1.1
+++ java/security/AccessController.java 2001/10/13 23:18:44
@@ -65,6 +65,7 @@
    * allow the given permission.
    */
   public static void checkPermission(Permission perm)
+    throws AccessControlException
   {
     getContext().checkPermission(perm);
   }
Index: java/security/AllPermission.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/security/AllPermission.java,v
retrieving revision 1.1
diff -u -r1.1 AllPermission.java
--- java/security/AllPermission.java 2001/04/25 15:45:12 1.1
+++ java/security/AllPermission.java 2001/10/13 23:18:44
@@ -1,5 +1,5 @@
 /* AllPermission.java -- Permission to do anything
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2001 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -35,7 +35,7 @@
  *
  * @author Aaron M. Renn (arenn@urbanophile.com)
  */
-public class AllPermission extends Permission
+public final class AllPermission extends Permission
 {
   /**
    * This method initializes a new instance of <code>AllPermission</code>.  It
Index: java/security/Permission.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/security/Permission.java,v
retrieving revision 1.2
diff -u -r1.2 Permission.java
--- java/security/Permission.java 2001/04/25 15:45:12 1.2
+++ java/security/Permission.java 2001/10/13 23:18:44
@@ -1,5 +1,5 @@
 /* Permission.java -- The superclass for all permission objects
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2001 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -59,7 +59,7 @@
   /**
    * This is the name assigned to this permission object.
    */
-  protected String name;	// Taken from the serializable form information
+  private String name;		// Taken from the serializable form information
 
   /**
    * This method initializes a new instance of <code>Permission</code> to
@@ -75,7 +75,7 @@
    *
    * @return The name of this <code>Permission</code>
    */
-  public String getName()
+  public final String getName()
   {
     return (name);
   }
@@ -105,6 +105,11 @@
     if (sm != null)
       sm.checkPermission(this);
   }
+
+  /**
+   * Check to see if this object equals OBJ.
+   */
+  public abstract boolean equals (Object obj);
 
   /**
    * This method tests whether this <code>Permission</code> implies that the
Index: java/security/PermissionCollection.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/security/PermissionCollection.java,v
retrieving revision 1.2
diff -u -r1.2 PermissionCollection.java
--- java/security/PermissionCollection.java 2001/04/25 15:45:12 1.2
+++ java/security/PermissionCollection.java 2001/10/13 23:18:44
@@ -1,5 +1,5 @@
 /* PermissionCollection.java -- A collection of permission objects
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2001 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -60,10 +60,11 @@
    *
    * @author Aaron M. Renn (arenn@urbanophile.com)
    */
-public abstract class PermissionCollection extends Object implements
-  Serializable
+public abstract class PermissionCollection
+  extends Object
+  implements Serializable
 {
-  public static final String linesep = null;
+  private static final String linesep = null;
 
   static
   {
Index: java/security/Permissions.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/security/Permissions.java,v
retrieving revision 1.1
diff -u -r1.1 Permissions.java
--- java/security/Permissions.java 2001/04/25 15:45:12 1.1
+++ java/security/Permissions.java 2001/10/13 23:18:44
@@ -1,5 +1,5 @@
 /* Permissions.java -- A collection of permission collections
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2001 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -45,7 +45,9 @@
  *
  * @author Aaron M. Renn (arenn@urbanophile.com)
  */
-public class Permissions extends PermissionCollection implements Serializable
+public final class Permissions
+  extends PermissionCollection
+  implements Serializable
 {
   /**
    * Holds instances of <code>AllPermission</code>.
Index: java/security/Security.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/security/Security.java,v
retrieving revision 1.2
diff -u -r1.2 Security.java
--- java/security/Security.java 2001/04/25 15:45:12 1.2
+++ java/security/Security.java 2001/10/13 23:18:44
@@ -52,6 +52,11 @@
     loadProviders();
   }
 
+  // This class can't be instantiated.
+  private Security ()
+  {
+  }
+
   private static void loadProviders()
   {
     String separator = System.getProperty("file.separator");
Index: java/security/UnresolvedPermission.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/security/UnresolvedPermission.java,v
retrieving revision 1.1
diff -u -r1.1 UnresolvedPermission.java
--- java/security/UnresolvedPermission.java 2001/04/25 15:45:12 1.1
+++ java/security/UnresolvedPermission.java 2001/10/13 23:18:45
@@ -1,5 +1,5 @@
 /* UnresolvedPermission.java -- Placeholder for unresolved permissions.
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2001 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -27,6 +27,8 @@
 package java.security;
 
 import java.io.Serializable;
+// All uses of Certificate in this file refer to this class.
+import java.security.cert.Certificate;
 
 /**
  * This class is used to hold instances of all permissions that cannot
@@ -44,7 +46,9 @@
  *
  * @author Aaron M. Renn (arenn@urbanophile.com)
  */
-public class UnresolvedPermission extends Permission implements Serializable
+public final class UnresolvedPermission
+  extends Permission
+  implements Serializable
 {
 
   /**
Index: java/security/acl/Group.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/security/acl/Group.java,v
retrieving revision 1.1
diff -u -r1.1 Group.java
--- java/security/acl/Group.java 2001/04/25 15:45:13 1.1
+++ java/security/acl/Group.java 2001/10/13 23:18:45
@@ -1,5 +1,5 @@
 /* Group.java -- Represents a group of Principals
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2001 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -39,7 +39,7 @@
  *
  * @author Aaron M. Renn (arenn@urbanophile.com)
  */
-public interface Group
+public interface Group extends Principal
 {
   /**
    * This method adds a new <code>Principal</code> to this group.
@@ -67,7 +67,7 @@
    *
    * @return <code>true</code> if the user is member, <code>false</code> otherwise
    */
-  public abstract boolean isMember();
+  public abstract boolean isMember(Principal member);
 
   /**
    * This method returns a list of all members of the group as an 
Index: java/security/spec/PKCS8EncodedKeySpec.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/security/spec/PKCS8EncodedKeySpec.java,v
retrieving revision 1.1
diff -u -r1.1 PKCS8EncodedKeySpec.java
--- java/security/spec/PKCS8EncodedKeySpec.java 2001/04/25 15:45:13 1.1
+++ java/security/spec/PKCS8EncodedKeySpec.java 2001/10/13 23:18:45
@@ -1,5 +1,5 @@
 /* PKCS8EncodedKeySpec.java --- PKCS8 Encoded Key Specificaton class
-   Copyright (C) 1999 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2001 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -62,7 +62,7 @@
 
 	@return a string representing the name
 */
-  public String getFormat()
+  public final String getFormat()
   {
     return "PKCS#8";
   }
Index: java/security/spec/X509EncodedKeySpec.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/security/spec/X509EncodedKeySpec.java,v
retrieving revision 1.1
diff -u -r1.1 X509EncodedKeySpec.java
--- java/security/spec/X509EncodedKeySpec.java 2001/04/25 15:45:13 1.1
+++ java/security/spec/X509EncodedKeySpec.java 2001/10/13 23:18:45
@@ -1,5 +1,5 @@
 /* X509EncodedKeySpec.java --- X.509 Encoded Key Specificaton class
-   Copyright (C) 1999 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2001 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -63,7 +63,7 @@
 
      @return a string representing the name
   */
-  public String getFormat()
+  public final String getFormat()
   {
     return "X.509";
   }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]