summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAli Polatel <hawking@gentoo.org>2008-01-08 22:18:11 +0000
committerAli Polatel <hawking@gentoo.org>2008-01-08 22:18:11 +0000
commiteccc98fbbe70fc659a4465131c8d2a35d7cc4aed (patch)
tree4093988de8ac1293f7e5e3f045504c13ddc0ff04 /dev-python
parentMarked ~hppa (bug #200076). (diff)
downloadgentoo-2-eccc98fbbe70fc659a4465131c8d2a35d7cc4aed.tar.gz
gentoo-2-eccc98fbbe70fc659a4465131c8d2a35d7cc4aed.tar.bz2
gentoo-2-eccc98fbbe70fc659a4465131c8d2a35d7cc4aed.zip
Revision bump. Backported security patch for 2.2.1, bug 204829. Added patch to fix tests for python-2.5. Drop old.
(Portage version: 2.1.4_rc14)
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/cherrypy/ChangeLog13
-rw-r--r--dev-python/cherrypy/cherrypy-2.1.1.ebuild38
-rw-r--r--dev-python/cherrypy/cherrypy-2.2.1-r2.ebuild (renamed from dev-python/cherrypy/cherrypy-2.2.1-r1.ebuild)8
-rw-r--r--dev-python/cherrypy/cherrypy-3.0.2.ebuild43
-rw-r--r--dev-python/cherrypy/files/cherrypy-2.1.1-test-gentoo.patch10
-rw-r--r--dev-python/cherrypy/files/cherrypy-2.2.1-invalidsession.patch22
-rw-r--r--dev-python/cherrypy/files/cherrypy-2.2.1-py2.5.patch155
-rw-r--r--dev-python/cherrypy/files/digest-cherrypy-2.1.13
-rw-r--r--dev-python/cherrypy/files/digest-cherrypy-2.2.1-r2 (renamed from dev-python/cherrypy/files/digest-cherrypy-2.2.1-r1)0
-rw-r--r--dev-python/cherrypy/files/digest-cherrypy-3.0.23
10 files changed, 194 insertions, 101 deletions
diff --git a/dev-python/cherrypy/ChangeLog b/dev-python/cherrypy/ChangeLog
index 2c9bfb3ca773..8ada9584855c 100644
--- a/dev-python/cherrypy/ChangeLog
+++ b/dev-python/cherrypy/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for dev-python/cherrypy
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/cherrypy/ChangeLog,v 1.25 2008/01/08 17:16:21 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-python/cherrypy/ChangeLog,v 1.26 2008/01/08 22:18:10 hawking Exp $
+
+*cherrypy-2.2.1-r2 (08 Jan 2008)
+
+ 08 Jan 2008; Ali Polatel <hawking@gentoo.org>
+ -files/cherrypy-2.1.1-test-gentoo.patch,
+ +files/cherrypy-2.2.1-invalidsession.patch,
+ +files/cherrypy-2.2.1-py2.5.patch, -cherrypy-2.1.1.ebuild,
+ -cherrypy-2.2.1-r1.ebuild, +cherrypy-2.2.1-r2.ebuild,
+ -cherrypy-3.0.2.ebuild:
+ Revision bump. Backported security patch for 2.2.1, bug 204829. Added patch
+ to fix tests for python-2.5. Drop old.
08 Jan 2008; Raúl Porcel <armin76@gentoo.org> cherrypy-3.0.2-r1.ebuild:
ia64/x86 stable wrt security #204829
diff --git a/dev-python/cherrypy/cherrypy-2.1.1.ebuild b/dev-python/cherrypy/cherrypy-2.1.1.ebuild
deleted file mode 100644
index d77c6236af93..000000000000
--- a/dev-python/cherrypy/cherrypy-2.1.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2006 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/cherrypy/cherrypy-2.1.1.ebuild,v 1.5 2007/07/11 06:19:47 mr_bones_ Exp $
-
-inherit distutils eutils
-
-MY_P=${P/cherrypy/CherryPy}
-
-DESCRIPTION="CherryPy is a pythonic, object-oriented web development framework."
-SRC_URI="mirror://sourceforge/cherrypy/${MY_P}.tar.gz"
-HOMEPAGE="http://www.cherrypy.org/"
-DEPEND=">=dev-lang/python-2.3"
-IUSE=""
-SLOT="0"
-KEYWORDS="~amd64 ia64 ~ppc x86"
-LICENSE="BSD"
-S=${WORKDIR}/${MY_P}
-
-DOCS="CHANGELOG.txt CHERRYPYTEAM.txt"
-
-src_unpack() {
- unpack ${A} || die
- cd ${S}
- epatch ${FILESDIR}/${P}-test-gentoo.patch
-}
-
-src_install() {
- distutils_src_install
- insinto /usr/share/doc/${P}
- doins -r cherrypy/tutorial
- insinto /usr/share/${PN}
- doins -r cherrypy/test
-}
-
-src_test() {
- cd cherrypy/test
- python test.py || die "Test failed."
-}
diff --git a/dev-python/cherrypy/cherrypy-2.2.1-r1.ebuild b/dev-python/cherrypy/cherrypy-2.2.1-r2.ebuild
index 8458b9bd80c9..9b712e8a68f4 100644
--- a/dev-python/cherrypy/cherrypy-2.2.1-r1.ebuild
+++ b/dev-python/cherrypy/cherrypy-2.2.1-r2.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2007 Gentoo Foundation
+# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/cherrypy/cherrypy-2.2.1-r1.ebuild,v 1.2 2007/07/05 20:24:30 pythonhead Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-python/cherrypy/cherrypy-2.2.1-r2.ebuild,v 1.1 2008/01/08 22:18:10 hawking Exp $
-inherit distutils
+inherit eutils distutils
MY_P=CherryPy-${PV}
@@ -23,6 +23,8 @@ src_unpack() {
unpack ${A}
cd "${S}"
+ epatch "${FILESDIR}"/${P}-py2.5.patch
+ epatch "${FILESDIR}"/${P}-invalidsession.patch
sed -i \
-e '/raw_input/d' \
cherrypy/test/test.py || die "sed failed"
diff --git a/dev-python/cherrypy/cherrypy-3.0.2.ebuild b/dev-python/cherrypy/cherrypy-3.0.2.ebuild
deleted file mode 100644
index fc62df5a02cf..000000000000
--- a/dev-python/cherrypy/cherrypy-3.0.2.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2007 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/cherrypy/cherrypy-3.0.2.ebuild,v 1.2 2007/11/01 19:25:42 jokey Exp $
-
-inherit distutils
-
-MY_P=CherryPy-${PV}
-
-DESCRIPTION="CherryPy is a pythonic, object-oriented web development framework."
-SRC_URI="http://download.cherrypy.org/cherrypy/${PV}/${MY_P}.tar.gz"
-HOMEPAGE="http://www.cherrypy.org/"
-IUSE="doc"
-SLOT="0"
-KEYWORDS="~amd64 ~ia64 ~ppc x86"
-LICENSE="BSD"
-
-DEPEND=""
-RDEPEND=""
-
-S="${WORKDIR}/${MY_P}"
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- sed -i \
- -e 's/"cherrypy.tutorial",//' \
- -e "/('cherrypy\/tutorial',/, /),/d" \
- setup.py || die "sed failed"
-
-}
-
-src_install() {
- distutils_src_install
- if use doc ; then
- insinto /usr/share/doc/${PF}
- doins -r cherrypy/tutorial
- fi
-}
-
-src_test() {
- PYTHONPATH=. "${python}" cherrypy/test/test.py --dumb || die "test failed"
-}
diff --git a/dev-python/cherrypy/files/cherrypy-2.1.1-test-gentoo.patch b/dev-python/cherrypy/files/cherrypy-2.1.1-test-gentoo.patch
deleted file mode 100644
index 8e3eea433d62..000000000000
--- a/dev-python/cherrypy/files/cherrypy-2.1.1-test-gentoo.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- cherrypy/test/test.py.org 2005-10-21 13:35:14.068726072 -0700
-+++ cherrypy/test/test.py 2005-10-21 13:35:31.693046768 -0700
-@@ -350,7 +350,6 @@
- CPTestHarness(testList).run()
-
- print
-- raw_input('hit enter')
-
-
- if __name__ == '__main__':
diff --git a/dev-python/cherrypy/files/cherrypy-2.2.1-invalidsession.patch b/dev-python/cherrypy/files/cherrypy-2.2.1-invalidsession.patch
new file mode 100644
index 000000000000..a01a606f4fdd
--- /dev/null
+++ b/dev-python/cherrypy/files/cherrypy-2.2.1-invalidsession.patch
@@ -0,0 +1,22 @@
+--- cherrypy/filters/sessionfilter.py 2006-04-25 04:37:45.000000000 +0300
++++ cherrypy/filters/sessionfilter.py 2008-01-08 23:01:09.000000000 +0200
+@@ -326,6 +326,8 @@
+ raise SessionStoragePathNotConfiguredError()
+ fileName = self.SESSION_PREFIX + id
+ file_path = os.path.join(storage_path, fileName)
++ if not os.path.normpath(file_path).startswith(storage_path):
++ raise cherrypy.HTTPError(400, "Invalid session id in cookie.")
+ return file_path
+
+ def _lock_file(self, path):
+--- cherrypy/test/test_session_filter.py 2006-04-25 04:37:40.000000000 +0300
++++ cherrypy/test/test_session_filter.py 2008-01-08 23:00:39.000000000 +0200
+@@ -28,7 +28,7 @@
+ 'server.environment': 'production',
+ 'session_filter.on': True,
+ 'session_filter.storage_type' : 'file',
+- 'session_filter.storage_path' : '.',
++ 'session_filter.storage_path' : os.path.abspath('.'),
+ })
+
+ import helper
diff --git a/dev-python/cherrypy/files/cherrypy-2.2.1-py2.5.patch b/dev-python/cherrypy/files/cherrypy-2.2.1-py2.5.patch
new file mode 100644
index 000000000000..eddab6e1dccc
--- /dev/null
+++ b/dev-python/cherrypy/files/cherrypy-2.2.1-py2.5.patch
@@ -0,0 +1,155 @@
+diff -ur CherryPy-2.2.1/cherrypy/test/test_core.py CherryPy-2.2.1-py2.5/cherrypy/test/test_core.py
+--- CherryPy-2.2.1/cherrypy/test/test_core.py 2006-04-25 04:37:40.000000000 +0300
++++ CherryPy-2.2.1-py2.5/cherrypy/test/test_core.py 2008-01-08 23:37:55.000000000 +0200
+@@ -824,15 +824,27 @@
+ self.assertBody(data)
+
+ def testCookies(self):
+- self.getPage("/cookies/single?name=First",
++ import sys
++ if sys.version_info >= (2, 5):
++ self.getPage("/cookies/single?name=First",
++ [('Cookie', 'First=Dinsdale;')])
++ self.assertHeader('Set-Cookie', 'First=Dinsdale')
++
++ self.getPage("/cookies/multiple?names=First&names=Last",
++ [('Cookie', 'First=Dinsdale; Last=Piranha;'),
++ ])
++ self.assertHeader('Set-Cookie', 'First=Dinsdale')
++ self.assertHeader('Set-Cookie', 'Last=Piranha')
++ else:
++ self.getPage("/cookies/single?name=First",
+ [('Cookie', 'First=Dinsdale;')])
+- self.assertHeader('Set-Cookie', 'First=Dinsdale;')
++ self.assertHeader('Set-Cookie', 'First=Dinsdale;')
+
+- self.getPage("/cookies/multiple?names=First&names=Last",
++ self.getPage("/cookies/multiple?names=First&names=Last",
+ [('Cookie', 'First=Dinsdale; Last=Piranha;'),
+ ])
+- self.assertHeader('Set-Cookie', 'First=Dinsdale;')
+- self.assertHeader('Set-Cookie', 'Last=Piranha;')
++ self.assertHeader('Set-Cookie', 'First=Dinsdale;')
++ self.assertHeader('Set-Cookie', 'Last=Piranha;')
+
+ def testMaxRequestSize(self):
+ self.getPage("/", headers=[('From', "x" * 500)])
+diff -ur CherryPy-2.2.1/cherrypy/test/webtest.py CherryPy-2.2.1-py2.5/cherrypy/test/webtest.py
+--- CherryPy-2.2.1/cherrypy/test/webtest.py 2006-04-25 04:37:40.000000000 +0300
++++ CherryPy-2.2.1-py2.5/cherrypy/test/webtest.py 2008-01-08 23:58:51.000000000 +0200
+@@ -204,43 +204,81 @@
+ def exit(self):
+ sys.exit()
+
+- def __call__(self, result=None):
+- if result is None:
+- result = self.defaultTestResult()
+- result.startTest(self)
+- testMethod = getattr(self, self._TestCase__testMethodName)
+- try:
+- try:
+- self.setUp()
+- except (KeyboardInterrupt, SystemExit):
+- raise
+- except:
+- result.addError(self, self._TestCase__exc_info())
+- return
+-
+- ok = 0
++ if sys.version_info >= (2, 5):
++ def __call__(self, result=None):
++ if result is None:
++ result = self.defaultTestResult()
++ result.startTest(self)
++ testMethod = getattr(self, self._testMethodName)
+ try:
+- testMethod()
+- ok = 1
+- except self.failureException:
+- result.addFailure(self, self._TestCase__exc_info())
+- except (KeyboardInterrupt, SystemExit):
+- raise
+- except:
+- result.addError(self, self._TestCase__exc_info())
+-
++ try:
++ self.setUp()
++ except (KeyboardInterrupt, SystemExit):
++ raise
++ except:
++ result.addError(self, self._exc_info())
++ return
++
++ ok = 0
++ try:
++ testMethod()
++ ok = 1
++ except self.failureException:
++ result.addFailure(self, self._exc_info())
++ except (KeyboardInterrupt, SystemExit):
++ raise
++ except:
++ result.addError(self, self._exc_info())
++
++ try:
++ self.tearDown()
++ except (KeyboardInterrupt, SystemExit):
++ raise
++ except:
++ result.addError(self, self._exc_info())
++ ok = 0
++ if ok:
++ result.addSuccess(self)
++ finally:
++ result.stopTest(self)
++ else:
++ def __call__(self, result=None):
++ if result is None:
++ result = self.defaultTestResult()
++ result.startTest(self)
++ testMethod = getattr(self, self._TestCase__testMethodName)
+ try:
+- self.tearDown()
+- except (KeyboardInterrupt, SystemExit):
+- raise
+- except:
+- result.addError(self, self._TestCase__exc_info())
++ try:
++ self.setUp()
++ except (KeyboardInterrupt, SystemExit):
++ raise
++ except:
++ result.addError(self, self._TestCase__exc_info())
++ return
++
+ ok = 0
+- if ok:
+- result.addSuccess(self)
+- finally:
+- result.stopTest(self)
+-
++ try:
++ testMethod()
++ ok = 1
++ except self.failureException:
++ result.addFailure(self, self._TestCase__exc_info())
++ except (KeyboardInterrupt, SystemExit):
++ raise
++ except:
++ result.addError(self, self._TestCase__exc_info())
++
++ try:
++ self.tearDown()
++ except (KeyboardInterrupt, SystemExit):
++ raise
++ except:
++ result.addError(self, self._TestCase__exc_info())
++ ok = 0
++ if ok:
++ result.addSuccess(self)
++ finally:
++ result.stopTest(self)
++
+ def assertStatus(self, status, msg=None):
+ """Fail if self.status != status."""
+ if isinstance(status, basestring):
diff --git a/dev-python/cherrypy/files/digest-cherrypy-2.1.1 b/dev-python/cherrypy/files/digest-cherrypy-2.1.1
deleted file mode 100644
index ffea61fe0daf..000000000000
--- a/dev-python/cherrypy/files/digest-cherrypy-2.1.1
+++ /dev/null
@@ -1,3 +0,0 @@
-MD5 f36d73a8c38c1444285b37c3451dce86 CherryPy-2.1.1.tar.gz 177839
-RMD160 9f310f96fe6f8046a6e05fef6b855e66018d48be CherryPy-2.1.1.tar.gz 177839
-SHA256 2edb7213b030c116c53bbe5bc72c85e2978ed2aa515b6ba9560c8a8ce8968cf0 CherryPy-2.1.1.tar.gz 177839
diff --git a/dev-python/cherrypy/files/digest-cherrypy-2.2.1-r1 b/dev-python/cherrypy/files/digest-cherrypy-2.2.1-r2
index 9c6163b20695..9c6163b20695 100644
--- a/dev-python/cherrypy/files/digest-cherrypy-2.2.1-r1
+++ b/dev-python/cherrypy/files/digest-cherrypy-2.2.1-r2
diff --git a/dev-python/cherrypy/files/digest-cherrypy-3.0.2 b/dev-python/cherrypy/files/digest-cherrypy-3.0.2
deleted file mode 100644
index 8c807b9dd474..000000000000
--- a/dev-python/cherrypy/files/digest-cherrypy-3.0.2
+++ /dev/null
@@ -1,3 +0,0 @@
-MD5 d0b10db126a708b763f243ef764ad21a CherryPy-3.0.2.tar.gz 262428
-RMD160 0bd98ca014b6539cd03969b6b3d85308d296b88e CherryPy-3.0.2.tar.gz 262428
-SHA256 cd590e57543bf1c590c006bfd7c222adce6ab1584ef35d72dd91558e4e281a1a CherryPy-3.0.2.tar.gz 262428