def xor_searcher(request, sample_md5): """ Generate xor search results for a sample. Should be an AJAX POST. :param request: Django request object (Required) :type request: :class:`django.http.HttpRequest` :param sample_md5: The MD5 of the sample to use. :type sample_md5: str :returns: :class:`django.http.HttpResponse` """ if request.method == "POST" and request.is_ajax(): form = XORSearchForm(request.POST) if form.is_valid(): try: string = request.POST['string'] except: string = None try: if request.POST["skip_nulls"] == "on": skip_nulls = 1 except: skip_nulls = 0 try: if request.POST["is_key"] == "on": is_key = 1 except: is_key = 0 if is_key: try: result = {"keys": [int(string)]} except: result = {"keys": []} else: results = xor_search(md5=sample_md5, string=string, skip_nulls=skip_nulls) result = {"keys": results} return HttpResponse(json.dumps(result), mimetype='application/json') else: return render_to_response('error.html', {'error': "Invalid Form."}, RequestContext(request)) else: return render_to_response('error.html', {'error': "Expected AJAX POST."}, RequestContext(request))
def xor_searcher(request, sample_md5): """ Generate xor search results for a sample. Should be an AJAX POST. :param request: Django request object (Required) :type request: :class:`django.http.HttpRequest` :param sample_md5: The MD5 of the sample to use. :type sample_md5: str :returns: :class:`django.http.HttpResponse` """ if request.method == "POST" and request.is_ajax(): form = XORSearchForm(request.POST) if form.is_valid(): try: string = request.POST['string'] except: string = None try: if request.POST["skip_nulls"] == "on": skip_nulls = 1 except: skip_nulls = 0 try: if request.POST["is_key"] == "on": is_key = 1 except: is_key = 0 if is_key: try: result = {"keys": [int(string)]} except: result = {"keys": []} else: results = xor_search(md5=sample_md5, string=string, skip_nulls=skip_nulls) result = {"keys": results} return HttpResponse(json.dumps(result), content_type="application/json") else: return render_to_response('error.html', {'error': "Invalid Form."}, RequestContext(request)) else: return render_to_response('error.html', {'error': "Expected AJAX POST."}, RequestContext(request))