summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAymeric Augustin <aymeric.augustin@m4x.org>2012-09-07 19:23:16 -0400
committerAymeric Augustin <aymeric.augustin@m4x.org>2012-09-07 19:24:02 -0400
commit4e1fd38bd6f007b6bb4cc57a0a841b78475a9d26 (patch)
treec1319857a045d3261baa1d667f84c75c1d51b2d3
parent6add6170c0aa7c870c4a66f8e33ecde93f7fd975 (diff)
Fixed #18781 -- Reduced max session cookie size.
-rw-r--r--django/contrib/messages/storage/cookie.py8
-rw-r--r--django/contrib/messages/tests/base.py10
2 files changed, 9 insertions, 9 deletions
diff --git a/django/contrib/messages/storage/cookie.py b/django/contrib/messages/storage/cookie.py
index 5f64ccd0c5..6b5b016234 100644
--- a/django/contrib/messages/storage/cookie.py
+++ b/django/contrib/messages/storage/cookie.py
@@ -46,10 +46,10 @@ class CookieStorage(BaseStorage):
Stores messages in a cookie.
"""
cookie_name = 'messages'
- # We should be able to store 4K in a cookie, but Internet Explorer
- # imposes 4K as the *total* limit for a domain. To allow other
- # cookies, we go for 3/4 of 4K.
- max_cookie_size = 3072
+ # uwsgi's default configuration enforces a maximum size of 4kb for all the
+ # HTTP headers. In order to leave some room for other cookies and headers,
+ # restrict the session cookie to 1/2 of 4kb. See #18781.
+ max_cookie_size = 2048
not_finished = '__messagesnotfinished__'
def _get(self, *args, **kwargs):
diff --git a/django/contrib/messages/tests/base.py b/django/contrib/messages/tests/base.py
index e9a67b0500..b3ced12773 100644
--- a/django/contrib/messages/tests/base.py
+++ b/django/contrib/messages/tests/base.py
@@ -152,7 +152,7 @@ class BaseTest(TestCase):
cycle.
"""
data = {
- 'messages': ['Test message %d' % x for x in range(10)],
+ 'messages': ['Test message %d' % x for x in range(5)],
}
show_url = reverse('django.contrib.messages.tests.urls.show')
for level in ('debug', 'info', 'success', 'warning', 'error'):
@@ -170,7 +170,7 @@ class BaseTest(TestCase):
@override_settings(MESSAGE_LEVEL=constants.DEBUG)
def test_with_template_response(self):
data = {
- 'messages': ['Test message %d' % x for x in range(10)],
+ 'messages': ['Test message %d' % x for x in range(5)],
}
show_url = reverse('django.contrib.messages.tests.urls.show_template_response')
for level in self.levels.keys():
@@ -194,7 +194,7 @@ class BaseTest(TestCase):
before a GET.
"""
data = {
- 'messages': ['Test message %d' % x for x in range(10)],
+ 'messages': ['Test message %d' % x for x in range(5)],
}
show_url = reverse('django.contrib.messages.tests.urls.show')
messages = []
@@ -226,7 +226,7 @@ class BaseTest(TestCase):
when one attempts to store a message.
"""
data = {
- 'messages': ['Test message %d' % x for x in range(10)],
+ 'messages': ['Test message %d' % x for x in range(5)],
}
show_url = reverse('django.contrib.messages.tests.urls.show')
for level in ('debug', 'info', 'success', 'warning', 'error'):
@@ -251,7 +251,7 @@ class BaseTest(TestCase):
raised if 'fail_silently' = True
"""
data = {
- 'messages': ['Test message %d' % x for x in range(10)],
+ 'messages': ['Test message %d' % x for x in range(5)],
'fail_silently': True,
}
show_url = reverse('django.contrib.messages.tests.urls.show')