summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authorAbhishek Koneru <akoneru@redhat.com>2012-07-09 15:12:11 -0400
committerAde Lee <alee@redhat.com>2012-07-12 16:42:18 -0400
commit15ac6d2b8e83a73ac1f62ab0da0d6a85717f28fd (patch)
treef3bd2a816e816ad565f13ce90816a7fd7fb32454 /base
parent9e4e40b80de0ba47702392b9ad6ccecf67496db7 (diff)
downloadpki-15ac6d2b8e83a73ac1f62ab0da0d6a85717f28fd.tar.gz
pki-15ac6d2b8e83a73ac1f62ab0da0d6a85717f28fd.tar.xz
pki-15ac6d2b8e83a73ac1f62ab0da0d6a85717f28fd.zip
NO_HASHCODE_OVERRIDDEN
Diffstat (limited to 'base')
-rw-r--r--base/common/src/com/netscape/certsrv/base/MetaAttributeDef.java54
-rw-r--r--base/common/src/com/netscape/certsrv/util/StatsEvent.java2
-rw-r--r--base/common/src/com/netscape/cms/publish/publishers/FileBasedPublisher.java6
-rw-r--r--base/common/src/com/netscape/cms/servlet/base/CMSStartServlet.java4
-rw-r--r--base/common/src/com/netscape/cmscore/apps/CMSEngine.java9
-rw-r--r--base/common/src/com/netscape/cmscore/profile/ProfileSubsystem.java4
-rw-r--r--base/common/src/com/netscape/cmscore/realm/PKIJNDIRealm.java3
-rw-r--r--base/common/src/com/netscape/cmscore/request/RequestRepository.java2
-rw-r--r--base/common/src/com/netscape/cmscore/security/PWsdrCache.java10
-rw-r--r--base/common/test/com/netscape/cmscore/dbs/CertRecordListTest.java2
-rw-r--r--base/common/test/com/netscape/cmscore/dbs/DBRegistryTest.java2
-rw-r--r--base/common/test/com/netscape/cmscore/request/RequestTest.java2
-rw-r--r--base/java-tools/src/com/netscape/cmstools/PasswordCache.java12
-rw-r--r--base/util/src/com/netscape/cmsutil/radius/UserPasswordAttribute.java2
-rw-r--r--base/util/src/netscape/security/acl/PermissionImpl.java8
-rw-r--r--base/util/src/netscape/security/provider/DSA.java9
-rw-r--r--base/util/src/netscape/security/provider/RSAPublicKey.java39
-rw-r--r--base/util/src/netscape/security/util/BigInt.java9
-rw-r--r--base/util/src/netscape/security/util/DerInputStream.java8
-rw-r--r--base/util/src/netscape/security/util/DerValue.java11
-rw-r--r--base/util/src/netscape/security/x509/AVA.java9
-rw-r--r--base/util/src/netscape/security/x509/AlgorithmId.java13
-rw-r--r--base/util/src/netscape/security/x509/CRLReasonExtension.java8
-rw-r--r--base/util/src/netscape/security/x509/GeneralSubtree.java2
-rw-r--r--base/util/src/netscape/security/x509/GeneralSubtrees.java2
25 files changed, 164 insertions, 68 deletions
diff --git a/base/common/src/com/netscape/certsrv/base/MetaAttributeDef.java b/base/common/src/com/netscape/certsrv/base/MetaAttributeDef.java
index 63480478f..087110a0f 100644
--- a/base/common/src/com/netscape/certsrv/base/MetaAttributeDef.java
+++ b/base/common/src/com/netscape/certsrv/base/MetaAttributeDef.java
@@ -129,29 +129,41 @@ public class MetaAttributeDef {
return newDef;
}
- /**
- * Compares this attribute definition with another, for equality.
- * <P>
- *
- * @return true iff names, valueClasses and object identifiers
- * are identical.
- */
- public boolean equals(Object other) {
- if (other == this)
- return true;
-
- if (other instanceof MetaAttributeDef) {
- MetaAttributeDef otherDef = (MetaAttributeDef) other;
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((mName == null) ? 0 : mName.hashCode());
+ result = prime * result + ((mOid == null) ? 0 : mOid.hashCode());
+ result = prime * result + ((mValueClass == null) ? 0 : mValueClass.hashCode());
+ return result;
+ }
- if ((mOid != null && otherDef.mOid != null &&
- !mOid.equals(otherDef.mOid)) ||
- (mOid == null && otherDef.mOid != null) ||
- !mName.equals(otherDef.mName) ||
- !mValueClass.equals(otherDef.mValueClass)) {
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ MetaAttributeDef other = (MetaAttributeDef) obj;
+ if (mName == null) {
+ if (other.mName != null)
return false;
- }
- }
- return false;
+ } else if (!mName.equals(other.mName))
+ return false;
+ if (mOid == null) {
+ if (other.mOid != null)
+ return false;
+ } else if (!mOid.equals(other.mOid))
+ return false;
+ if (mValueClass == null) {
+ if (other.mValueClass != null)
+ return false;
+ } else if (!mValueClass.equals(other.mValueClass))
+ return false;
+ return true;
}
/**
diff --git a/base/common/src/com/netscape/certsrv/util/StatsEvent.java b/base/common/src/com/netscape/certsrv/util/StatsEvent.java
index 4137aa3b2..07bbf9547 100644
--- a/base/common/src/com/netscape/certsrv/util/StatsEvent.java
+++ b/base/common/src/com/netscape/certsrv/util/StatsEvent.java
@@ -116,7 +116,7 @@ public class StatsEvent {
long a = getTimeTakenSqSum();
long b = (-2 * getAvg() * getTimeTaken());
long c = getAvg() * getAvg() * getNoOfOperations();
- return (long) Math.sqrt((a + b + c) / getNoOfOperations());
+ return (long) Math.sqrt(((double) (a + b + c)) / getNoOfOperations());
}
}
diff --git a/base/common/src/com/netscape/cms/publish/publishers/FileBasedPublisher.java b/base/common/src/com/netscape/cms/publish/publishers/FileBasedPublisher.java
index 6a1d528ac..c48aa2db4 100644
--- a/base/common/src/com/netscape/cms/publish/publishers/FileBasedPublisher.java
+++ b/base/common/src/com/netscape/cms/publish/publishers/FileBasedPublisher.java
@@ -366,8 +366,9 @@ public class FileBasedPublisher implements ILdapPublisher, IExtendedPluginInfo {
destName = baseName + ".der";
destFile = new File(destName);
- if (destFile.exists())
+ if (destFile.exists()) {
destFile.delete();
+ }
renameFile = new File(tempFile);
renameFile.renameTo(destFile);
@@ -402,8 +403,9 @@ public class FileBasedPublisher implements ILdapPublisher, IExtendedPluginInfo {
destName = baseName + ".b64";
destFile = new File(destName);
- if (destFile.exists())
+ if (destFile.exists()) {
destFile.delete();
+ }
renameFile = new File(tempFile);
renameFile.renameTo(destFile);
}
diff --git a/base/common/src/com/netscape/cms/servlet/base/CMSStartServlet.java b/base/common/src/com/netscape/cms/servlet/base/CMSStartServlet.java
index 6f9f43d3a..a8a4008b7 100644
--- a/base/common/src/com/netscape/cms/servlet/base/CMSStartServlet.java
+++ b/base/common/src/com/netscape/cms/servlet/base/CMSStartServlet.java
@@ -75,7 +75,9 @@ public class CMSStartServlet extends HttpServlet {
// Remove the original file if and only if
// the backup copy was successful.
if (f.exists()) {
- f1.delete();
+ if (!f1.delete()) {
+ CMS.debug("CMSStartServlet: init: Cannot delete file : " + old_path);
+ }
// Make certain that the new file has
// the correct permissions.
diff --git a/base/common/src/com/netscape/cmscore/apps/CMSEngine.java b/base/common/src/com/netscape/cmscore/apps/CMSEngine.java
index 13a8bb6bf..84afb8474 100644
--- a/base/common/src/com/netscape/cmscore/apps/CMSEngine.java
+++ b/base/common/src/com/netscape/cmscore/apps/CMSEngine.java
@@ -657,12 +657,11 @@ public class CMSEngine implements ICMSEngine {
try {
/* if the file is not there, create one */
File f = new File(path);
- if (!f.exists()) {
- f.createNewFile();
- }
- } catch (Exception e) {
+ f.createNewFile();
+ } catch (IOException e) {
+ CMS.debug("Cannot create file: " + path + " ." + e.toString());
+ throw new EBaseException("Cannot create file: " + path + " ." + e.toString());
}
-
return new FileConfigStore(path);
}
diff --git a/base/common/src/com/netscape/cmscore/profile/ProfileSubsystem.java b/base/common/src/com/netscape/cmscore/profile/ProfileSubsystem.java
index 45807d6e9..1ec3c009a 100644
--- a/base/common/src/com/netscape/cmscore/profile/ProfileSubsystem.java
+++ b/base/common/src/com/netscape/cmscore/profile/ProfileSubsystem.java
@@ -173,7 +173,9 @@ public class ProfileSubsystem implements IProfileSubsystem {
mConfig.removeSubStore(id);
File file1 = new File(configPath);
- file1.delete();
+ if (!file1.delete()) {
+ CMS.debug("ProfileSubsystem: deleteProfile: Cannot delete the configuration file : " + configPath);
+ }
mProfileIds.removeElement(id);
mProfiles.remove(id);
mProfileClassIds.remove(id);
diff --git a/base/common/src/com/netscape/cmscore/realm/PKIJNDIRealm.java b/base/common/src/com/netscape/cmscore/realm/PKIJNDIRealm.java
index 0576bcf58..86debf3da 100644
--- a/base/common/src/com/netscape/cmscore/realm/PKIJNDIRealm.java
+++ b/base/common/src/com/netscape/cmscore/realm/PKIJNDIRealm.java
@@ -423,13 +423,12 @@ public class PKIJNDIRealm extends JNDIRealm {
String right = expBlock[1];
if (left != null) {
- left.trim();
+ left = left.trim();
} else {
return allowed;
}
//Massage the right hand side of this expression to be a legal string value.
if (right != null) {
- right.trim();
right = right.replace("\"", "");
right = right.trim();
} else {
diff --git a/base/common/src/com/netscape/cmscore/request/RequestRepository.java b/base/common/src/com/netscape/cmscore/request/RequestRepository.java
index ed18c7048..31edc31b0 100644
--- a/base/common/src/com/netscape/cmscore/request/RequestRepository.java
+++ b/base/common/src/com/netscape/cmscore/request/RequestRepository.java
@@ -174,7 +174,7 @@ class RequestRepository
}
}
- if (obj != null || (obj instanceof RepositoryRecord)) {
+ if (obj != null && (obj instanceof RepositoryRecord)) {
record = (RepositoryRecord) obj;
status = record.getPublishingStatus();
} else {
diff --git a/base/common/src/com/netscape/cmscore/security/PWsdrCache.java b/base/common/src/com/netscape/cmscore/security/PWsdrCache.java
index 810605d41..e9c7af8e5 100644
--- a/base/common/src/com/netscape/cmscore/security/PWsdrCache.java
+++ b/base/common/src/com/netscape/cmscore/security/PWsdrCache.java
@@ -382,7 +382,9 @@ public class PWsdrCache {
if (tmpPWcache.exists()) {
// it wasn't removed?
- tmpPWcache.delete();
+ if (!tmpPWcache.delete()) {
+ debug("Could not delete the existing " + mPWcachedb + ".tmp file.");
+ }
tmpPWcache = new File(mPWcachedb + ".tmp");
}
outstream = new FileOutputStream(mPWcachedb + ".tmp");
@@ -417,10 +419,12 @@ public class PWsdrCache {
origFile.getCanonicalPath());
} catch (IOException e) {
CMS.debug("Unable to change file permissions on "
- + origFile.toString());
+ + origFile.toString());
}
}
- tmpPWcache.delete();
+ if (!tmpPWcache.delete()) {
+ debug("Could not delete the existing " + mPWcachedb + ".tmp file.");
+ }
debug("operation completed for " + mPWcachedb);
}
} catch (Exception exx) {
diff --git a/base/common/test/com/netscape/cmscore/dbs/CertRecordListTest.java b/base/common/test/com/netscape/cmscore/dbs/CertRecordListTest.java
index d9c24106c..100d63264 100644
--- a/base/common/test/com/netscape/cmscore/dbs/CertRecordListTest.java
+++ b/base/common/test/com/netscape/cmscore/dbs/CertRecordListTest.java
@@ -58,7 +58,7 @@ public class CertRecordListTest extends CMSBaseTestCase {
assertEquals(7, dbList.lastIndexGetElementAtCalledWith);
}
- public class DBVirtualListStub<T> extends DBVirtualListDefaultStub<T> {
+ public static class DBVirtualListStub<T> extends DBVirtualListDefaultStub<T> {
public int size = 0;
public int getElementAtCallCount = 0;
public int lastIndexGetElementAtCalledWith = 0;
diff --git a/base/common/test/com/netscape/cmscore/dbs/DBRegistryTest.java b/base/common/test/com/netscape/cmscore/dbs/DBRegistryTest.java
index 4a52bbcef..cb61a12d3 100644
--- a/base/common/test/com/netscape/cmscore/dbs/DBRegistryTest.java
+++ b/base/common/test/com/netscape/cmscore/dbs/DBRegistryTest.java
@@ -110,7 +110,7 @@ public class DBRegistryTest extends CMSBaseTestCase {
assertTrue(extAttrMapper.mapLDAPAttrsCalled);
}
- class DBSubsystemStub extends DBSubsystemDefaultStub {
+ static class DBSubsystemStub extends DBSubsystemDefaultStub {
DBRegistry registry;
public IDBRegistry getRegistry() {
diff --git a/base/common/test/com/netscape/cmscore/request/RequestTest.java b/base/common/test/com/netscape/cmscore/request/RequestTest.java
index b3a8c6ee5..4f761f982 100644
--- a/base/common/test/com/netscape/cmscore/request/RequestTest.java
+++ b/base/common/test/com/netscape/cmscore/request/RequestTest.java
@@ -601,7 +601,7 @@ public class RequestTest extends CMSBaseTestCase {
* getting a value out. It assumes BtoA is always called first, stores
* the value passed in, and then returns that value for BtoA.
*/
- class CMSMemoryStub extends CMSEngineDefaultStub {
+ static class CMSMemoryStub extends CMSEngineDefaultStub {
boolean bToACalled = false;
byte[] bToACalledWith = null;
diff --git a/base/java-tools/src/com/netscape/cmstools/PasswordCache.java b/base/java-tools/src/com/netscape/cmstools/PasswordCache.java
index 89254a2a5..d97a21706 100644
--- a/base/java-tools/src/com/netscape/cmstools/PasswordCache.java
+++ b/base/java-tools/src/com/netscape/cmstools/PasswordCache.java
@@ -609,7 +609,9 @@ class PWsdrCache {
if (tmpPWcache.exists()) {
// it wasn't removed?
- tmpPWcache.delete();
+ if (!tmpPWcache.delete()) {
+ debug("Could not delete the existing " + mPWcachedb + ".tmp file.");
+ }
}
outstream = new FileOutputStream(mPWcachedb + ".tmp");
@@ -626,7 +628,9 @@ class PWsdrCache {
try {
// Always remove any pre-existing target file
if (origFile.exists()) {
- origFile.delete();
+ if (!origFile.delete()) {
+ debug("Could not delete the existing " + mPWcachedb + "file.");
+ }
}
if (isNT()) {
@@ -644,7 +648,9 @@ class PWsdrCache {
// Remove the temporary file if and only if
// the "rename" was successful.
if (origFile.exists()) {
- tmpPWcache.delete();
+ if (!tmpPWcache.delete()) {
+ debug("Could not delete the existing " + mPWcachedb + ".tmp file.");
+ }
// Make certain that the final file has
// the correct permissions.
diff --git a/base/util/src/com/netscape/cmsutil/radius/UserPasswordAttribute.java b/base/util/src/com/netscape/cmsutil/radius/UserPasswordAttribute.java
index 31c27cdfd..d87811d11 100644
--- a/base/util/src/com/netscape/cmsutil/radius/UserPasswordAttribute.java
+++ b/base/util/src/com/netscape/cmsutil/radius/UserPasswordAttribute.java
@@ -61,7 +61,7 @@ public class UserPasswordAttribute extends Attribute {
if (i < up.length) {
ret[i] = (byte) (sum[i % 16] ^ up[i]);
} else {
- ret[i] = (byte) (sum[i % 16] ^ 0);
+ ret[i] = sum[i % 16];
}
md5.update(ret[i]);
if ((i % 16) == 15) {
diff --git a/base/util/src/netscape/security/acl/PermissionImpl.java b/base/util/src/netscape/security/acl/PermissionImpl.java
index b20570a81..80b36e1da 100644
--- a/base/util/src/netscape/security/acl/PermissionImpl.java
+++ b/base/util/src/netscape/security/acl/PermissionImpl.java
@@ -54,6 +54,14 @@ public class PermissionImpl implements Permission {
}
}
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((permission == null) ? 0 : permission.hashCode());
+ return result;
+ }
+
/**
* Prints a stringified version of the permission.
*
diff --git a/base/util/src/netscape/security/provider/DSA.java b/base/util/src/netscape/security/provider/DSA.java
index 64575b870..9403475e0 100644
--- a/base/util/src/netscape/security/provider/DSA.java
+++ b/base/util/src/netscape/security/provider/DSA.java
@@ -311,11 +311,12 @@ public final class DSA extends Signature {
*/
private int compareSeeds(int[] seed1, int[] seed2) {
- if ((seed1 == null && seed1 == null) ||
- (seed1 == null && seed2 != null) ||
- (seed1 != null && seed2 == null) ||
- seed1.length != seed2.length)
+ if (seed1 == null || seed2 == null) {
return 1;
+ }
+ if (seed1.length != seed2.length) {
+ return 1;
+ }
for (int i = 0; i < seed1.length; i++) {
if (seed1[i] != seed2[i])
diff --git a/base/util/src/netscape/security/provider/RSAPublicKey.java b/base/util/src/netscape/security/provider/RSAPublicKey.java
index 40f5583ac..bd5aa2fe4 100644
--- a/base/util/src/netscape/security/provider/RSAPublicKey.java
+++ b/base/util/src/netscape/security/provider/RSAPublicKey.java
@@ -150,23 +150,34 @@ public final class RSAPublicKey extends X509Key implements Serializable {
}
@Override
- public boolean equals(Object object) {
+ public int hashCode() {
+ final int prime = 31;
+ int result = super.hashCode();
+ result = prime * result + ((modulus == null) ? 0 : modulus.hashCode());
+ result = prime * result + ((publicExponent == null) ? 0 : publicExponent.hashCode());
+ return result;
+ }
- if (object == null) {
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (!super.equals(obj))
return false;
- }
- if (object instanceof RSAPublicKey) {
- RSAPublicKey rhs = (RSAPublicKey) object;
- if (this == rhs) {
- return true;
- }
- if (!(bigIntEquals(this.modulus, rhs.modulus) && bigIntEquals(this.publicExponent, rhs.publicExponent))) {
+ if (getClass() != obj.getClass())
+ return false;
+ RSAPublicKey other = (RSAPublicKey) obj;
+ if (modulus == null) {
+ if (other.modulus != null)
return false;
- }
- return super.equals(rhs);
- }
-
- return false;
+ } else if (!modulus.equals(other.modulus))
+ return false;
+ if (publicExponent == null) {
+ if (other.publicExponent != null)
+ return false;
+ } else if (!publicExponent.equals(other.publicExponent))
+ return false;
+ return true;
}
public boolean bigIntEquals(BigInt x, BigInt y) {
diff --git a/base/util/src/netscape/security/util/BigInt.java b/base/util/src/netscape/security/util/BigInt.java
index 62a03cef5..c930edf80 100644
--- a/base/util/src/netscape/security/util/BigInt.java
+++ b/base/util/src/netscape/security/util/BigInt.java
@@ -19,6 +19,7 @@ package netscape.security.util;
import java.io.Serializable;
import java.math.BigInteger;
+import java.util.Arrays;
/**
* A low-overhead arbitrary-precision <em>unsigned</em> integer.
@@ -192,6 +193,14 @@ public final class BigInt implements Serializable {
return false;
}
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + Arrays.hashCode(places);
+ return result;
+ }
+
/**
* Returns true iff the parameter is numerically equivalent.
*
diff --git a/base/util/src/netscape/security/util/DerInputStream.java b/base/util/src/netscape/security/util/DerInputStream.java
index ff1c54ba2..40763a6ba 100644
--- a/base/util/src/netscape/security/util/DerInputStream.java
+++ b/base/util/src/netscape/security/util/DerInputStream.java
@@ -453,7 +453,7 @@ public class DerInputStream {
if (Htmp >= 24 || Mtmp >= 60)
throw new IOException("Parse UTCtime, +hhmm");
- utcTime += ((Htmp * 60) + Mtmp) * 60 * 1000;
+ utcTime += ((Htmp * 60) + Mtmp) * 60 * 1000L;
}
break;
@@ -466,7 +466,7 @@ public class DerInputStream {
if (Htmp >= 24 || Mtmp >= 60)
throw new IOException("Parse UTCtime, -hhmm");
- utcTime -= ((Htmp * 60) + Mtmp) * 60 * 1000;
+ utcTime -= ((Htmp * 60) + Mtmp) * 60 * 1000L;
}
break;
@@ -560,7 +560,7 @@ public class DerInputStream {
if (Htmp >= 24 || Mtmp >= 60)
throw new IOException("Parse GeneralizedTime, +hhmm");
- utcTime += ((Htmp * 60) + Mtmp) * 60 * 1000;
+ utcTime += ((Htmp * 60) + Mtmp) * 60 * 1000L;
}
break;
@@ -573,7 +573,7 @@ public class DerInputStream {
if (Htmp >= 24 || Mtmp >= 60)
throw new IOException("Parse GeneralizedTime, -hhmm");
- utcTime -= ((Htmp * 60) + Mtmp) * 60 * 1000;
+ utcTime -= ((Htmp * 60) + Mtmp) * 60 * 1000L;
}
break;
diff --git a/base/util/src/netscape/security/util/DerValue.java b/base/util/src/netscape/security/util/DerValue.java
index 40215626a..87a0a38a3 100644
--- a/base/util/src/netscape/security/util/DerValue.java
+++ b/base/util/src/netscape/security/util/DerValue.java
@@ -610,6 +610,17 @@ public class DerValue {
return false;
}
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((buffer == null) ? 0 : buffer.hashCode());
+ result = prime * result + ((data == null) ? 0 : data.hashCode());
+ result = prime * result + length;
+ result = prime * result + tag;
+ return result;
+ }
+
/**
* Bitwise equality comparison. DER encoded values have a single
* encoding, so that bitwise equality of the encoded values is an
diff --git a/base/util/src/netscape/security/x509/AVA.java b/base/util/src/netscape/security/x509/AVA.java
index fc6601223..534f7c212 100644
--- a/base/util/src/netscape/security/x509/AVA.java
+++ b/base/util/src/netscape/security/x509/AVA.java
@@ -203,6 +203,15 @@ public final class AVA implements DerEncoder {
return false;
}
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((oid == null) ? 0 : oid.hashCode());
+ result = prime * result + ((value == null) ? 0 : value.hashCode());
+ return result;
+ }
+
/**
* Encodes the AVA to a Der output stream.
* AVAs are encoded as a SEQUENCE of two elements.
diff --git a/base/util/src/netscape/security/x509/AlgorithmId.java b/base/util/src/netscape/security/x509/AlgorithmId.java
index 4b108ac4b..a027c19cc 100644
--- a/base/util/src/netscape/security/x509/AlgorithmId.java
+++ b/base/util/src/netscape/security/x509/AlgorithmId.java
@@ -498,6 +498,17 @@ public class AlgorithmId implements Serializable, DerEncoder {
return false;
}
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((algParams == null) ? 0 : algParams.hashCode());
+ result = prime * result + ((algid == null) ? 0 : algid.hashCode());
+ result = prime * result + ((params == null) ? 0 : params.hashCode());
+ result = prime * result + ((paramsString == null) ? 0 : paramsString.hashCode());
+ return result;
+ }
+
/**
* Compares two algorithm IDs for equality. Returns true iff
* they are the same algorithm, ignoring algorithm parameters.
@@ -506,6 +517,8 @@ public class AlgorithmId implements Serializable, DerEncoder {
return algid.equals(id);
}
+
+
/*****************************************************************/
/*
diff --git a/base/util/src/netscape/security/x509/CRLReasonExtension.java b/base/util/src/netscape/security/x509/CRLReasonExtension.java
index 6a5fd6295..77339528e 100644
--- a/base/util/src/netscape/security/x509/CRLReasonExtension.java
+++ b/base/util/src/netscape/security/x509/CRLReasonExtension.java
@@ -231,4 +231,12 @@ public final class CRLReasonExtension extends Extension implements CertAttrSet {
return false;
}
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((mReason == null) ? 0 : mReason.hashCode());
+ return result;
+ }
+
}
diff --git a/base/util/src/netscape/security/x509/GeneralSubtree.java b/base/util/src/netscape/security/x509/GeneralSubtree.java
index a49109846..4c20bb4ba 100644
--- a/base/util/src/netscape/security/x509/GeneralSubtree.java
+++ b/base/util/src/netscape/security/x509/GeneralSubtree.java
@@ -52,7 +52,7 @@ public class GeneralSubtree implements Serializable {
private int minimum = MIN_DEFAULT;
private int maximum = -1;
- private PrettyPrintFormat pp = new PrettyPrintFormat(":");
+ private transient PrettyPrintFormat pp = new PrettyPrintFormat(":");
/**
* The default constructor for the class.
diff --git a/base/util/src/netscape/security/x509/GeneralSubtrees.java b/base/util/src/netscape/security/x509/GeneralSubtrees.java
index 9d8c632a3..edbab7ee9 100644
--- a/base/util/src/netscape/security/x509/GeneralSubtrees.java
+++ b/base/util/src/netscape/security/x509/GeneralSubtrees.java
@@ -38,7 +38,7 @@ public class GeneralSubtrees implements Serializable {
private static final long serialVersionUID = 6308776640697100848L;
private Vector<GeneralSubtree> trees;
- private PrettyPrintFormat pp = new PrettyPrintFormat(":");
+ private transient PrettyPrintFormat pp = new PrettyPrintFormat(":");
/**
* The default constructor for the class.