[svn] commit: r1449 - in /trunk/src/lib/python/isc/config: ccsession.py cfgmgr.py
BIND 10 source code commits
bind10-changes at lists.isc.org
Tue Mar 16 14:19:30 UTC 2010
Author: jelte
Date: Tue Mar 16 14:19:30 2010
New Revision: 1449
Log:
use the sequence number to get the right answer in cfgmgr and ccsession.py (and hence in modules) too
Modified:
trunk/src/lib/python/isc/config/ccsession.py
trunk/src/lib/python/isc/config/cfgmgr.py
Modified: trunk/src/lib/python/isc/config/ccsession.py
==============================================================================
--- trunk/src/lib/python/isc/config/ccsession.py (original)
+++ trunk/src/lib/python/isc/config/ccsession.py Tue Mar 16 14:19:30 2010
@@ -249,8 +249,8 @@
self._session.group_subscribe(module_name);
# Get the current config for that module now
- self._session.group_sendmsg({ "command": [ "get_config", { "module_name": module_name } ] }, "ConfigManager")
- answer, env = self._session.group_recvmsg(False)
+ seq = self._session.group_sendmsg({ "command": [ "get_config", { "module_name": module_name } ] }, "ConfigManager")
+ answer, env = self._session.group_recvmsg(False, seq)
if answer:
rcode, value = parse_answer(answer)
if rcode == 0:
@@ -279,14 +279,14 @@
def __send_spec(self):
"""Sends the data specification to the configuration manager"""
msg = create_command(COMMAND_MODULE_SPEC, self.get_module_spec().get_full_spec())
- self._session.group_sendmsg(msg, "ConfigManager")
- answer, env = self._session.group_recvmsg(False)
+ seq = self._session.group_sendmsg(msg, "ConfigManager")
+ answer, env = self._session.group_recvmsg(False, seq)
def __request_config(self):
"""Asks the configuration manager for the current configuration, and call the config handler if set.
Raises a ModuleCCSessionError if there is no answer from the configuration manager"""
- self._session.group_sendmsg({ "command": [ "get_config", { "module_name": self._module_name } ] }, "ConfigManager")
- answer, env = self._session.group_recvmsg(False)
+ seq = self._session.group_sendmsg({ "command": [ "get_config", { "module_name": self._module_name } ] }, "ConfigManager")
+ answer, env = self._session.group_recvmsg(False, seq)
if answer:
rcode, value = parse_answer(answer)
if rcode == 0:
Modified: trunk/src/lib/python/isc/config/cfgmgr.py
==============================================================================
--- trunk/src/lib/python/isc/config/cfgmgr.py (original)
+++ trunk/src/lib/python/isc/config/cfgmgr.py Tue Mar 16 14:19:30 2010
@@ -244,16 +244,16 @@
if conf_part:
data.merge(conf_part, cmd[1])
update_cmd = isc.config.ccsession.create_command(isc.config.ccsession.COMMAND_CONFIG_UPDATE, conf_part)
- self.cc.group_sendmsg(update_cmd, module_name)
- answer, env = self.cc.group_recvmsg(False)
+ seq = self.cc.group_sendmsg(update_cmd, module_name)
+ answer, env = self.cc.group_recvmsg(False, seq)
else:
conf_part = data.set(self.config.data, module_name, {})
data.merge(conf_part[module_name], cmd[1])
# send out changed info
update_cmd = isc.config.ccsession.create_command(isc.config.ccsession.COMMAND_CONFIG_UPDATE, conf_part[module_name])
- self.cc.group_sendmsg(update_cmd, module_name)
+ seq = self.cc.group_sendmsg(update_cmd, module_name)
# replace 'our' answer with that of the module
- answer, env = self.cc.group_recvmsg(False)
+ answer, env = self.cc.group_recvmsg(False, seq)
if answer:
rcode, val = isc.config.ccsession.parse_answer(answer)
if rcode == 0:
@@ -269,8 +269,8 @@
for module in self.config.data:
if module != "version" and (module not in old_data or self.config.data[module] != old_data[module]):
update_cmd = isc.config.ccsession.create_command(isc.config.ccsession.COMMAND_CONFIG_UPDATE, self.config.data[module])
- self.cc.group_sendmsg(update_cmd, module)
- answer, env = self.cc.group_recvmsg(False)
+ seq = self.cc.group_sendmsg(update_cmd, module)
+ answer, env = self.cc.group_recvmsg(False, seq)
if answer == None:
got_error = True
err_list.append("No answer message from " + module)
More information about the bind10-changes
mailing list