head 1.2; access; symbols pkgsrc-2013Q2:1.2.0.12 pkgsrc-2013Q2-base:1.2 pkgsrc-2012Q4:1.2.0.10 pkgsrc-2012Q4-base:1.2 pkgsrc-2011Q4:1.2.0.8 pkgsrc-2011Q4-base:1.2 pkgsrc-2011Q2:1.2.0.6 pkgsrc-2011Q2-base:1.2 pkgsrc-2009Q4:1.2.0.4 pkgsrc-2009Q4-base:1.2 pkgsrc-2008Q4:1.2.0.2 pkgsrc-2008Q4-base:1.2 pkgsrc-2008Q3:1.1.0.6 pkgsrc-2008Q3-base:1.1 cube-native-xorg:1.1.0.4 cube-native-xorg-base:1.1 pkgsrc-2008Q2:1.1.0.2; locks; strict; comment @# @; 1.2 date 2008.10.25.16.18.18; author taca; state dead; branches; next 1.1; 1.1 date 2008.08.17.15.12.32; author taca; state Exp; branches 1.1.2.1; next ; 1.1.2.1 date 2008.08.17.15.12.32; author tron; state dead; branches; next 1.1.2.2; 1.1.2.2 date 2008.08.20.10.05.24; author tron; state Exp; branches; next ; desc @@ 1.2 log @Update zope29 package to 2.9.10 (Zope 2.9.10). Zope 2.9.10 (2008/10/24) Bugs fixed * Ensure that response header values cannot embed CRLF pairs, which violate the HTTP spec (RFC 2616). * Launchpad #282677: fixed implementation of guarded_map and provided tests and implementation for guarded_zip (RestrictedPython). * AccessControl.ZopeGuards.guarded_import mapped some Unauthorized exceptions onto ImportErrors: don't do that! Also, removed mutable defaults from argument list, improved tests. * LP #281156: AccessControl.SecurityInfo.secureModule dropped ModuleSecurity for failed imports, obscuring later attempts to import the same broken module. * LP #142667: Updated to ZODB-3.6.4 to fix problem with product auto-refresh. * Launchpad #267545: DateTime(DateTime()) now preserves the correct hour * Launchpad #245649: the Products package is now a proper "namespace package" under the rules specified by setuptools. * Launchpad #239636: Ensure that HEAD requests lock an empty body for NotFound errors. * Launchpad #234209: De-tabify ZPublisher/HTTPRequest.py * integrated Hotfix-2008-08-12 @ text @$NetBSD: patch-al,v 1.1 2008/08/17 15:12:32 taca Exp $ Patch #2 corresponding to security advisory 2008-08-12. --- lib/python/Products/PythonScripts/__init__.py.orig 2008-05-10 15:35:03.000000000 +0900 +++ lib/python/Products/PythonScripts/__init__.py @@@@ -61,3 +61,102 @@@@ def recompile(self): if names: return 'The following Scripts were recompiled:\n' + '\n'.join(names) return 'No Scripts were found that required recompilation.' + + +# Monkey patch for LP #257276 + +# This code is taken from the encodings module of Python 2.4. +# Note that this code is originally (C) CNRI and it is possibly not compatible +# with the ZPL and therefore should not live within svn.zope.org. However this +# checkin is blessed by Jim Fulton for now. The fix is no longer required with +# Python 2.5 and hopefully fixed in Python 2.4.6 release. + + +# Written by Marc-Andre Lemburg (mal@@lemburg.com). +# (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. + +def search_function(encoding): + + # Cache lookup + entry = _cache.get(encoding, _unknown) + if entry is not _unknown: + return entry + + # Import the module: + # + # First try to find an alias for the normalized encoding + # name and lookup the module using the aliased name, then try to + # lookup the module using the standard import scheme, i.e. first + # try in the encodings package, then at top-level. + # + norm_encoding = normalize_encoding(encoding) + aliased_encoding = _aliases.get(norm_encoding) or \ + _aliases.get(norm_encoding.replace('.', '_')) + if aliased_encoding is not None: + modnames = [aliased_encoding, + norm_encoding] + else: + modnames = [norm_encoding] + for modname in modnames: + + if not modname or '.' in modname: + continue + + try: + mod = __import__(modname, + globals(), locals(), _import_tail) + if not mod.__name__.startswith('encodings.'): + continue + + except ImportError: + pass + else: + break + else: + mod = None + + try: + getregentry = mod.getregentry + except AttributeError: + # Not a codec module + mod = None + + if mod is None: + # Cache misses + _cache[encoding] = None + return None + + # Now ask the module for the registry entry + entry = tuple(getregentry()) + if len(entry) != 4: + raise CodecRegistryError,\ + 'module "%s" (%s) failed to register' % \ + (mod.__name__, mod.__file__) + for obj in entry: + if not callable(obj): + raise CodecRegistryError,\ + 'incompatible codecs in module "%s" (%s)' % \ + (mod.__name__, mod.__file__) + + # Cache the codec registry entry + _cache[encoding] = entry + + # Register its aliases (without overwriting previously registered + # aliases) + try: + codecaliases = mod.getaliases() + except AttributeError: + pass + else: + for alias in codecaliases: + if not _aliases.has_key(alias): + _aliases[alias] = modname + + # Return the registry entry + return entry + + +# MONKEY + +import encodings +encodings.search_function.func_code = search_function.func_code @ 1.1 log @Add some changes from Zope's svn repository which should fix Zope's security advisory 2008-08-12. Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD$ @ 1.1.2.1 log @file patch-al was added on branch pkgsrc-2008Q2 on 2008-08-20 10:05:24 +0000 @ text @d1 109 @ 1.1.2.2 log @Pullup ticket #2499 - requested by taca zope29: security patch Revisions pulled up: - www/zope29/Makefile 1.20 - www/zope29/distinfo 1.7 - www/zope29/patches/patch-ak 1.1 - www/zope29/patches/patch-al 1.1 --- Module Name: pkgsrc Committed By: taca Date: Sun Aug 17 15:12:32 UTC 2008 Modified Files: pkgsrc/www/zope29: Makefile distinfo Added Files: pkgsrc/www/zope29/patches: patch-ak patch-al Log Message: Add some changes from Zope's svn repository which should fix Zope's security advisory 2008-08-12. Bump PKGREVISION. @ text @a0 109 $NetBSD: patch-al,v 1.1 2008/08/17 15:12:32 taca Exp $ Patch #2 corresponding to security advisory 2008-08-12. --- lib/python/Products/PythonScripts/__init__.py.orig 2008-05-10 15:35:03.000000000 +0900 +++ lib/python/Products/PythonScripts/__init__.py @@@@ -61,3 +61,102 @@@@ def recompile(self): if names: return 'The following Scripts were recompiled:\n' + '\n'.join(names) return 'No Scripts were found that required recompilation.' + + +# Monkey patch for LP #257276 + +# This code is taken from the encodings module of Python 2.4. +# Note that this code is originally (C) CNRI and it is possibly not compatible +# with the ZPL and therefore should not live within svn.zope.org. However this +# checkin is blessed by Jim Fulton for now. The fix is no longer required with +# Python 2.5 and hopefully fixed in Python 2.4.6 release. + + +# Written by Marc-Andre Lemburg (mal@@lemburg.com). +# (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. + +def search_function(encoding): + + # Cache lookup + entry = _cache.get(encoding, _unknown) + if entry is not _unknown: + return entry + + # Import the module: + # + # First try to find an alias for the normalized encoding + # name and lookup the module using the aliased name, then try to + # lookup the module using the standard import scheme, i.e. first + # try in the encodings package, then at top-level. + # + norm_encoding = normalize_encoding(encoding) + aliased_encoding = _aliases.get(norm_encoding) or \ + _aliases.get(norm_encoding.replace('.', '_')) + if aliased_encoding is not None: + modnames = [aliased_encoding, + norm_encoding] + else: + modnames = [norm_encoding] + for modname in modnames: + + if not modname or '.' in modname: + continue + + try: + mod = __import__(modname, + globals(), locals(), _import_tail) + if not mod.__name__.startswith('encodings.'): + continue + + except ImportError: + pass + else: + break + else: + mod = None + + try: + getregentry = mod.getregentry + except AttributeError: + # Not a codec module + mod = None + + if mod is None: + # Cache misses + _cache[encoding] = None + return None + + # Now ask the module for the registry entry + entry = tuple(getregentry()) + if len(entry) != 4: + raise CodecRegistryError,\ + 'module "%s" (%s) failed to register' % \ + (mod.__name__, mod.__file__) + for obj in entry: + if not callable(obj): + raise CodecRegistryError,\ + 'incompatible codecs in module "%s" (%s)' % \ + (mod.__name__, mod.__file__) + + # Cache the codec registry entry + _cache[encoding] = entry + + # Register its aliases (without overwriting previously registered + # aliases) + try: + codecaliases = mod.getaliases() + except AttributeError: + pass + else: + for alias in codecaliases: + if not _aliases.has_key(alias): + _aliases[alias] = modname + + # Return the registry entry + return entry + + +# MONKEY + +import encodings +encodings.search_function.func_code = search_function.func_code @