[Mailman-Users] Upgrading from 2.0.0 to 2.1.1 using Exim 3.36 - Fixed

Peter van Rensburg peter at thenephilim.net
Thu Feb 13 06:07:49 CET 2003


Patch didn't make it I guess, here it is:

diff -u mailman-2.1.1/src/Makefile.in
mailman-2.1.1-modified/src/Makefile.in
--- mailman-2.1.1/src/Makefile.in	2002-12-11 20:30:37.000000000 -0800
+++ mailman-2.1.1-modified/src/Makefile.in	2003-02-12 20:52:12.570001000
-0800
@@ -56,6 +56,7 @@
 
 COMMON_FLAGS=	-DPREFIX="\"$(prefix)\"" \
 		-DPYTHON="\"$(PYTHON)\"" \
+		-DLDLIBRARYPATH="\"$(LD_LIBRARY_PATH)\"" \
 		$(HELPFUL)
 
 
Only in mailman-2.1.1-modified/src/: admin
Only in mailman-2.1.1-modified/src/: admindb
diff -u mailman-2.1.1/src/common.c mailman-2.1.1-modified/src/common.c
--- mailman-2.1.1/src/common.c	2002-09-04 18:29:57.000000000 -0700
+++ mailman-2.1.1-modified/src/common.c	2003-02-12 19:14:00.309998000
-0800
@@ -25,6 +25,7 @@
 
 const char* scriptdir = SCRIPTDIR;
 const char* moduledir = MODULEDIR;
+const char* ldlibrarypath = LDLIBRARYPATH;
 char* python = PYTHON;
 
 /* Global variable used as a flag */
@@ -170,6 +171,7 @@
         "PYTHONPATH=",
         "PYTHONHOME=",
         "PATH=",
+        "LD_LIBRARY_PATH",
         NULL
 };
 
@@ -187,7 +189,9 @@
 run_script(const char* script, int argc, char** argv, char** env)
 {
         const char envstr[] = "PYTHONPATH=";
+        const char ldstr[] = "LD_LIBRARY_PATH=";
         const int envlen = strlen(envstr);
+        const int ldlen = strlen(ldstr);
 
         int envcnt = 0;
         int i, j, status;
@@ -222,7 +226,7 @@
                 ;
 
         /* okay to be a little too big */
-        newenv = (char**)malloc(sizeof(char*) * (envcnt + 2));
+        newenv = (char**)malloc(sizeof(char*) * (envcnt + 3));
 
         /* filter out any troublesome environment variables */
         for (i = 0, j = 0; i < envcnt; i++) {
@@ -252,6 +256,15 @@
         strcat(newenv[j], moduledir);
         j++;
 
+        /* hack LD_LIBRARY_PATH in */
+        newenv[j] = (char*)malloc(sizeof(char) * (
+                strlen(ldstr) +
+                strlen(ldlibrarypath) +
+                1));
+        strcpy(newenv[j], ldstr);
+        strcat(newenv[j], ldlibrarypath);
+        j++;
+
         newenv[j] = NULL;
 
         /* Now put together argv.  This will contain first the absolute
path
Only in mailman-2.1.1-modified/src/: common.o
Only in mailman-2.1.1-modified/src/: confirm
Only in mailman-2.1.1-modified/src/: create
Only in mailman-2.1.1-modified/src/: edithtml
Only in mailman-2.1.1-modified/src/: listinfo
Only in mailman-2.1.1-modified/src/: mailman
Only in mailman-2.1.1-modified/src/: options
Only in mailman-2.1.1-modified/src/: private
Only in mailman-2.1.1-modified/src/: rmlist
Only in mailman-2.1.1-modified/src/: roster
Only in mailman-2.1.1-modified/src/: subscribe
Only in mailman-2.1.1-modified/src/: vsnprintf.o



On Wed, 2003-02-12 at 20:50, Peter van Rensburg wrote:
> Well I fixed it, although I'm still not sure where exactly the "1" came
> from. Once again the @#($*% python-2.1 from sunfreeware comes back to
> bite me, socket.so being linked against libssl.so.0.9.6, I have 0.9.7
> installed for openssh and while not paying attention I (fortunately)
> compiled it staticly (in /opt), so I just installed the openssl 0.9.6g
> package from sunfreeware which installs dynamic libraries. 
> 
> I tried Exim's "environment" pipe transport option but that didn't help.
> I hacked the mailman wrapper (quick & dirty style;) and added support
> for a hard compiled LD_LIBRARY_PATH. Attached is a patch, maybe it'll
> help someone out there.  
> 
> Cheers,
> Peter
> 
> On Wed, 2003-02-12 at 18:03, Peter van Rensburg wrote:
> > Hello
> > 
> > I removed the old transports from the exim configuration and installed
> > the single new transport & single director as per README.EXIM, now I
> > just get this:
> > 
> > xxxxx <xxxx> D=mailman_director T=mailman_transport: Child process of
> > mailman_transport transport returned 1 from command: /opt/mailman/mail/mailman
> > 
> > I cannot figure out what's wrong, where does that error number originate
> > from ? run_script always returns 4 if there's a problem? Any clue what 1
> > means? There's nothing in /opt/mailman/logs/error, I've ran check_perms,
> > all seems fine. 
> > 
> > Any help would be appreciate, production servers are down and the boss
> > is getting pissed.
> > 
> > Thanks,
-- 
Peter van Rensburg <peter at thenephilim.net>




More information about the Mailman-Users mailing list