def system_upload(request, system_name): try: system = System.objects.get(name=system_name) except System.DoesNotExist: raise Http404 content_length = int(request.META['CONTENT_LENGTH']) if content_length > MAX_CONTENT_LENGTH: return HttpResponseBadRequest("Report too big") try: signed_request.check_signature(request, system.secret_key) except signed_request.BadSignature, e: return HttpResponseForbidden(str(e))
def upload(request): machine_name = request.GET.get('machine', None) if machine_name is None: return HttpResponseBadRequest("No machine= parameter in URL") try: machine = config.Machine.get(machine_name) except KeyError: return HttpResponseNotFound("No such machine") pubkey_path = os.path.join(settings.CONFIG_ROOT, 'machines', machine.name + '.pubkey') try: check_signature(request, pubkey_path) except BadSignature, e: return HttpResponseBadRequest("Signature check failed: " + e.message)