Source code for dns_sprockets_lib.validators.dnskey_origin

'''
dnskey_origin - Zone test: DnskeyOrigin

.. Copyright (c) 2015 Neustar, Inc. All rights reserved.
.. See COPYRIGHT.txt for full notice.  See LICENSE.txt for terms and conditions.
'''


import dns.rdtypes.ANY.DNSKEY

import dns_sprockets_lib.validators as validators


[docs]class DnskeyOrigin(validators.ZoneTest): # pylint: disable=too-few-public-methods ''' Checks for a ZSK at zone origin. ''' TEST_DNSSECTYPE = True
[docs] def run(self, context, suggested_tested): result = None zsk_count = 0 dnskeys = context.dnskey_rdataset and context.dnskey_rdataset.items or [] for rdata in dnskeys: if rdata.flags & dns.rdtypes.ANY.DNSKEY.ZONE: zsk_count += 1 if zsk_count == 0: result = 'No ZSK found at origin' return (suggested_tested, result) # end of file