X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=apps%2Fpatchwork%2Fviews%2Fxmlrpc.py;h=bb9ebe15d82a9df37176d6fa42167db7efdb7073;hb=56e2243f3be7e859666ce0e4e1a8b8b94444f8d4;hp=23e58bf279bd141f076a49f6cedc17a4bc3ac8f2;hpb=7bcba313da27b7230b14a7ea41d50e76cd03e9a5;p=patchwork diff --git a/apps/patchwork/views/xmlrpc.py b/apps/patchwork/views/xmlrpc.py index 23e58bf..bb9ebe1 100644 --- a/apps/patchwork/views/xmlrpc.py +++ b/apps/patchwork/views/xmlrpc.py @@ -20,15 +20,13 @@ # Patchwork XMLRPC interface # -from django.core.exceptions import ImproperlyConfigured from SimpleXMLRPCServer import SimpleXMLRPCDispatcher from django.http import HttpResponse, HttpResponseRedirect, \ HttpResponseServerError -from django.conf import settings from django.core import urlresolvers -from django.shortcuts import render_to_response from django.contrib.auth import authenticate -from patchwork.models import Patch, Project, Person, Bundle, State +from patchwork.models import Patch, Project, Person, State +from django.views.decorators.csrf import csrf_exempt import sys import base64 @@ -58,14 +56,14 @@ class PatchworkXMLRPCDispatcher(SimpleXMLRPCDispatcher): def _user_for_request(self, request): - auth_header = None + auth_header = None - if request.META.has_key('HTTP_AUTHORIZATION'): - auth_header = request.META.get('HTTP_AUTHORIZATION') - elif request.META.has_key('Authorization'): - auth_header = request.META.get('Authorization') + if 'HTTP_AUTHORIZATION' in request.META: + auth_header = request.META.get('HTTP_AUTHORIZATION') + elif 'Authorization' in request.META: + auth_header = request.META.get('Authorization') - if auth_header is None or auth_header == '': + if auth_header is None or auth_header == '': raise Exception("No authentication credentials given") str = auth_header.strip() @@ -120,6 +118,7 @@ class PatchworkXMLRPCDispatcher(SimpleXMLRPCDispatcher): dispatcher = PatchworkXMLRPCDispatcher() # XMLRPC view function +@csrf_exempt def xmlrpc(request): if request.method != 'POST': return HttpResponseRedirect( @@ -130,7 +129,7 @@ def xmlrpc(request): try: ret = dispatcher._marshaled_dispatch(request) response.write(ret) - except Exception, e: + except Exception: return HttpResponseServerError() return response