From 9b7d3cec1b451c9a49f6cd62ad968ea543a799e6 Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Thu, 4 Dec 2014 00:21:37 +0100 Subject: [PATCH] Do not crash on an invalid WebService id or an unknown WebService slug fixes #6015 --- authentic2_idp_oauth2/views.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/authentic2_idp_oauth2/views.py b/authentic2_idp_oauth2/views.py index efe775e..a0fead2 100644 --- a/authentic2_idp_oauth2/views.py +++ b/authentic2_idp_oauth2/views.py @@ -108,8 +108,11 @@ class Authorize(Authorize): def ws_proxy(request, ws_id): try: ws = models.WebService.objects.get(id=ws_id) - except models.WebService.DoesNotExist: - ws = models.WebService.objects.get(slug=ws_id) + except (ValueError, models.WebService.DoesNotExist): + try: + ws = models.WebService.objects.get(slug=ws_id) + except models.WebService.DoesNotExist: + return Response({'error': 'web service id not found'}, status=404) ctx = RequestContext(request) url = ws.get_url(ctx) logger.debug('proxy to URL %r', url)