From dc14abd4d3685314647304eb89fbf2c5ee736162 Mon Sep 17 00:00:00 2001 From: zzz <zzz@mail.i2p> Date: Sat, 5 Jul 2014 21:58:48 +0000 Subject: [PATCH] BFNS: Trim whitespace from hosts.txt when importing DataStructureImpl: Throw unique exception on bad base 64 --- core/java/src/net/i2p/client/naming/BlockfileNamingService.java | 2 +- core/java/src/net/i2p/data/DataStructureImpl.java | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/core/java/src/net/i2p/client/naming/BlockfileNamingService.java b/core/java/src/net/i2p/client/naming/BlockfileNamingService.java index 9194d81aa1..d7860a727e 100644 --- a/core/java/src/net/i2p/client/naming/BlockfileNamingService.java +++ b/core/java/src/net/i2p/client/naming/BlockfileNamingService.java @@ -240,7 +240,7 @@ public class BlockfileNamingService extends DummyNamingService { if (line.length() < split + 1) continue; } - String b64 = line.substring(split+1); //.trim() ?????????????? + String b64 = line.substring(split+1).trim(); Destination d = lookupBase64(b64); if (d != null) { addEntry(rv, hostsfile, key, d, sourceMsg); diff --git a/core/java/src/net/i2p/data/DataStructureImpl.java b/core/java/src/net/i2p/data/DataStructureImpl.java index 26e655af78..cc70f56a0d 100644 --- a/core/java/src/net/i2p/data/DataStructureImpl.java +++ b/core/java/src/net/i2p/data/DataStructureImpl.java @@ -37,6 +37,7 @@ public abstract class DataStructureImpl implements DataStructure, Serializable { public void fromBase64(String data) throws DataFormatException { if (data == null) throw new DataFormatException("Null data passed in"); byte bytes[] = Base64.decode(data); + if (bytes == null) throw new DataFormatException("Bad Base64 \"" + data + '"'); fromByteArray(bytes); } -- GitLab