aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/libcharon/plugins/vici/python/vici/session.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/libcharon/plugins/vici/python/vici/session.py b/src/libcharon/plugins/vici/python/vici/session.py
index da79ecd64..9f4dc5fa7 100644
--- a/src/libcharon/plugins/vici/python/vici/session.py
+++ b/src/libcharon/plugins/vici/python/vici/session.py
@@ -295,7 +295,7 @@ class SessionHandler(object):
break
if response.response_type == Packet.CMD_RESPONSE:
- Message.deserialize(response.payload)
+ command_response = Message.deserialize(response.payload)
else:
raise SessionException(
"Unexpected response type {type}, "
@@ -316,3 +316,12 @@ class SessionHandler(object):
confirm=Packet.EVENT_CONFIRM,
)
)
+
+ # evaluate command result, if any
+ if "success" in command_response:
+ if command_response["success"] != "yes":
+ raise CommandException(
+ "Command failed: {errmsg}".format(
+ errmsg=command_response["errmsg"]
+ )
+ )