From 610dee957d0d25ba972e1ed93aa574ad508fdfaa Mon Sep 17 00:00:00 2001 From: grossmj Date: Wed, 18 Feb 2015 17:48:02 -0700 Subject: [PATCH] Use HTTP error 409 instead of 500 for VMError. --- gns3server/modules/dynamips/nodes/router.py | 4 ++-- gns3server/web/route.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/gns3server/modules/dynamips/nodes/router.py b/gns3server/modules/dynamips/nodes/router.py index 910430a9..dcfaac80 100644 --- a/gns3server/modules/dynamips/nodes/router.py +++ b/gns3server/modules/dynamips/nodes/router.py @@ -1495,10 +1495,10 @@ class Router(BaseVM): try: reply = yield from self._hypervisor.send("vm extract_config {}".format(self._name)) - reply = reply[0].rsplit(' ', 2)[-2:] - except IOError: + except DynamipsError: #for some reason Dynamips gets frozen when it does not find the magic number in the NVRAM file. return None, None + reply = reply[0].rsplit(' ', 2)[-2:] startup_config = reply[0][1:-1] # get statup-config and remove single quotes private_config = reply[1][1:-1] # get private-config and remove single quotes return startup_config, private_config diff --git a/gns3server/web/route.py b/gns3server/web/route.py index 4bf5679b..1fee37c7 100644 --- a/gns3server/web/route.py +++ b/gns3server/web/route.py @@ -115,8 +115,8 @@ class Route(object): except VMError as e: log.error("VM error detected: {type}".format(type=type(e)), exc_info=1) response = Response(route=route) - response.set_status(500) - response.json({"message": str(e), "status": 500}) + response.set_status(409) + response.json({"message": str(e), "status": 409}) except Exception as e: log.error("Uncaught exception detected: {type}".format(type=type(e)), exc_info=1) response = Response(route=route)