Skip to content

Commit

Permalink
Merge pull request #336 from craigds/master
Browse files Browse the repository at this point in the history
fix hashcompat deprecation warnings with django 1.5
  • Loading branch information
jezdez committed Nov 26, 2012
2 parents 28f64e3 + dc62f81 commit 1ca18c6
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 6 deletions.
9 changes: 7 additions & 2 deletions debug_toolbar/utils/tracking/db.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,16 @@
from django.template import Node
from django.utils import simplejson
from django.utils.encoding import force_unicode, smart_str
from django.utils.hashcompat import sha_constructor

from debug_toolbar.utils import ms_from_timedelta, tidy_stacktrace, \
get_template_info, get_stack
from debug_toolbar.utils.compat.db import connections

try:
from hashlib import sha1
except ImportError:
from django.utils.hashcompat import sha_constructor as sha1

# TODO:This should be set in the toolbar loader as a default and panels should
# get a copy of the toolbar object with access to its config dictionary
SQL_WARNING_THRESHOLD = getattr(settings, 'DEBUG_TOOLBAR_CONFIG', {}) \
Expand Down Expand Up @@ -134,7 +139,7 @@ def execute(self, sql, params=()):
'duration': duration,
'raw_sql': sql,
'params': _params,
'hash': sha_constructor(settings.SECRET_KEY \
'hash': sha1(settings.SECRET_KEY \
+ smart_str(sql) \
+ _params).hexdigest(),
'stacktrace': stacktrace,
Expand Down
12 changes: 8 additions & 4 deletions debug_toolbar/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,14 @@
from django.http import HttpResponseBadRequest
from django.shortcuts import render_to_response
from django.utils import simplejson
from django.utils.hashcompat import sha_constructor

from debug_toolbar.utils.compat.db import connections

try:
from hashlib import sha1
except ImportError:
from django.utils.hashcompat import sha_constructor as sha1


class InvalidSQLError(Exception):
def __init__(self, value):
Expand All @@ -37,7 +41,7 @@ def sql_select(request):
sql = request.GET.get('sql', '')
params = request.GET.get('params', '')
alias = request.GET.get('alias', 'default')
hash = sha_constructor(settings.SECRET_KEY + sql + params).hexdigest()
hash = sha1(settings.SECRET_KEY + sql + params).hexdigest()
if hash != request.GET.get('hash', ''):
return HttpResponseBadRequest('Tamper alert') # SQL Tampering alert
if sql.lower().strip().startswith('select'):
Expand Down Expand Up @@ -72,7 +76,7 @@ def sql_explain(request):
sql = request.GET.get('sql', '')
params = request.GET.get('params', '')
alias = request.GET.get('alias', 'default')
hash = sha_constructor(settings.SECRET_KEY + sql + params).hexdigest()
hash = sha1(settings.SECRET_KEY + sql + params).hexdigest()
if hash != request.GET.get('hash', ''):
return HttpResponseBadRequest('Tamper alert') # SQL Tampering alert
if sql.lower().strip().startswith('select'):
Expand Down Expand Up @@ -118,7 +122,7 @@ def sql_profile(request):
sql = request.GET.get('sql', '')
params = request.GET.get('params', '')
alias = request.GET.get('alias', 'default')
hash = sha_constructor(settings.SECRET_KEY + sql + params).hexdigest()
hash = sha1(settings.SECRET_KEY + sql + params).hexdigest()
if hash != request.GET.get('hash', ''):
return HttpResponseBadRequest('Tamper alert') # SQL Tampering alert
if sql.lower().strip().startswith('select'):
Expand Down

0 comments on commit 1ca18c6

Please sign in to comment.