summaryrefslogtreecommitdiffstats
path: root/nova/api
diff options
context:
space:
mode:
Diffstat (limited to 'nova/api')
-rw-r--r--nova/api/openstack/compute/contrib/keypairs.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/nova/api/openstack/compute/contrib/keypairs.py b/nova/api/openstack/compute/contrib/keypairs.py
index dc0c74b11..e5e1e37fd 100644
--- a/nova/api/openstack/compute/contrib/keypairs.py
+++ b/nova/api/openstack/compute/contrib/keypairs.py
@@ -70,8 +70,13 @@ class KeypairController(object):
context = req.environ['nova.context']
authorize(context)
- params = body['keypair']
- name = params['name']
+
+ try:
+ params = body['keypair']
+ name = params['name']
+ except KeyError:
+ msg = _("Invalid request body")
+ raise webob.exc.HTTPBadRequest(explanation=msg)
try:
if 'public_key' in params: