diff --git a/core/java/src/net/i2p/data/Certificate.java b/core/java/src/net/i2p/data/Certificate.java index f89243479..0f79b9d53 100644 --- a/core/java/src/net/i2p/data/Certificate.java +++ b/core/java/src/net/i2p/data/Certificate.java @@ -12,6 +12,7 @@ package net.i2p.data; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.util.Arrays; /** * Defines a certificate that can be attached to various I2P structures, such @@ -231,7 +232,7 @@ public class Certificate extends DataStructureImpl { if (object == this) return true; if ((object == null) || !(object instanceof Certificate)) return false; Certificate cert = (Certificate) object; - return _type == cert.getCertificateType() && DataHelper.eq(_payload, cert.getPayload()); + return _type == cert.getCertificateType() && Arrays.equals(_payload, cert.getPayload()); } @Override diff --git a/core/java/src/net/i2p/data/DatabaseEntry.java b/core/java/src/net/i2p/data/DatabaseEntry.java index e10e4abf0..4b84ed106 100644 --- a/core/java/src/net/i2p/data/DatabaseEntry.java +++ b/core/java/src/net/i2p/data/DatabaseEntry.java @@ -9,6 +9,8 @@ package net.i2p.data; * */ +import java.util.Arrays; + import net.i2p.crypto.DSAEngine; /** @@ -108,7 +110,7 @@ public abstract class DatabaseEntry extends DataStructureImpl { public Hash getRoutingKey() { RoutingKeyGenerator gen = RoutingKeyGenerator.getInstance(); byte[] mod = gen.getModData(); - if (!DataHelper.eq(mod, _routingKeyGenMod)) { + if (!Arrays.equals(mod, _routingKeyGenMod)) { _currentRoutingKey = gen.getRoutingKey(getHash()); _routingKeyGenMod = mod; } diff --git a/core/java/src/net/i2p/data/KeysAndCert.java b/core/java/src/net/i2p/data/KeysAndCert.java index 8e9bcaab1..6936c0f3e 100644 --- a/core/java/src/net/i2p/data/KeysAndCert.java +++ b/core/java/src/net/i2p/data/KeysAndCert.java @@ -13,6 +13,7 @@ import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.util.Arrays; import net.i2p.crypto.SHA256Generator; @@ -125,7 +126,7 @@ public class KeysAndCert extends DataStructureImpl { return DataHelper.eq(_signingKey, ident._signingKey) && DataHelper.eq(_publicKey, ident._publicKey) - && DataHelper.eq(_padding, ident._padding) + && Arrays.equals(_padding, ident._padding) && DataHelper.eq(_certificate, ident._certificate); } diff --git a/core/java/src/net/i2p/data/Payload.java b/core/java/src/net/i2p/data/Payload.java index aa5160034..825b632fe 100644 --- a/core/java/src/net/i2p/data/Payload.java +++ b/core/java/src/net/i2p/data/Payload.java @@ -12,6 +12,7 @@ package net.i2p.data; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.util.Arrays; /** * Defines the actual payload of a message being delivered, including the @@ -108,8 +109,8 @@ public class Payload extends DataStructureImpl { if (object == this) return true; if ((object == null) || !(object instanceof Payload)) return false; Payload p = (Payload) object; - return DataHelper.eq(_unencryptedData, p.getUnencryptedData()) - && DataHelper.eq(_encryptedData, p.getEncryptedData()); + return Arrays.equals(_unencryptedData, p.getUnencryptedData()) + && Arrays.equals(_encryptedData, p.getEncryptedData()); } @Override diff --git a/core/java/src/net/i2p/data/PrivateKey.java b/core/java/src/net/i2p/data/PrivateKey.java index a37f9e119..f10248189 100644 --- a/core/java/src/net/i2p/data/PrivateKey.java +++ b/core/java/src/net/i2p/data/PrivateKey.java @@ -9,6 +9,8 @@ package net.i2p.data; * */ +import java.util.Arrays; + import net.i2p.crypto.KeyGenerator; /** @@ -56,7 +58,6 @@ public class PrivateKey extends SimpleDataStructure { /** * We assume the data has enough randomness in it, so use the last 4 bytes for speed. * Overridden since we use short exponents, so the first 227 bytes are all zero. - * Not that we are storing PrivateKeys in any Sets or Maps anywhere. */ @Override public int hashCode() { @@ -72,6 +73,6 @@ public class PrivateKey extends SimpleDataStructure { public boolean equals(Object obj) { if (obj == this) return true; if ((obj == null) || !(obj instanceof PrivateKey)) return false; - return DataHelper.eq(_data, ((PrivateKey) obj)._data); + return Arrays.equals(_data, ((PrivateKey) obj)._data); } } diff --git a/core/java/src/net/i2p/data/RoutingKeyGenerator.java b/core/java/src/net/i2p/data/RoutingKeyGenerator.java index 497262dbd..367089442 100644 --- a/core/java/src/net/i2p/data/RoutingKeyGenerator.java +++ b/core/java/src/net/i2p/data/RoutingKeyGenerator.java @@ -12,6 +12,7 @@ package net.i2p.data; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; +import java.util.Arrays; import java.util.GregorianCalendar; import java.util.Locale; import java.util.TimeZone; @@ -149,7 +150,7 @@ public class RoutingKeyGenerator { long now = _context.clock().now(); setCalToPreviousMidnight(now); byte[] mod = generateModDataFromCal(); - boolean changed = !DataHelper.eq(_currentModData, mod); + boolean changed = !Arrays.equals(_currentModData, mod); if (changed) { // add a day and store next midnight and mod data for convenience _cal.add(Calendar.DATE, 1); diff --git a/core/java/src/net/i2p/data/SDSCache.java b/core/java/src/net/i2p/data/SDSCache.java index 4bd0f2122..9fecb6a14 100644 --- a/core/java/src/net/i2p/data/SDSCache.java +++ b/core/java/src/net/i2p/data/SDSCache.java @@ -6,6 +6,7 @@ import java.io.InputStream; import java.lang.ref.WeakReference; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; +import java.util.Arrays; import java.util.Map; import net.i2p.I2PAppContext; @@ -120,7 +121,7 @@ public class SDSCache { rv = ref.get(); else rv = null; - if (rv != null && DataHelper.eq(data, rv.getData())) { + if (rv != null && Arrays.equals(data, rv.getData())) { // found it, we don't need the data passed in any more SimpleByteCache.release(data); found = 1; diff --git a/core/java/src/net/i2p/data/SimpleDataStructure.java b/core/java/src/net/i2p/data/SimpleDataStructure.java index 06fe7fb94..441bcffac 100644 --- a/core/java/src/net/i2p/data/SimpleDataStructure.java +++ b/core/java/src/net/i2p/data/SimpleDataStructure.java @@ -7,6 +7,7 @@ package net.i2p.data; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.util.Arrays; import net.i2p.crypto.SHA256Generator; @@ -183,6 +184,6 @@ public abstract class SimpleDataStructure extends DataStructureImpl { public boolean equals(Object obj) { if (obj == this) return true; if ((obj == null) || !(obj instanceof SimpleDataStructure)) return false; - return DataHelper.eq(_data, ((SimpleDataStructure) obj)._data); + return Arrays.equals(_data, ((SimpleDataStructure) obj)._data); } }