From 64a59be2b7bb82d7592f5964f6cda539f77d004b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pierre-Elliott=20B=C3=A9cue?= Date: Tue, 3 Mar 2015 14:01:51 +0100 Subject: [PATCH] =?UTF-8?q?Champs=20TXT=20correctement=20g=C3=A9r=C3=A9s?= =?UTF-8?q?=20et=20DROP=20des=20RR=20SPF=20(RFC=207208)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gestion/gen_confs/bind.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/gestion/gen_confs/bind.py b/gestion/gen_confs/bind.py index 6f5c57ba..5249a0ba 100755 --- a/gestion/gen_confs/bind.py +++ b/gestion/gen_confs/bind.py @@ -152,6 +152,13 @@ class TXT(ResourceRecord): def __init__(self, name, value, ttl=None): super(TXT, self).__init__('TXT', name, value, ttl) + def __str__(self): + """Retourne une chaîne printable dans un fichier bind""" + if self._ttl: + return '%s\t%s\tIN\t%s\t"%s"' % (self.name, self._ttl, self.r_type, self.value) + else: + return '%s\tIN\t%s\t"%s"' % (self.name, self.r_type, self.value) + class CNAME(ResourceRecord): """Entrée DNS pour un alias (toto -> redisdead)""" def __init__(self, name, value, ttl=None): @@ -175,11 +182,6 @@ class NS(ResourceRecord): def __init__(self, name, value, ttl=None): super(NS, self).__init__('NS', name, value, ttl) -class SPF(ResourceRecord): - """Entrée DNS pour les champs SPF""" - def __init__(self, name, value, ttl=None): - super(SPF, self).__init__('SPF', name, value, ttl) - class SRV(ResourceRecord): """Entrée DNS pour les champs SRV""" def __init__(self, service, proto, priority, weight, port, target, ttl=None): @@ -607,15 +609,12 @@ class dns(gen_config): SPFs = { 'crans.org': [ - SPF('@', 'v=spf1 mx ~all'), TXT('@', 'v=spf1 mx ~all'), ], } NON_CLONABLE_SPFs = { 'crans.org': [ - SPF(_mx, 'v=spf1 mx:crans.org ~all') for _mx in config.dns.MXs - ] + [ TXT(_mx, 'v=spf1 mx:crans.org ~all') for _mx in config.dns.MXs ], }