gcc/java:
authorbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 25 Apr 2001 15:45:15 +0000 (15:45 +0000)
committerbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 25 Apr 2001 15:45:15 +0000 (15:45 +0000)
commit3f0ac9ff1c5ee8e74638815f744c8a8507c0e10f
treee9e280e2d95c4a16d714ee23d9f0345ef0401260
parentcbb71249e7abe7f713d5458520378630dc1f59d1
gcc/java:

2001-04-25  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

* decl.c (init_decl_processing): Add new class "protectionDomain"
field.
* class.c (make_class_data): Set initial value for "protectionDomain".

libjava:

2001-04-25  Bryce McKinlay  <bryce@albatross.co.nz>

java.security merge and ClassLoader compliance fixes.

* java/lang/Class.h (Class): Include ProtectionDomain.h.
New protectionDomain field.
(forName): Add initialize parameter. Fixes declaration to comply with
JDK spec.
* java/lang/natClass.cc (forName): Correct declaration of the three-arg
variant. Honour "initialize" flag.
(getProtectionDomain0): New method.
* java/lang/Class.java: Fix forName() declaration.
(getPackage): New method based on Classpath implementation.
(getProtectionDomain0): New native method decl.
(getProtectionDomain): New method.
* java/lang/ClassLoader.java (getParent): Now final.
(definedPackages): New field.
(getPackage): New.
(defineClass): New variant with protectionDomain argument.
(definePackage): New.
(getPackages): New.
(findSystemClass): Now final.
(getSystemResourceAsStream): Remove redundant "final" modifier.
(getSystemResource): Remove redundant "final" modifier.
(getResources): Now final.
(protectionDomainPermission): New static field.
(unknownProtectionDomain): Ditto.
(defaultProtectionDomain): Ditto.
(getSystemClassLoader): Now non-native.
* java/util/ResourceBundle.java (tryGetSomeBundle): Use the correct
arguments for Class.forName().
* java/lang/Package.java: New file.
* gnu/gcj/runtime/VMClassLoader.java (getVMClassLoader): Removed.
(instance): Static initialize singleton.
(findClass): Override this, not findSystemClass.
* java/lang/natClassLoader.cc (defineClass0): Set class's
protectionDomain field as specified.
(getSystemClassLoader): Removed.
(findClass): Renamed from findSystemClass. Call the interpreter via
URLClassLoader.findClass if loading class via dlopen fails.

* java/security/*.java: java.security import/merge with Classpath.
* java/security/acl/*.java: Likewise.
* java/security/interfaces/*.java: Likewise.
* java/security/spec/*.java: Likewise.
* java/net/NetPermission.java: Likewise.
* java/net/SocketPermission.java: Likewise.
* gnu/java/security/provider/DefaultPolicy.java: Likewise.

* Makefile.am: Add new classes.
* Makefile.in: Rebuilt.
* gcj/javaprims.h: CNI namespace rebuild.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41543 138bc75d-0d04-0410-961f-82ee72b054a4
115 files changed:
gcc/java/ChangeLog
gcc/java/class.c
gcc/java/decl.c
libjava/ChangeLog
libjava/Makefile.am
libjava/Makefile.in
libjava/gcj/Makefile.in
libjava/gcj/javaprims.h
libjava/gnu/gcj/runtime/VMClassLoader.java
libjava/gnu/java/security/provider/DefaultPolicy.java [new file with mode: 0644]
libjava/java/lang/Class.h
libjava/java/lang/Class.java
libjava/java/lang/ClassLoader.java
libjava/java/lang/Package.java [new file with mode: 0644]
libjava/java/lang/natClass.cc
libjava/java/lang/natClassLoader.cc
libjava/java/net/NetPermission.java [new file with mode: 0644]
libjava/java/net/SocketPermission.java [new file with mode: 0644]
libjava/java/security/AccessControlContext.java [new file with mode: 0644]
libjava/java/security/AccessControlException.java [new file with mode: 0644]
libjava/java/security/AccessController.java [new file with mode: 0644]
libjava/java/security/AlgorithmParameterGenerator.java [new file with mode: 0644]
libjava/java/security/AlgorithmParameterGeneratorSpi.java
libjava/java/security/AlgorithmParameters.java [new file with mode: 0644]
libjava/java/security/AlgorithmParametersSpi.java [new file with mode: 0644]
libjava/java/security/AllPermission.java [new file with mode: 0644]
libjava/java/security/BasicPermission.java
libjava/java/security/Certificate.java [new file with mode: 0644]
libjava/java/security/CodeSource.java [new file with mode: 0644]
libjava/java/security/DigestException.java
libjava/java/security/DigestInputStream.java [new file with mode: 0644]
libjava/java/security/DigestOutputStream.java
libjava/java/security/DomainCombiner.java [new file with mode: 0644]
libjava/java/security/DummyKeyPairGenerator.java [new file with mode: 0644]
libjava/java/security/DummyMessageDigest.java [new file with mode: 0644]
libjava/java/security/DummySignature.java [new file with mode: 0644]
libjava/java/security/GeneralSecurityException.java
libjava/java/security/Guard.java
libjava/java/security/GuardedObject.java [new file with mode: 0644]
libjava/java/security/Identity.java [new file with mode: 0644]
libjava/java/security/IdentityScope.java [new file with mode: 0644]
libjava/java/security/InvalidAlgorithmParameterException.java
libjava/java/security/InvalidKeyException.java
libjava/java/security/InvalidParameterException.java
libjava/java/security/Key.java
libjava/java/security/KeyException.java
libjava/java/security/KeyFactory.java [new file with mode: 0644]
libjava/java/security/KeyFactorySpi.java [new file with mode: 0644]
libjava/java/security/KeyManagementException.java [new file with mode: 0644]
libjava/java/security/KeyPair.java
libjava/java/security/KeyPairGenerator.java
libjava/java/security/KeyPairGeneratorSpi.java
libjava/java/security/KeyStore.java [new file with mode: 0644]
libjava/java/security/KeyStoreException.java [new file with mode: 0644]
libjava/java/security/KeyStoreSpi.java [new file with mode: 0644]
libjava/java/security/MessageDigest.java
libjava/java/security/MessageDigestSpi.java [new file with mode: 0644]
libjava/java/security/NoSuchAlgorithmException.java
libjava/java/security/NoSuchProviderException.java
libjava/java/security/Permission.java
libjava/java/security/PermissionCollection.java
libjava/java/security/Permissions.java [new file with mode: 0644]
libjava/java/security/Policy.java [new file with mode: 0644]
libjava/java/security/Principal.java
libjava/java/security/PrivateKey.java
libjava/java/security/PrivilegedAction.java [new file with mode: 0644]
libjava/java/security/PrivilegedActionException.java [new file with mode: 0644]
libjava/java/security/PrivilegedExceptionAction.java [new file with mode: 0644]
libjava/java/security/ProtectionDomain.java [new file with mode: 0644]
libjava/java/security/Provider.java
libjava/java/security/ProviderException.java [new file with mode: 0644]
libjava/java/security/PublicKey.java
libjava/java/security/SecureClassLoader.java
libjava/java/security/SecureRandom.java
libjava/java/security/SecureRandomSpi.java [new file with mode: 0644]
libjava/java/security/Security.java
libjava/java/security/SecurityPermission.java [new file with mode: 0644]
libjava/java/security/Signature.java
libjava/java/security/SignatureException.java
libjava/java/security/SignatureSpi.java [new file with mode: 0644]
libjava/java/security/SignedObject.java [new file with mode: 0644]
libjava/java/security/Signer.java [new file with mode: 0644]
libjava/java/security/UnrecoverableKeyException.java [new file with mode: 0644]
libjava/java/security/UnresolvedPermission.java [new file with mode: 0644]
libjava/java/security/acl/Acl.java [new file with mode: 0644]
libjava/java/security/acl/AclEntry.java [new file with mode: 0644]
libjava/java/security/acl/AclNotFoundException.java [new file with mode: 0644]
libjava/java/security/acl/Group.java [new file with mode: 0644]
libjava/java/security/acl/LastOwnerException.java [new file with mode: 0644]
libjava/java/security/acl/NotOwnerException.java [new file with mode: 0644]
libjava/java/security/acl/Owner.java [new file with mode: 0644]
libjava/java/security/acl/Permission.java [new file with mode: 0644]
libjava/java/security/interfaces/DSAKey.java
libjava/java/security/interfaces/DSAKeyPairGenerator.java [new file with mode: 0644]
libjava/java/security/interfaces/DSAParams.java
libjava/java/security/interfaces/DSAPrivateKey.java
libjava/java/security/interfaces/DSAPublicKey.java
libjava/java/security/interfaces/RSAKey.java [new file with mode: 0644]
libjava/java/security/interfaces/RSAPrivateCrtKey.java
libjava/java/security/interfaces/RSAPrivateKey.java
libjava/java/security/interfaces/RSAPublicKey.java
libjava/java/security/spec/AlgorithmParameterSpec.java
libjava/java/security/spec/DSAParameterSpec.java [new file with mode: 0644]
libjava/java/security/spec/DSAPrivateKeySpec.java [new file with mode: 0644]
libjava/java/security/spec/DSAPublicKeySpec.java [new file with mode: 0644]
libjava/java/security/spec/EncodedKeySpec.java [new file with mode: 0644]
libjava/java/security/spec/InvalidKeySpecException.java
libjava/java/security/spec/InvalidParameterSpecException.java
libjava/java/security/spec/KeySpec.java
libjava/java/security/spec/PKCS8EncodedKeySpec.java [new file with mode: 0644]
libjava/java/security/spec/RSAKeyGenParameterSpec.java [new file with mode: 0644]
libjava/java/security/spec/RSAPrivateCrtKeySpec.java
libjava/java/security/spec/RSAPrivateKeySpec.java
libjava/java/security/spec/RSAPublicKeySpec.java
libjava/java/security/spec/X509EncodedKeySpec.java [new file with mode: 0644]