diff --git a/daemons/ganeti-noded b/daemons/ganeti-noded
index 240816669161568545b1ed5177713648f55df722..5388660e847a190f081849459c3133772f3268dc 100755
--- a/daemons/ganeti-noded
+++ b/daemons/ganeti-noded
@@ -77,6 +77,17 @@ class ServerObject(BaseHTTPServer.BaseHTTPRequestHandler):
       params = simplejson.loads(body)
       result = method(params)
       payload = simplejson.dumps(result)
+    except errors.QuitGanetiException, err:
+      global _EXIT_GANETI_NODED
+      _EXIT_GANETI_NODED = True
+      if isinstance(err, tuple) and len(err) == 2:
+        if err[0]:
+          self.send_error(500, "Error: %s" % str(err[1]))
+        else:
+          payload = simplejson.dumps(err[1])
+      else:
+        self.log_message('GanetiQuitException Usage Error')
+        self.send_error(500, "Error: %s" % str(err))
     except Exception, err:
       self.send_error(500, "Error: %s" % str(err))
       return False