xref: /netbsd-src/external/bsd/unbound/dist/pythonmod/doc/examples/example0-1.py (revision ed75d7a867996c84cfa88e3b8906816277e957f7)
1def init(id, cfg):
2   log_info("pythonmod: init called, module id is %d port: %d script: %s" % (id, cfg.port, cfg.python_script))
3   return True
4
5def init_standard(id, env):
6   log_info("pythonmod: init called, module id is %d port: %d script: %s" % (id, env.cfg.port, env.cfg.python_script))
7   return True
8
9def deinit(id):
10   log_info("pythonmod: deinit called, module id is %d" % id)
11   return True
12
13def inform_super(id, qstate, superqstate, qdata):
14   return True
15
16def operate(id, event, qstate, qdata):
17   log_info("pythonmod: operate called, id: %d, event:%s" % (id, strmodulevent(event)))
18
19   if event == MODULE_EVENT_NEW:
20      qstate.ext_state[id] = MODULE_WAIT_MODULE
21      return True
22
23   if event == MODULE_EVENT_MODDONE:
24      log_info("pythonmod: module we are waiting for is done")
25      qstate.ext_state[id] = MODULE_FINISHED
26      return True
27
28   if event == MODULE_EVENT_PASS:
29      log_info("pythonmod: event_pass")
30      qstate.ext_state[id] = MODULE_WAIT_MODULE
31      return True
32
33   log_err("pythonmod: BAD event")
34   qstate.ext_state[id] = MODULE_ERROR
35   return True
36
37log_info("pythonmod: script loaded.")
38