From: Michael Tremer Date: Sat, 6 Dec 2025 21:06:11 +0000 (+0000) Subject: dnsbl: Support output in hosts file format X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b624823d85e92f6731edd541f34ac86b07d1a99e;p=dbl.git dnsbl: Support output in hosts file format Signed-off-by: Michael Tremer --- diff --git a/src/dnsbl/lists.py b/src/dnsbl/lists.py index 2c1c3df..744cdbc 100644 --- a/src/dnsbl/lists.py +++ b/src/dnsbl/lists.py @@ -261,6 +261,15 @@ class List(sqlmodel.SQLModel, database.BackendMixin, table=True): for domain in self.domains: f.write("%s\n" % domain) + # hosts format + elif format == "hosts": + # Write the header + self._write_header(f) + + # Write all domains + for domain in self.domains: + f.write("0.0.0.0 %s\n" % domain) + # Write a RPZ zone file elif format == "rpz": # Write the header diff --git a/src/scripts/dnsbl.in b/src/scripts/dnsbl.in index e219f77..2911be2 100644 --- a/src/scripts/dnsbl.in +++ b/src/scripts/dnsbl.in @@ -98,8 +98,8 @@ class CLI(object): # export export = subparsers.add_parser("export", help=_("Exports a list")) export.add_argument("list", help=_("The name of the list")) - export.add_argument("--format", default="domains", choices=("domains", "rpz",), - help=_("Output Format")) + export.add_argument("--format", default="domains", + choices=("domains", "hosts", "rpz",), help=_("Output Format")) export.set_defaults(func=self.__export) # export-all @@ -288,6 +288,7 @@ class CLI(object): """ formats = { "domains" : "domains.txt", + "hosts" : "hosts.txt", "rpz" : "rpz.zone", }