Re-fix the recently broken INFO parsing, see
The value part of the info line may contains : in many cases,
most importantly an IPv6 slave address, may cause the parser to crash.
@@ -116,7 +116,11 @@ def parse_info(response):
for line in response.splitlines():
if line and not line.startswith('#'):
if line.find(':') != -1:
- # support keys that include ':' by using rsplit
+ # Split, the info fields keys and values.
+ # Note that the value may contain ':'. but the 'host:'
+ # pseudo-command is the only case where the key contains ':'
+ key, value = line.split(':', 1)
+ if key == 'cmdstat_host':
key, value = line.rsplit(':', 1)
info[key] = get_value(value)
else:
