I'm not sure if this is a bug or correct behaviour, so reporting for analysis. I've not added a debug token since I don't think it's setup-related. I did some digging and didn't find anywhere else asking about this.
I have an adlist which, when updating Gravity, Pi-hole complains contains two invalid domains.
[i] Target: https://malware-filter.gitlab.io/malware-filter/phishing-filter-hosts.txt
[✓] Status: Retrieval successful
[i] Analyzed 59469 domains, 2 domains invalid!
Sample of invalid domains:
- boursoramaaccès.com
- emails%2eazure%2emicrosoft%2ecom@url917.vakeelavaahini.com
[i] List has been updated
The domain relevant to this post is the first one. I assume it's the accented è
that it doesn't like.
If I paste the domain into Domains blacklist, it is accepted no problem and converted into its Punycode representation. A green box appears stating:
+ Success!
Added xn--boursoramaaccs-7jb.com
The entry below even lists both:
boursoramaaccès.com (xn--boursoramaaccs-7jb.com)
The adlist contains a few Punycode encoded domains directly and the Gravity update handles them fine. I tested with one of them (xn--80agfkuhcahdlf0o.xn--p1ai
) and it can be added manually as either its Russian unicode or its Punycode format, with the same result, no problems. It is already found in the database from the Gravity update, and can be searched for in Tools > Search Adlists using either Russian or Punycode format.
Summary
Pi-hole's Domains section handles the adding of special domains, using either their unicode or Punycode representation, without problem.
Pi-hole's Gravity update handles Punycode entries without problem, but flags the unicode representation as invalid.
Since Pi-hole can interpret and store these domains both ways without problem, it seems like a bug or omission in the Gravity update logic.
(Pi-hole v5.12.2 FTL v5.18.1 Web Interface v5.15.1)