head 1.8; access; symbols pkgsrc-2013Q2:1.8.0.4 pkgsrc-2013Q2-base:1.8 pkgsrc-2012Q4:1.8.0.2 pkgsrc-2012Q4-base:1.8 pkgsrc-2012Q1:1.7.0.56 pkgsrc-2012Q1-base:1.7 pkgsrc-2011Q4:1.7.0.54 pkgsrc-2011Q4-base:1.7 pkgsrc-2011Q3:1.7.0.52 pkgsrc-2011Q3-base:1.7 pkgsrc-2011Q2:1.7.0.50 pkgsrc-2011Q2-base:1.7 pkgsrc-2011Q1:1.7.0.48 pkgsrc-2011Q1-base:1.7 pkgsrc-2010Q4:1.7.0.46 pkgsrc-2010Q4-base:1.7 pkgsrc-2010Q3:1.7.0.44 pkgsrc-2010Q3-base:1.7 pkgsrc-2010Q2:1.7.0.42 pkgsrc-2010Q2-base:1.7 pkgsrc-2010Q1:1.7.0.40 pkgsrc-2010Q1-base:1.7 pkgsrc-2009Q4:1.7.0.38 pkgsrc-2009Q4-base:1.7 pkgsrc-2009Q3:1.7.0.36 pkgsrc-2009Q3-base:1.7 pkgsrc-2009Q2:1.7.0.34 pkgsrc-2009Q2-base:1.7 pkgsrc-2009Q1:1.7.0.32 pkgsrc-2009Q1-base:1.7 pkgsrc-2008Q4:1.7.0.30 pkgsrc-2008Q4-base:1.7 pkgsrc-2008Q3:1.7.0.28 pkgsrc-2008Q3-base:1.7 cube-native-xorg:1.7.0.26 cube-native-xorg-base:1.7 pkgsrc-2008Q2:1.7.0.24 pkgsrc-2008Q2-base:1.7 cwrapper:1.7.0.22 pkgsrc-2008Q1:1.7.0.20 pkgsrc-2008Q1-base:1.7 pkgsrc-2007Q4:1.7.0.18 pkgsrc-2007Q4-base:1.7 pkgsrc-2007Q3:1.7.0.16 pkgsrc-2007Q3-base:1.7 pkgsrc-2007Q2:1.7.0.14 pkgsrc-2007Q2-base:1.7 pkgsrc-2007Q1:1.7.0.12 pkgsrc-2007Q1-base:1.7 pkgsrc-2006Q4:1.7.0.10 pkgsrc-2006Q4-base:1.7 pkgsrc-2006Q3:1.7.0.8 pkgsrc-2006Q3-base:1.7 pkgsrc-2006Q2:1.7.0.6 pkgsrc-2006Q2-base:1.7 pkgsrc-2006Q1:1.7.0.4 pkgsrc-2006Q1-base:1.7 pkgsrc-2005Q4:1.7.0.2 pkgsrc-2005Q4-base:1.7 pkgsrc-2005Q3:1.5.0.2 pkgsrc-2005Q3-base:1.5 pkgsrc-2005Q2:1.2.0.2 pkgsrc-2005Q2-base:1.2 pkgsrc-2005Q1:1.1.0.4 pkgsrc-2005Q1-base:1.1 pkgsrc-2004Q4:1.1.0.2; locks; strict; comment @# @; 1.8 date 2012.04.08.19.09.05; author wiz; state dead; branches; next 1.7; 1.7 date 2005.11.16.19.18.59; author joerg; state Exp; branches; next 1.6; 1.6 date 2005.10.01.21.12.05; author recht; state dead; branches; next 1.5; 1.5 date 2005.08.23.20.55.46; author darcy; state Exp; branches; next 1.4; 1.4 date 2005.07.21.09.20.08; author wiz; state dead; branches; next 1.3; 1.3 date 2005.07.03.19.48.22; author recht; state Exp; branches; next 1.2; 1.2 date 2005.05.09.20.37.51; author recht; state dead; branches; next 1.1; 1.1 date 2005.02.04.15.39.04; author drochner; state Exp; branches 1.1.2.1; next ; 1.1.2.1 date 2005.02.04.15.39.04; author salo; state dead; branches; next 1.1.2.2; 1.1.2.2 date 2005.02.16.14.00.09; author salo; state Exp; branches; next ; desc @@ 1.8 log @Remove python24 and all traces of it from pkgsrc. Remove devel/py-ctypes (only needed by and supporting python24). Remove PYTHON_VERSIONS_ACCEPTED and PYTHON_VERSIONS_INCOMPATIBLE lines that just mirror defaults now. Miscellaneous cleanup while editing all these files. @ text @$NetBSD: patch-an,v 1.7 2005/11/16 19:18:59 joerg Exp $ --- Modules/makesetup.orig 2002-03-29 19:00:18.000000000 +0100 +++ Modules/makesetup @@@@ -164,6 +164,7 @@@@ sed -e 's/[ ]*#.*//' -e '/^[ ]*$/d' | -rpath) libs="$libs $arg"; skip=libs;; --rpath) libs="$libs $arg"; skip=libs;; -[A-Zl]*) libs="$libs $arg";; + -pthread) libs="$libs $arg";; *.a) libs="$libs $arg";; *.so) libs="$libs $arg";; *.sl) libs="$libs $arg";; @ 1.7 log @Fix Python's makesetup script to treat -pthread as linker flag. This is needed for databases/py-psycopg at least to compile properly. Since the installed version changed, bump revision. @ text @d1 1 a1 1 $NetBSD$ @ 1.6 log @Update to Python 2.4.2 Python 2.4.2 is a bugfix release of Python 2.4 - Python 2.4 is now in bugfix-only mode, no new features are being added. More than 60 bugs have been squashed since Python 2.4.1, including bugs that prevented Python working properly on 64 bit AIX and HP/UX. For a detailed list of changes see: http://python.org/2.4.2/NEWS.html @ text @d1 1 a1 1 $NetBSD: patch-an,v 1.5 2005/08/23 20:55:46 darcy Exp $ d3 10 a12 16 --- Lib/weakref.py.orig 2004-08-31 07:38:12.000000000 -0400 +++ Lib/weakref.py @@@@ -43,12 +43,12 @@@@ class WeakValueDictionary(UserDict.UserD # way in). def __init__(self, *args, **kw): - UserDict.UserDict.__init__(self, *args, **kw) def remove(wr, selfref=ref(self)): self = selfref() if self is not None: del self.data[wr.key] self._remove = remove + UserDict.UserDict.__init__(self, *args, **kw) def __getitem__(self, key): o = self.data[key]() @ 1.5 log @There was a bug in Python that was supposed to be fixed but it seems to have regressed in the latest version. I have contacted a Python developer to have this fixed properly. In the meantime I have created a patch to fix it in our tree. See http://sourceforge.net/tracker/index.php?func=detail&aid=1196315&group_id=5470&atid=105470 for details of the bug. Bumped PKGREVISION. @ text @d1 1 a1 1 $NetBSD$ @ 1.4 log @patch-an was removed from distinfo during 2.4.1 update, remove file too. @ text @d1 1 a1 1 $NetBSD: patch-an,v 1.3 2005/07/03 19:48:22 recht Exp $ d3 4 a6 16 --- Include/pyport.h.orig 2004-09-23 21:11:21.000000000 +0200 +++ Include/pyport.h 2005-07-03 20:02:08.000000000 +0200 @@@@ -152,11 +152,23 @@@@ #if defined(PYOS_OS2) && defined(PYCC_GCC) #include #endif + +#if (defined __APPLE__) && (!defined _POSIX_C_SOURCE) +#define TEMPORARILY_DEFINING__POSIX_C_SOURCE /* so we can #undef it later */ +#define _POSIX_C_SOURCE /* avoid deprecated struct ostat in sys/stat.h */ +#endif + #include #elif defined(HAVE_STAT_H) #include #endif d8 11 a18 9 +/* Mac OS X: undefine _POSIX_C_SOURCE if it wasn't defined before */ +#ifdef TEMPORARILY_DEFINING__POSIX_C_SOURCE +#undef _POSIX_C_SOURCE +#undef TEMPORARILY_DEFINING__POSIX_C_SOURCE +#endif + #if defined(PYCC_VACPP) /* VisualAge C/C++ Failed to Define MountType Field in sys/stat.h */ #define S_IFMT (S_IFDIR|S_IFCHR|S_IFREG) @ 1.3 log @Add devel/gettext-lib as dependency to avoid problems with the locale module not being built. - fix suggested by Simon Kuhn in PR 29735 Add a patch from darwinports to workaround for deprecated ostat in sys/stat.h on OS X 10.4. bump PKGREVISION @ text @d1 1 a1 1 $NetBSD$ @ 1.2 log @update to Python 2.4.1 Highlights of this new release include: - Bug fixes. According to the release notes, several dozen bugs have been fixed, including a fix for the SimpleXMLRPCServer security issue (PSF-2005-001). Also add a patch by Joerg Sonnenberger to add basic support for DragonFly BSD. For a detailed list of changes see: http://python.org/2.4.1/NEWS.html @ text @d1 1 a1 1 $NetBSD: patch-an,v 1.1 2005/02/04 15:39:04 drochner Exp $ d3 26 a28 80 --- Lib/SimpleXMLRPCServer.py.orig 2004-10-04 01:21:44.000000000 +0200 +++ Lib/SimpleXMLRPCServer.py @@@@ -106,14 +106,22 @@@@ import BaseHTTPServer import sys import os -def resolve_dotted_attribute(obj, attr): +def resolve_dotted_attribute(obj, attr, allow_dotted_names=True): """resolve_dotted_attribute(a, 'b.c.d') => a.b.c.d Resolves a dotted attribute name to an object. Raises an AttributeError if any attribute in the chain starts with a '_'. + + If the optional allow_dotted_names argument is false, dots are not + supported and this function operates similar to getattr(obj, attr). """ - for i in attr.split('.'): + if allow_dotted_names: + attrs = attr.split('.') + else: + attrs = [attr] + + for i in attrs: if i.startswith('_'): raise AttributeError( 'attempt to access private attribute "%s"' % i @@@@ -155,7 +163,7 @@@@ class SimpleXMLRPCDispatcher: self.funcs = {} self.instance = None - def register_instance(self, instance): + def register_instance(self, instance, allow_dotted_names=False): """Registers an instance to respond to XML-RPC requests. Only one instance can be installed at a time. @@@@ -173,9 +181,23 @@@@ class SimpleXMLRPCDispatcher: If a registered function matches a XML-RPC request, then it will be called instead of the registered instance. + + If the optional allow_dotted_names argument is true and the + instance does not have a _dispatch method, method names + containing dots are supported and resolved, as long as none of + the name segments start with an '_'. + + *** SECURITY WARNING: *** + + Enabling the allow_dotted_names options allows intruders + to access your module's global variables and may allow + intruders to execute arbitrary code on your machine. Only + use this option on a secure, closed network. + """ self.instance = instance + self.allow_dotted_names = allow_dotted_names def register_function(self, function, name = None): """Registers a function to respond to XML-RPC requests. @@@@ -294,7 +316,8 @@@@ class SimpleXMLRPCDispatcher: try: method = resolve_dotted_attribute( self.instance, - method_name + method_name, + self.allow_dotted_names ) except AttributeError: pass @@@@ -373,7 +396,8 @@@@ class SimpleXMLRPCDispatcher: try: func = resolve_dotted_attribute( self.instance, - method + method, + self.allow_dotted_names ) except AttributeError: pass @ 1.1 log @apply the security fix from http://www.python.org/security/PSF-2005-001/ This disables hierarchical object lookups in SimpleXMLRPCServer. Unfortunately, this breaks some applications (eg kenosis). Don't shoot me for this. bump PKGREVISION @ text @d1 1 a1 1 $NetBSD$ @ 1.1.2.1 log @file patch-an was added on branch pkgsrc-2004Q4 on 2005-02-04 15:39:04 +0000 @ text @d1 82 @ 1.1.2.2 log @Pullup ticket 289 - requested by Matthias Drochner security fix for python Patches hand-rolled, based on the following commit: Module Name: pkgsrc Committed By: drochner Date: Fri Feb 4 15:39:04 UTC 2005 Modified Files: pkgsrc/lang/python22: Makefile distinfo pkgsrc/lang/python23: Makefile distinfo pkgsrc/lang/python23-nth: Makefile pkgsrc/lang/python24: Makefile distinfo Added Files: pkgsrc/lang/python22/patches: patch-an pkgsrc/lang/python23/patches: patch-an pkgsrc/lang/python24/patches: patch-an Log Message: apply the security fix from http://www.python.org/security/PSF-2005-001/ This disables hierarchical object lookups in SimpleXMLRPCServer. Unfortunately, this breaks some applications (eg kenosis). Don't shoot me for this. bump PKGREVISION @ text @a0 82 $NetBSD: patch-an,v 1.1.2.1 2005/02/16 14:00:09 salo Exp $ --- Lib/SimpleXMLRPCServer.py.orig 2004-10-04 01:21:44.000000000 +0200 +++ Lib/SimpleXMLRPCServer.py @@@@ -106,14 +106,22 @@@@ import BaseHTTPServer import sys import os -def resolve_dotted_attribute(obj, attr): +def resolve_dotted_attribute(obj, attr, allow_dotted_names=True): """resolve_dotted_attribute(a, 'b.c.d') => a.b.c.d Resolves a dotted attribute name to an object. Raises an AttributeError if any attribute in the chain starts with a '_'. + + If the optional allow_dotted_names argument is false, dots are not + supported and this function operates similar to getattr(obj, attr). """ - for i in attr.split('.'): + if allow_dotted_names: + attrs = attr.split('.') + else: + attrs = [attr] + + for i in attrs: if i.startswith('_'): raise AttributeError( 'attempt to access private attribute "%s"' % i @@@@ -155,7 +163,7 @@@@ class SimpleXMLRPCDispatcher: self.funcs = {} self.instance = None - def register_instance(self, instance): + def register_instance(self, instance, allow_dotted_names=False): """Registers an instance to respond to XML-RPC requests. Only one instance can be installed at a time. @@@@ -173,9 +181,23 @@@@ class SimpleXMLRPCDispatcher: If a registered function matches a XML-RPC request, then it will be called instead of the registered instance. + + If the optional allow_dotted_names argument is true and the + instance does not have a _dispatch method, method names + containing dots are supported and resolved, as long as none of + the name segments start with an '_'. + + *** SECURITY WARNING: *** + + Enabling the allow_dotted_names options allows intruders + to access your module's global variables and may allow + intruders to execute arbitrary code on your machine. Only + use this option on a secure, closed network. + """ self.instance = instance + self.allow_dotted_names = allow_dotted_names def register_function(self, function, name = None): """Registers a function to respond to XML-RPC requests. @@@@ -294,7 +316,8 @@@@ class SimpleXMLRPCDispatcher: try: method = resolve_dotted_attribute( self.instance, - method_name + method_name, + self.allow_dotted_names ) except AttributeError: pass @@@@ -373,7 +396,8 @@@@ class SimpleXMLRPCDispatcher: try: func = resolve_dotted_attribute( self.instance, - method + method, + self.allow_dotted_names ) except AttributeError: pass @