[SM-Commit] GIT changes to master grimoire by David Kowis (dc07cf925a5842751b4f6b1e592c6d9b95557890)

David Kowis scm at sourcemage.org
Tue Apr 17 00:17:14 EDT 2007


GIT changes to master grimoire by David Kowis <dkowis at shlrm.org>:

 http/mod_python/DETAILS            |    2 
 http/mod_python/HISTORY            |    5 
 http/mod_python/PRE_BUILD          |    6 -
 http/mod_python/bash31.diff        |   12 --
 http/mod_python/jg-20060204-1.diff |  221 -------------------------------------
 5 files changed, 6 insertions(+), 240 deletions(-)

New commits:
commit dc07cf925a5842751b4f6b1e592c6d9b95557890
Author: David Kowis <dkowis at shlrm.org>
Commit: David Kowis <dkowis at shlrm.org>

    mod_python
    
    brought version up to 3.3.1

diff --git a/http/mod_python/DETAILS b/http/mod_python/DETAILS
index 84c9d3c..78c5ba1 100755
--- a/http/mod_python/DETAILS
+++ b/http/mod_python/DETAILS
@@ -4,7 +4,7 @@ if [[ "$MODPY_APACHE" == "Apache1" ]]; then
      SOURCE_HASH=sha512:26809da338368a85759db27a5367c98264e391ae2c5b3ef46ce826fd4c259e5b853740b3c786e59de4a43f1c7e8b59d37c83bd5f35d930aad7f1926e8140c1e0
 else
          VERSION=3.2.8
-     SOURCE_HASH='sha512:499354dea725d6bcfc225f45a33a0643e3f65cb7009d4dbee36dbb5a170a92cf522c12481fa887db8a4beb73ba4f4792b3a1f61e73345376693631a06faa1ec4'
+     SOURCE_HASH=sha512:b3c3d5ed624e0152d8904a7566be80c04622889b79350bb981e8adfbcc62a22cde6ebe609d76a67c57096b8d3fcdfd6c59e47aac39b73e614f8192e3061164f9
 fi
           SOURCE=$SPELL-$VERSION.tgz
       LICENSE[0]=APACHE
diff --git a/http/mod_python/HISTORY b/http/mod_python/HISTORY
index 14bf40c..d1e1457 100644
--- a/http/mod_python/HISTORY
+++ b/http/mod_python/HISTORY
@@ -1,3 +1,8 @@
+2007-04-16 David Kowis <dkowis at shlrm.org>
+	* PRE_BUILD: removed!
+	* DETAILS: version updated to 3.3.1
+	* bash31.diff, jg-20060204-1.diff: removed, no longer apply
+
 2006-09-21 Juuso Alasuutari <iuso at sourcemage.org>
 	* DETAILS: [automated] Removed BUILD_API=2.
 
diff --git a/http/mod_python/PRE_BUILD b/http/mod_python/PRE_BUILD
deleted file mode 100755
index d3d867b..0000000
--- a/http/mod_python/PRE_BUILD
+++ /dev/null
@@ -1,6 +0,0 @@
-default_pre_build &&
-cd $SOURCE_DIRECTORY &&
-if [[ "$MODPY_APACHE" == "Apache2" ]]; then
-  patch -p1 < $SCRIPT_DIRECTORY/bash31.diff &&
-  patch -p0 < $SCRIPT_DIRECTORY/jg-20060204-1.diff
-fi
diff --git a/http/mod_python/bash31.diff b/http/mod_python/bash31.diff
deleted file mode 100644
index 455f5f4..0000000
--- a/http/mod_python/bash31.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -urN mod_python-3.2.7/configure mod_python/configure
---- mod_python-3.2.7/configure	2005-10-28 12:06:22.000000000 -0400
-+++ mod_python/configure	2006-02-08 07:56:21.000000000 -0500
-@@ -3035,7 +3035,7 @@
- # get the mod_python version
- 
- MP_VERSION=`awk '/MPV_STRING/ {print $3}' src/include/mpversion.h`
--MP_VERSION=`echo $MP_VERSION | sed s/\\"//g`
-+MP_VERSION=`echo $MP_VERSION | sed s/\"//g`
- 
- # get --with-python-src. The python src is required to generate the documentation
- # It is not required to compile or install mod_python itself
diff --git a/http/mod_python/jg-20060204-1.diff b/http/mod_python/jg-20060204-1.diff
deleted file mode 100644
index a1d94aa..0000000
--- a/http/mod_python/jg-20060204-1.diff
+++ /dev/null
@@ -1,221 +0,0 @@
-Index: test/httpdconf.py
-===================================================================
---- test/httpdconf.py	(revision 374719)
-+++ test/httpdconf.py	(working copy)
-@@ -37,8 +37,11 @@
- class Container:
-     
-     def __init__(self, *args):
--        self.args = args
-+        self.args = list(args)
-         self.indent = 0
-+    
-+    def append(self, value):
-+        self.args.append(value)
- 
-     def __str__(self):
- 
-@@ -80,6 +83,16 @@
-     def __init__(self, val):
-         Directive.__init__(self, self.__class__.__name__, val)
- 
-+class AuthBasicAuthoritative(Directive):
-+    # New in Apache 2.2
-+    def __init__(self, val):
-+        Directive.__init__(self, self.__class__.__name__, val)
-+
-+class AuthBasicProvider(Directive):
-+    # New in Apache 2.2
-+    def __init__(self, val):
-+        Directive.__init__(self, self.__class__.__name__, val)
-+
- class AuthType(Directive):
-     def __init__(self, val):
-         Directive.__init__(self, self.__class__.__name__, val)
-@@ -112,6 +125,10 @@
-     def __init__(self, dir, *args):
-         ContainerTag.__init__(self, self.__class__.__name__, dir, args)
- 
-+class KeepAliveTimeout(Directive):
-+    def __init__(self, val):
-+        Directive.__init__(self, self.__class__.__name__, val)
-+
- class Listen(Directive):
-     def __init__(self, val):
-         Directive.__init__(self, self.__class__.__name__, val)
-Index: test/test.py
-===================================================================
---- test/test.py	(revision 374719)
-+++ test/test.py	(working copy)
-@@ -220,6 +220,32 @@
-         s = '"%s"' % s
-     return s
- 
-+def get_apache_version():
-+
-+    print "Checking Apache version...."
-+    httpd = quoteIfSpace(HTTPD)
-+    cmd = '%s -v' % (httpd)
-+    (stdin,stdout) = os.popen2(cmd)
-+
-+    version_str = None
-+    for line in stdout:
-+        if line.startswith('Server version'):
-+             version_str = line.strip()
-+             break
-+
-+    if version_str:
-+        version_str = version_str.split('/')[1]
-+        major,minor,patch = version_str.split('.',3)
-+        version = '%s.%s' % (major,minor)
-+    else:
-+        
-+        print "Can't determine Apache version. Assuming 2.0"
-+        version = '2.0'
-+    print version
-+    return version
-+
-+APACHE_VERSION = get_apache_version()
-+
- class HttpdCtrl:
-     # a mixin providing ways to control httpd
- 
-@@ -289,14 +315,26 @@
-             Listen(PORT),
-             PythonOption('PythonOptionTest sample_value'),
-             DocumentRoot(DOCUMENT_ROOT),
--            LoadModule("python_module %s" % quoteIfSpace(MOD_PYTHON_SO)),
--            IfModule("!mod_auth.c",
-+            LoadModule("python_module %s" % quoteIfSpace(MOD_PYTHON_SO)))
-+
-+        if APACHE_VERSION == '2.2':
-+            # mod_auth has been split into mod_auth_basic and some other modules
-+            s.append(IfModule("!mod_auth_basic.c",
-+                     LoadModule("auth_basic_module %s" %
-+                                quoteIfSpace(os.path.join(modpath, "mod_auth_basic.so")))))
-+
-+            # Default KeepAliveTimeout is 5 for apache 2.2, but 15 in apache 2.0
-+            # Explicitly set the value so it's the same as 2.0
-+            s.append(KeepAliveTimeout("15"))
-+        else:
-+            s.append(IfModule("!mod_auth.c",
-                      LoadModule("auth_module %s" %
-                                 quoteIfSpace(os.path.join(modpath, "mod_auth.so")))))
- 
-+        s.append("\n# --APPENDED-- \n\n"+append)
-+
-         f = open(CONFIG, "w")
-         f.write(str(s))
--        f.write("\n# --APPENDED-- \n\n"+append)
-         f.close()
- 
-     def startHttpd(self,extra=''):
-@@ -595,7 +633,12 @@
- 
-     def test_req_requires_conf(self):
- 
--        c = VirtualHost("*",
-+        if APACHE_VERSION == '2.2':
-+            # Apache 2.2 needs AuthBasicAuthoritative Off 
-+            # This is necessary when combining mod_auth_basic with third-party
-+            # modules that are not configured with the AuthBasicProvider  
-+            # directive. 
-+            c = VirtualHost("*",
-                         ServerName("test_req_requires"),
-                         DocumentRoot(DOCUMENT_ROOT),
-                         Directory(DOCUMENT_ROOT,
-@@ -603,8 +646,23 @@
-                                   AuthName("blah"),
-                                   AuthType("basic"),
-                                   Require("valid-user"),
-+                                  AuthBasicAuthoritative("Off"),
-                                   PythonAuthenHandler("tests::req_requires"),
-                                   PythonDebug("On")))
-+
-+        else:
-+            # This configuration is suitable for Apache 2.0
-+            c = VirtualHost("*",
-+                        ServerName("test_req_requires"),
-+                        DocumentRoot(DOCUMENT_ROOT),
-+                        Directory(DOCUMENT_ROOT,
-+                                  SetHandler("mod_python"),
-+                                  AuthName("blah"),
-+                                  AuthType("basic"),
-+                                  Require("valid-user"),
-+                                  PythonAuthenHandler("tests::req_requires"),
-+                                  PythonDebug("On")))
-+
-         return str(c)
- 
-     def test_req_requires(self):
-Index: src/include/mod_python.h.in
-===================================================================
---- src/include/mod_python.h.in	(revision 374719)
-+++ src/include/mod_python.h.in	(working copy)
-@@ -179,6 +179,41 @@
- 
- #endif /* !Mp_MOD_PYTHON_H */
- 
-+#ifndef APR_STATUS_IS_SUCCESS
-+/* APR_STATUS_IS_SUCCESS is defined in apr_errno.h for apr versions < 1.x.
-+ * It was dropped in the current apr version 1.x, which causes a problem
-+ * for mod_python connobject.c and filterobject.c in Apache 2.2.
-+ * Occurrences of APR_STATUS_IS_SUCCESS in mod_python should be replaced
-+ * with something like:
-+ *   if (s != APR_SUCCESS) 
-+ *     //error handling code
-+ *
-+ * Their is some uncertainty if the APR_OS_START_SYSERR part of
-+ * the test is significant in Win32 (it likely is not), but to be safe 
-+ * APR_STATUS_IS_SUCCESS is reproduced here for use with Apache 2.2.
-+ * The APR_STATUS_IS_SUCCESS should be considered as deprecated.
-+ */
-+
-+#if defined(OS2) && !defined(DOXYGEN)
-+#define APR_STATUS_IS_SUCCESS(s)           ((s) == APR_SUCCESS \
-+                || (s) == APR_OS_START_SYSERR + NO_ERROR)
-+
-+#elif defined(WIN32) && !defined(DOXYGEN) /* !defined(OS2) */
-+#define APR_STATUS_IS_SUCCESS(s)           ((s) == APR_SUCCESS \
-+                || (s) == APR_OS_START_SYSERR + ERROR_SUCCESS)
-+
-+#elif defined(NETWARE) && !defined(DOXYGEN) /* !defined(OS2) && !defined(WIN32) */
-+#define APR_STATUS_IS_SUCCESS(s)           ((s) == APR_SUCCESS)
-+
-+#else /* !defined(NETWARE) && !defined(OS2) && !defined(WIN32) */
-+
-+/** no error */
-+#define APR_STATUS_IS_SUCCESS(s)        ((s) == APR_SUCCESS)
-+#endif
-+
-+#endif /* !APR_STATUS_IS_SUCCESS */
-+
-+
- /*
- # makes emacs go into C mode
- ### Local Variables:
-Index: src/connobject.c
-===================================================================
---- src/connobject.c	(revision 374719)
-+++ src/connobject.c	(working copy)
-@@ -319,14 +319,14 @@
- {
-     PyObject *addrobj = makeipaddr(addr);
-     PyObject *ret = NULL;
-+
-+    /* apr_sockaddr_port_get was deprecated and removed in apr 1.x
-+     * Access the port directly instead
-+     */
-     if (addrobj) {
-         apr_port_t port;
--        if(apr_sockaddr_port_get(&port, addr)==APR_SUCCESS) {
--            ret = Py_BuildValue("Oi", addrobj, port );
--        }
--        else {
--            PyErr_SetString(PyExc_SystemError,"apr_sockaddr_port_get failure");
--        }
-+        port = addr->port; 
-+        ret = Py_BuildValue("Oi", addrobj, port );
-         Py_DECREF(addrobj);
-     }
-     return ret;



More information about the SM-Commit mailing list