diff options
Diffstat (limited to 'app/src/main/java/com/wireguard/config')
-rw-r--r-- | app/src/main/java/com/wireguard/config/Attribute.java | 1 | ||||
-rw-r--r-- | app/src/main/java/com/wireguard/config/Interface.java | 2 | ||||
-rw-r--r-- | app/src/main/java/com/wireguard/config/Peer.java | 2 |
3 files changed, 5 insertions, 0 deletions
diff --git a/app/src/main/java/com/wireguard/config/Attribute.java b/app/src/main/java/com/wireguard/config/Attribute.java index b35df100..be068e80 100644 --- a/app/src/main/java/com/wireguard/config/Attribute.java +++ b/app/src/main/java/com/wireguard/config/Attribute.java @@ -55,6 +55,7 @@ public enum Attribute { return TextUtils.join(", ", iterable); } + @Nullable public static Attribute match(final CharSequence line) { return KEY_MAP.get(SEPARATOR_PATTERN.split(line)[0].toLowerCase()); } diff --git a/app/src/main/java/com/wireguard/config/Interface.java b/app/src/main/java/com/wireguard/config/Interface.java index 6560b764..eea1d18b 100644 --- a/app/src/main/java/com/wireguard/config/Interface.java +++ b/app/src/main/java/com/wireguard/config/Interface.java @@ -140,6 +140,8 @@ public class Interface { public void parse(final String line) { final Attribute key = Attribute.match(line); + if (key == null) + throw new IllegalArgumentException(String.format("Unable to parse line: \"%s\"", line)); switch (key) { case ADDRESS: addAddresses(key.parseList(line)); diff --git a/app/src/main/java/com/wireguard/config/Peer.java b/app/src/main/java/com/wireguard/config/Peer.java index 2a4f4465..49c8b70e 100644 --- a/app/src/main/java/com/wireguard/config/Peer.java +++ b/app/src/main/java/com/wireguard/config/Peer.java @@ -113,6 +113,8 @@ public class Peer { public void parse(final String line) { final Attribute key = Attribute.match(line); + if (key == null) + throw new IllegalArgumentException(String.format("Unable to parse line: \"%s\"", line)); switch (key) { case ALLOWED_IPS: addAllowedIPs(key.parseList(line)); |