From 00bc337910b7637d2e9941c4be12caf5d4d2e7e6 Mon Sep 17 00:00:00 2001 From: Jonathan Cobb Date: Sun, 5 Jan 2020 16:23:13 -0500 Subject: [PATCH] fix bugs --- src/main/java/org/cobbzilla/util/dns/DnsRecordMatch.java | 5 ++++- src/main/java/org/cobbzilla/util/security/ShaUtil.java | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/cobbzilla/util/dns/DnsRecordMatch.java b/src/main/java/org/cobbzilla/util/dns/DnsRecordMatch.java index 58e26f6..2fd34b3 100644 --- a/src/main/java/org/cobbzilla/util/dns/DnsRecordMatch.java +++ b/src/main/java/org/cobbzilla/util/dns/DnsRecordMatch.java @@ -49,7 +49,10 @@ public class DnsRecordMatch extends DnsRecordBase { public boolean matches (DnsRecord record) { if (hasType() && !getType().equals(record.getType())) return false; - if (hasFqdn() && !getFqdn().equalsIgnoreCase(record.getFqdn())) return false; + if (hasFqdn() && !getFqdn().equalsIgnoreCase(record.getFqdn()) + && (!record.getFqdn().startsWith(".") || !getFqdn().equalsIgnoreCase(record.getFqdn().substring(1)))) { + return false; + } if (hasSubdomain() && record.hasFqdn() && !record.getFqdn().toLowerCase().endsWith(getSubdomain().toLowerCase())) return false; if (hasPattern() && record.hasFqdn() && !get_pattern().matcher(record.getFqdn()).find()) return false; if (hasFqdns() && record.hasFqdn() && getFqdns().stream().noneMatch(f -> record.getFqdn().equalsIgnoreCase(f))) return false; diff --git a/src/main/java/org/cobbzilla/util/security/ShaUtil.java b/src/main/java/org/cobbzilla/util/security/ShaUtil.java index 2f2a30d..9f652ff 100644 --- a/src/main/java/org/cobbzilla/util/security/ShaUtil.java +++ b/src/main/java/org/cobbzilla/util/security/ShaUtil.java @@ -29,7 +29,7 @@ public class ShaUtil { public static byte[] sha256 (String data) { try { - return sha256(data.getBytes(StringUtil.UTF8)); + return sha256(data.getBytes(StringUtil.UTF8cs)); } catch (Exception e) { return die("sha256: bad data: "+e, e); }