############################################################################ # Copyright (C) Internet Systems Consortium, Inc. ("ISC") # # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. # # See the COPYRIGHT file distributed with this work for additional # information regarding copyright ownership. ############################################################################ import os import sys import re from subprocess import Popen, PIPE ######################################################################## # Exceptions ######################################################################## class KeyZoneException(Exception): pass ######################################################################## # class keyzone ######################################################################## class keyzone: """reads a zone file to find data relevant to keys""" def __init__(self, name, filename, czpath): self.maxttl = None self.keyttl = None if not name: return if not czpath or not os.path.isfile(czpath) \ or not os.access(czpath, os.X_OK): raise KeyZoneException('"named-compilezone" not found') return maxttl = keyttl = None fp, _ = Popen([czpath, "-o", "-", name, filename], stdout=PIPE, stderr=PIPE).communicate() for line in fp.splitlines(): if re.search('^[:space:]*;', line): continue fields = line.split() if not maxttl or int(fields[1]) > maxttl: maxttl = int(fields[1]) if fields[3] == "DNSKEY": keyttl = int(fields[1]) self.keyttl = keyttl self.maxttl = maxttl
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
.__init__.pyo.40009 | File | 617 B | 0644 |
|
.checkds.pyo.40009 | File | 5.29 KB | 0644 |
|
.coverage.pyo.40009 | File | 7.37 KB | 0644 |
|
.dnskey.pyo.40009 | File | 16.59 KB | 0644 |
|
.eventlist.pyo.40009 | File | 4.83 KB | 0644 |
|
.keydict.pyo.40009 | File | 3.21 KB | 0644 |
|
.keyevent.pyo.40009 | File | 2.32 KB | 0644 |
|
.keymgr.pyo.40009 | File | 4.91 KB | 0644 |
|
.keyseries.pyo.40009 | File | 5 KB | 0644 |
|
.keyzone.pyo.40009 | File | 1.54 KB | 0644 |
|
.parsetab.pyo.40009 | File | 10.36 KB | 0644 |
|
.policy.pyo.40009 | File | 22.62 KB | 0644 |
|
.rndc.pyo.40009 | File | 6.34 KB | 0644 |
|
.utils.pyo.40009 | File | 1.58 KB | 0644 |
|
__init__.py | File | 936 B | 0644 |
|
__init__.pyc | File | 617 B | 0644 |
|
__init__.pyo | File | 617 B | 0644 |
|
checkds.py | File | 6.49 KB | 0644 |
|
checkds.pyc | File | 5.29 KB | 0644 |
|
checkds.pyo | File | 5.29 KB | 0644 |
|
coverage.py | File | 9.61 KB | 0644 |
|
coverage.pyc | File | 7.37 KB | 0644 |
|
coverage.pyo | File | 7.37 KB | 0644 |
|
dnskey.py | File | 15.9 KB | 0644 |
|
dnskey.pyc | File | 16.59 KB | 0644 |
|
dnskey.pyo | File | 16.59 KB | 0644 |
|
eventlist.py | File | 5.71 KB | 0644 |
|
eventlist.pyc | File | 4.83 KB | 0644 |
|
eventlist.pyo | File | 4.83 KB | 0644 |
|
keydict.py | File | 2.67 KB | 0644 |
|
keydict.pyc | File | 3.21 KB | 0644 |
|
keydict.pyo | File | 3.21 KB | 0644 |
|
keyevent.py | File | 2.76 KB | 0644 |
|
keyevent.pyc | File | 2.32 KB | 0644 |
|
keyevent.pyo | File | 2.32 KB | 0644 |
|
keymgr.py | File | 6.35 KB | 0644 |
|
keymgr.pyc | File | 4.91 KB | 0644 |
|
keymgr.pyo | File | 4.91 KB | 0644 |
|
keyseries.py | File | 7.34 KB | 0644 |
|
keyseries.pyc | File | 5 KB | 0644 |
|
keyseries.pyo | File | 5 KB | 0644 |
|
keyzone.py | File | 1.86 KB | 0644 |
|
keyzone.pyc | File | 1.54 KB | 0644 |
|
keyzone.pyo | File | 1.54 KB | 0644 |
|
parsetab.py | File | 9.98 KB | 0644 |
|
parsetab.pyc | File | 10.36 KB | 0644 |
|
parsetab.pyo | File | 10.36 KB | 0644 |
|
policy.py | File | 25.8 KB | 0644 |
|
policy.pyc | File | 22.62 KB | 0644 |
|
policy.pyo | File | 22.62 KB | 0644 |
|
rndc.py | File | 6.54 KB | 0644 |
|
rndc.pyc | File | 6.34 KB | 0644 |
|
rndc.pyo | File | 6.34 KB | 0644 |
|
utils.py | File | 2.17 KB | 0644 |
|
utils.pyc | File | 1.59 KB | 0644 |
|
utils.pyo | File | 1.59 KB | 0644 |
|