mirror of
https://gitlab.nic.cz/knot/knot-dns.git
synced 2026-02-03 18:49:28 -05:00
55 lines
1.2 KiB
Python
55 lines
1.2 KiB
Python
#!/usr/bin/env python3
|
|
|
|
'''Trigger replan_load_updated on slave where nothing is to be loaded (journal, zonefile) and verify re-planning DNSSEC.'''
|
|
|
|
import random
|
|
from dnstest.test import Test
|
|
from dnstest.utils import *
|
|
|
|
SCENARIO = random.choice([1, 2])
|
|
detail_log("SCENARIO %d" % SCENARIO)
|
|
|
|
t = Test()
|
|
|
|
master = t.server("knot")
|
|
slave = t.server("knot")
|
|
zone = t.zone_rnd(1, dnssec=False, records=10)
|
|
t.link(zone, master, slave)
|
|
ZONE = zone[0].name
|
|
|
|
for z in zone:
|
|
slave.dnssec(z).enable = True
|
|
slave.dnssec(z).nsec3 = True
|
|
slave.dnssec(z).nsec3_salt_len = 0
|
|
slave.dnssec(z).rrsig_lifetime = 25 if SCENARIO == 1 else 20
|
|
slave.dnssec(z).rrsig_refresh = 5
|
|
slave.dnssec(z).rrsig_prerefresh = 1
|
|
slave.dnssec(z).zone_max_ttl = 4
|
|
slave.zones[z.name].journal_content = "all"
|
|
slave.zonefile_sync = "-1"
|
|
slave.zonefile_load = "none"
|
|
slave.zonemd_generate = "zonemd-sha384"
|
|
|
|
t.start()
|
|
|
|
slave.zones_wait(zone)
|
|
|
|
if SCENARIO == 1:
|
|
slave.ctl("-f zone-flush")
|
|
slave.stop()
|
|
t.sleep(2)
|
|
slave.start()
|
|
slave.zones_wait(zone)
|
|
|
|
if SCENARIO == 2:
|
|
slave.zonemd_generate = "zonemd-sha512"
|
|
slave.gen_confile()
|
|
|
|
slave.ctl("reload")
|
|
|
|
t.sleep(20)
|
|
|
|
slave.ctl("-f zone-flush", wait=True)
|
|
slave.zone_verify(zone)
|
|
|
|
t.end()
|