aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/pleroma/web/activity_pub/mrf/dns_rbl_policy.ex8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/pleroma/web/activity_pub/mrf/dns_rbl_policy.ex b/lib/pleroma/web/activity_pub/mrf/dns_rbl_policy.ex
index a119073eb..53113a282 100644
--- a/lib/pleroma/web/activity_pub/mrf/dns_rbl_policy.ex
+++ b/lib/pleroma/web/activity_pub/mrf/dns_rbl_policy.ex
@@ -13,7 +13,7 @@ defmodule Pleroma.Web.ActivityPub.MRF.DnsRblPolicy do
# :nameserver is the RBL server we want to query
rblhost = rblconfig[:nameserver]
-
+
# We have to query the nameserver's by IP, so look it up if an IP address wasn't
# provided in the config.
# You may want this to be a hostname with round-robin A records for basic load
@@ -34,7 +34,11 @@ defmodule Pleroma.Web.ActivityPub.MRF.DnsRblPolicy do
rblzone = rblconfig[:zone] || rblhost
# concatenate the host we're checking with the zone, e.g., "pleroma.host" <> . <> "bl.pleroma.com" <> .
- query = (actor_host <> "." <> rblzone <> ".") |> String.to_charlist()
+ # trim off duplicate trailing period in case it was supplied in the config.
+ query =
+ (actor_host <> "." <> rblzone <> ".")
+ |> String.replace_suffix("..", ".")
+ |> String.to_charlist()
# Timeout of 1s, retry 1
# We will only be using UDP for queries, so I think if the DNSRBL server is > 500ms away it won't work