Projet

Général

Profil

0002-misc-update-exception-handling-for-Python-3-20925.patch

Frédéric Péters, 30 décembre 2017 11:14

Télécharger (7,11 ko)

Voir les différences:

Subject: [PATCH 2/3] misc: update exception handling for Python 3 (#20925)

 mellon/adapters.py |  8 ++++----
 mellon/utils.py    |  2 +-
 mellon/views.py    | 18 +++++++++---------
 3 files changed, 14 insertions(+), 14 deletions(-)
mellon/adapters.py
38 38
                try:
39 39
                    response = requests.get(idp['METADATA_URL'], verify=verify_ssl_certificate)
40 40
                    response.raise_for_status()
41
                except requests.exceptions.RequestException, e:
41
                except requests.exceptions.RequestException as e:
42 42
                    self.logger.error(
43 43
                        u'retrieval of metadata URL %r failed with error %s for %d-th idp',
44 44
                        idp['METADATA_URL'], e, i)
......
86 86
                realm=realm, attributes=saml_attributes, idp=idp)[:30]
87 87
        except ValueError:
88 88
            self.logger.error(u'invalid username template %r', username_template)
89
        except (AttributeError, KeyError, IndexError), e:
89
        except (AttributeError, KeyError, IndexError) as e:
90 90
            self.logger.error(
91 91
                u'invalid reference in username template %r: %s', username_template, e)
92
        except Exception, e:
92
        except Exception as e:
93 93
            self.logger.exception(u'unknown error when formatting username')
94 94
        else:
95 95
            return username
......
163 163
                value = unicode(tpl).format(realm=realm, attributes=saml_attributes, idp=idp)
164 164
            except ValueError:
165 165
                self.logger.warning(u'invalid attribute mapping template %r', tpl)
166
            except (AttributeError, KeyError, IndexError, ValueError), e:
166
            except (AttributeError, KeyError, IndexError, ValueError) as e:
167 167
                self.logger.warning(
168 168
                    u'invalid reference in attribute mapping template %r: %s', tpl, e)
169 169
            else:
mellon/utils.py
79 79
        for idp in get_idps():
80 80
            try:
81 81
                server.addProviderFromBuffer(lasso.PROVIDER_ROLE_IDP, idp['METADATA'])
82
            except lasso.Error, e:
82
            except lasso.Error as e:
83 83
                logger.error(u'bad metadata in idp %r', idp['ENTITY_ID'])
84 84
                logger.debug(u'lasso error: %s', e)
85 85
                continue
mellon/views.py
120 120
                lasso.ProfileStatusNotSuccessError,
121 121
                lasso.ProfileRequestDeniedError):
122 122
            self.show_message_status_is_not_success(login, 'SAML authentication failed')
123
        except lasso.Error, e:
123
        except lasso.Error as e:
124 124
            return HttpResponseBadRequest('error processing the authentication response: %r' % e)
125 125
        else:
126 126
            if 'RelayState' in request.POST and utils.is_nonnull(request.POST['RelayState']):
......
262 262
                                   headers={'content-type': 'text/xml'},
263 263
                                   timeout=app_settings.ARTIFACT_RESOLVE_TIMEOUT,
264 264
                                   verify=verify_ssl_certificate)
265
        except RequestException, e:
265
        except RequestException as e:
266 266
            self.log.warning('unable to reach %r: %s', login.msgUrl, e)
267 267
            return self.sso_failure(request, login, _('IdP is temporarily down, please try again '
268 268
                                                      'later.'), status_codes)
......
305 305
                args[0] += ' message: %r'
306 306
                args.append(status.statusMessage)
307 307
            self.log.warning(*args)
308
        except lasso.Error, e:
308
        except lasso.Error as e:
309 309
            self.log.exception('unexpected lasso error')
310 310
            return HttpResponseBadRequest('error processing the authentication response: %r' % e)
311 311
        else:
......
373 373
                   escape(request.build_absolute_uri(next_url or '/')))
374 374
            self.set_next_url(next_url)
375 375
            login.buildAuthnRequestMsg()
376
        except lasso.Error, e:
376
        except lasso.Error as e:
377 377
            return HttpResponseBadRequest('error initializing the authentication request: %r' % e)
378 378
        self.log.debug('sending authn request %r', authn_request.dump())
379 379
        self.log.debug('to url %r', login.msgUrl)
......
397 397
        self.profile = logout = utils.create_logout(request)
398 398
        try:
399 399
            logout.processRequestMsg(request.META['QUERY_STRING'])
400
        except lasso.Error, e:
400
        except lasso.Error as e:
401 401
            return HttpResponseBadRequest('error processing logout request: %r' % e)
402 402
        try:
403 403
            logout.validateRequest()
404
        except lasso.Error, e:
404
        except lasso.Error as e:
405 405
            self.log.warning('error validating logout request: %r' % e)
406 406
        issuer = request.session.get('mellon_session', {}).get('issuer')
407 407
        if issuer == logout.remoteProviderId:
......
409 409
            auth.logout(request)
410 410
        try:
411 411
            logout.buildResponseMsg()
412
        except lasso.Error, e:
412
        except lasso.Error as e:
413 413
            return HttpResponseBadRequest('error processing logout request: %r' % e)
414 414
        return HttpResponseRedirect(logout.msgUrl)
415 415

  
......
431 431
                                self.log.error('unable to find lasso session dump')
432 432
                            logout.initRequest(issuer, lasso.HTTP_METHOD_REDIRECT)
433 433
                            logout.buildRequestMsg()
434
                        except lasso.Error, e:
434
                        except lasso.Error as e:
435 435
                            self.log.error('unable to initiate a logout request %r', e)
436 436
                        else:
437 437
                            self.log.debug('sending LogoutRequest %r', logout.request.dump())
......
460 460
            self.show_message_status_is_not_success(logout, 'SAML logout failed')
461 461
        except lasso.LogoutPartialLogoutError:
462 462
            self.log.warning('partial logout')
463
        except lasso.Error, e:
463
        except lasso.Error as e:
464 464
            self.log.warning('unable to process a logout response: %s', e)
465 465
            return HttpResponseRedirect(resolve_url(settings.LOGIN_REDIRECT_URL))
466 466
        next_url = self.get_next_url(default=resolve_url(settings.LOGIN_REDIRECT_URL))
467
-