PR 53420 (Proxy plus EOS handling when calling ap_discard_request_body)
I investigated PR53420 (https://issues.apache.org/bugzilla/show_bug.cgi?id=53420), see my last reply there. Using proxy in combination with ProxyErrorOverride shows a hang until the proxy timeout fires. The hang happens, when the proxy calls ap_discard_request_body to discard the origin server *response* body. For 2.2 the call to ap_discard_request_body immediately gets a brigade with two buckets. The first bucket is the origin server response body, the second an EOS. For 2.4/trunk the call gets a brigade with one bucket - the origin server response body - then reads a second brigade, which times out and only then returns the EOS bucket. Any hints how to proceed? Reproduction for 2.4 and trunk is trivial: Listen 8080 Listen 8081 VirtualHost *:8080 ProxyErrorOverride on ProxyPass / http://localhost:8081/ connectiontimeout=5 /VirtualHost and retrieve http://localhost/8080/notexist Regards, Rainer
FYI: build status of AIX 2.4.10
All was looking normal (I will make a small patch for the buildaix.ksh script to increase the value for MAXMEM) - however, at the end there is an error (when installing to a DESTDIR). build ends with: find: bad status-- /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/mod_mpm_worker.so install: File mod_mpm_worker.so was not found. I shall be looking into that later - however, if anyone has an idea/suggestion - please do not hesitate to comment. p.s. I recall something like this happening before, but what that was - I have forgotten. === + make build/aix/make.out util_expr_eval.c, line 1595.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*) is not allowed. util_expr_eval.c, line 1596.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*) is not allowed. util_expr_eval.c, line 1597.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*) is not allowed. util_expr_eval.c, line 1598.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*) is not allowed. util_expr_eval.c, line 1603.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1604.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1605.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1606.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1608.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1609.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1610.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1611.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1612.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1613.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1614.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1615.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1616.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,char*) is not allowed. util_expr_eval.c, line 1617.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,char*) is not allowed. util_expr_eval.c, line 1618.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1619.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1620.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1621.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1626.7: 1506-196 (W) Initialization between types const void* const and int(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1627.7: 1506-196 (W) Initialization between types const void* const and int(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1628.7: 1506-196 (W) Initialization between types const void* const and int(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1629.7: 1506-196 (W) Initialization between types const void* const and int(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1630.7: 1506-196 (W) Initialization between types const void* const and int(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1631.7: 1506-196 (W) Initialization between
Re: FYI: build status of AIX 2.4.10
ran # sh -x /var/apr/build-1/libtool --mode=install install mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ got: ... + func_mode_install mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ libtool: install: `mod_mpm_worker.la' is not a valid libtool archive libtool: install: Try `libtool --help --mode=install' for more information. root@x093:[/data/prj/apache/httpd/httpd-2.4.10] This is what I am starting from. root@x093:[/data/prj/apache/httpd/httpd-2.4.10]find . -name mod_mpm_worker.\* ./server/mpm/worker/mod_mpm_worker.la ./server/mpm/worker/.libs/mod_mpm_worker.a ./server/mpm/worker/.libs/mod_mpm_worker.exp ./server/mpm/worker/.libs/mod_mpm_worker.la ./server/mpm/worker/.libs/mod_mpm_worker.so ./server/mpm/worker/.libs/mod_mpm_worker.lai root@x093:[/data/prj/apache/httpd/httpd-2.4.10] My gut feeling is that the problem here, and the one I have with PHP (and instdso.sh) are related, i.e., in apr. Something else I saw and have some concern about (in the ... stuff) is the assumption that linux==unix. with some context - the line: version_type=linux ... + OTOOL= + OTOOL64= + libext=a + shrext_cmds=.so + extract_expsyms_cmds= + variables_saved_for_relink=PATH LIBPATH + need_lib_prefix=no + need_version=no + version_type=linux + runpath_var= + shlibpath_var=LIBPATH + shlibpath_overrides_runpath=unknown + libname_spec=lib$name + library_names_spec=${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext} + soname_spec= ... And, if it is not apr, then it is libtool again - but why was it working fine with 2.4.7 and 2.2.27? ASF.apr-vac.rte1.5.1.0C Fapr-vac version 1.5.1 for ASF.apu-vac.rte1.5.3.0C Fapu-vac version 1.5.3 for So, apr == version 1.5.1, and apr-util is version 1.5.3 On Fri, Aug 1, 2014 at 11:24 AM, Michael Felt mamf...@gmail.com wrote: All was looking normal (I will make a small patch for the buildaix.ksh script to increase the value for MAXMEM) - however, at the end there is an error (when installing to a DESTDIR). build ends with: find: bad status-- /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/mod_mpm_worker.so install: File mod_mpm_worker.so was not found. I shall be looking into that later - however, if anyone has an idea/suggestion - please do not hesitate to comment. p.s. I recall something like this happening before, but what that was - I have forgotten. === + make build/aix/make.out util_expr_eval.c, line 1595.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*) is not allowed. util_expr_eval.c, line 1596.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*) is not allowed. util_expr_eval.c, line 1597.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*) is not allowed. util_expr_eval.c, line 1598.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*) is not allowed. util_expr_eval.c, line 1603.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1604.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1605.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1606.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1608.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1609.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1610.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1611.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1612.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1613.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line 1614.7: 1506-196 (W) Initialization between types const void* const and const char*(*)(struct {...}*,const void*,const char*) is not allowed. util_expr_eval.c, line
Re: SuexecUserGroup inside Directory context
Just bringing the email up, it’s likely that mod_suexec developers missed the email. Thank you! :) — Best Regards, Martynas Bendorius On Jul 18, 2014, at 12:53 AM, Martynas Bendorius marty...@martynas.it wrote: Hello, The following question hasn’t been answered in the dev list, so I’m trying to ask it again here: http://mail-archives.apache.org/mod_mbox/httpd-dev/201205.mbox/%3cca+-xxsfms0yrmzzitl0x-sgvgzbvxfzvrt57hh163dabrz_...@mail.gmail.com%3E :) Would it be secure to use SuexecUserGroup inside Directory context? And is there any reason why that is still not available? From our point of view, that would provide more security, however, there might have been other technical/security reasons why it is not available/supported yet. I’ve found requests for that in 2005’s https://issues.apache.org/bugzilla/show_bug.cgi?id=37564 and a patch written in 2003 https://www.mail-archive.com/dev@httpd.apache.org/msg17561.html. Thank you for the answers! — Best Regards, Martynas Bendorius
Re: FYI: build status of AIX 2.4.10
ran same command again, but rather that sh -x, used option --debug This is what I get from func_mode_install - where it fails above. + func_mode_install mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ + test install = /bin/sh + test install = /bin/sh + false + install_prog= + arg=install + func_quote_for_eval install + install_prog=install + install_shared_prog=install + install_cp=false + dest= + files= + opts= + prev= + install_type= + isdir=no + stripme= + no_mode=: + arg2= + test -n + test -n + dest=mod_mpm_worker.la + continue + arg2= + test -n mod_mpm_worker.la + files= mod_mpm_worker.la + dest=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ + continue + test -z install + test -n + test -n + test -z mod_mpm_worker.la + func_stripname / /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ + dest=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec + test -d /var/tmp/root/httpd.2.4.10/opt/httpd/libexec + isdir=yes + test yes = yes + destdir=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec + destname= + libtool_install_magic=%%%MAGIC variable%%% + staticlibs= + future_libdirs= + current_libdirs= + func_resolve_sysroot mod_mpm_worker.la + file=mod_mpm_worker.la + func_lalib_unsafe_p mod_mpm_worker.la + func_fatal_help `mod_mpm_worker.la' is not a valid libtool archive libtool: install: `mod_mpm_worker.la' is not a valid libtool archive libtool: install: Try `libtool --help --mode=install' for more information. FYI: the contents of mod_mpm_worker.la is: root@x093:[/data/prj/apache/httpd/httpd-2.4.10]cat ./server/mpm/worker/ mod_mpm_worker.la # mod_mpm_worker.la - a libtool library file # Generated by libtool (GNU libtool) 2.4.2 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='mod_mpm_worker.so' # Names of this library. library_names='mod_mpm_worker.so mod_mpm_worker.so mod_mpm_worker.so' # The name of the static archive. old_library='mod_mpm_worker.a' # Linker flags that can not go in dependency_libs. inherited_linker_flags='' # Libraries that this one depends upon. dependency_libs=' -L/usr/include/openssl/lib' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for mod_mpm_worker. current=0 age=0 revision=0 # Is this an already installed library? installed=no # Should we warn about portability when linking against -modules? shouldnotlink=yes # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/opt/httpd/libexec' However, I think the problem might be the self-referencing mod_mpm_worker.la in .libs root@x093:[/data/prj/apache/httpd/httpd-2.4.10]find . -name mod_mpm_worker.\* -ls 1373015501 -rw-r--r-- 1 root system 987 Aug 1 09:07 ./server/mpm/worker/mod_mpm_worker.la 137301549 57 -rw-r--r-- 1 root system 57455 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.a 1373015471 -rw-r--r-- 1 root system 188 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.exp 1373015521 lrwxrwxrwx 1 root system 20 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.la - ../mod_mpm_worker.la 137301548 86 -rwxr-xr-x 1 root system 87823 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.so 1373015511 -rw-r--r-- 1 root system 988 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.lai Will try modifying the symbolic link to the real file, and see how it works, or does not. On Fri, Aug 1, 2014 at 12:30 PM, Michael Felt mamf...@gmail.com wrote: ran # sh -x /var/apr/build-1/libtool --mode=install install mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ got: ... + func_mode_install mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ libtool: install: `mod_mpm_worker.la' is not a valid libtool archive libtool: install: Try `libtool --help --mode=install' for more information. root@x093:[/data/prj/apache/httpd/httpd-2.4.10] This is what I am starting from. root@x093:[/data/prj/apache/httpd/httpd-2.4.10]find . -name mod_mpm_worker.\* ./server/mpm/worker/mod_mpm_worker.la ./server/mpm/worker/.libs/mod_mpm_worker.a ./server/mpm/worker/.libs/mod_mpm_worker.exp ./server/mpm/worker/.libs/mod_mpm_worker.la ./server/mpm/worker/.libs/mod_mpm_worker.so ./server/mpm/worker/.libs/mod_mpm_worker.lai root@x093:[/data/prj/apache/httpd/httpd-2.4.10] My gut feeling is that the problem here, and the one I have with PHP (and instdso.sh) are related, i.e., in apr. Something else I saw and have some concern about (in the ... stuff) is the assumption that linux==unix. with some context - the line: version_type=linux ... + OTOOL= + OTOOL64= + libext=a + shrext_cmds=.so + extract_expsyms_cmds= + variables_saved_for_relink=PATH LIBPATH + need_lib_prefix=no + need_version=no + version_type=linux + runpath_var= + shlibpath_var=LIBPATH + shlibpath_overrides_runpath=unknown +
Re: FYI: build status of AIX 2.4.10
correction: I did not pay attention to the .. in the symbolic name. It does reference the file correctly. On Fri, Aug 1, 2014 at 1:40 PM, Michael Felt mamf...@gmail.com wrote: ran same command again, but rather that sh -x, used option --debug This is what I get from func_mode_install - where it fails above. + func_mode_install mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ + test install = /bin/sh + test install = /bin/sh + false + install_prog= + arg=install + func_quote_for_eval install + install_prog=install + install_shared_prog=install + install_cp=false + dest= + files= + opts= + prev= + install_type= + isdir=no + stripme= + no_mode=: + arg2= + test -n + test -n + dest=mod_mpm_worker.la + continue + arg2= + test -n mod_mpm_worker.la + files= mod_mpm_worker.la + dest=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ + continue + test -z install + test -n + test -n + test -z mod_mpm_worker.la + func_stripname / /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ + dest=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec + test -d /var/tmp/root/httpd.2.4.10/opt/httpd/libexec + isdir=yes + test yes = yes + destdir=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec + destname= + libtool_install_magic=%%%MAGIC variable%%% + staticlibs= + future_libdirs= + current_libdirs= + func_resolve_sysroot mod_mpm_worker.la + file=mod_mpm_worker.la + func_lalib_unsafe_p mod_mpm_worker.la + func_fatal_help `mod_mpm_worker.la' is not a valid libtool archive libtool: install: `mod_mpm_worker.la' is not a valid libtool archive libtool: install: Try `libtool --help --mode=install' for more information. FYI: the contents of mod_mpm_worker.la is: root@x093:[/data/prj/apache/httpd/httpd-2.4.10]cat ./server/mpm/worker/ mod_mpm_worker.la # mod_mpm_worker.la - a libtool library file # Generated by libtool (GNU libtool) 2.4.2 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='mod_mpm_worker.so' # Names of this library. library_names='mod_mpm_worker.so mod_mpm_worker.so mod_mpm_worker.so' # The name of the static archive. old_library='mod_mpm_worker.a' # Linker flags that can not go in dependency_libs. inherited_linker_flags='' # Libraries that this one depends upon. dependency_libs=' -L/usr/include/openssl/lib' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for mod_mpm_worker. current=0 age=0 revision=0 # Is this an already installed library? installed=no # Should we warn about portability when linking against -modules? shouldnotlink=yes # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/opt/httpd/libexec' However, I think the problem might be the self-referencing mod_mpm_worker.la in .libs root@x093:[/data/prj/apache/httpd/httpd-2.4.10]find . -name mod_mpm_worker.\* -ls 1373015501 -rw-r--r-- 1 root system 987 Aug 1 09:07 ./server/mpm/worker/mod_mpm_worker.la 137301549 57 -rw-r--r-- 1 root system 57455 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.a 1373015471 -rw-r--r-- 1 root system 188 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.exp 1373015521 lrwxrwxrwx 1 root system 20 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.la - ../mod_mpm_worker.la 137301548 86 -rwxr-xr-x 1 root system 87823 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.so 1373015511 -rw-r--r-- 1 root system 988 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.lai Will try modifying the symbolic link to the real file, and see how it works, or does not. On Fri, Aug 1, 2014 at 12:30 PM, Michael Felt mamf...@gmail.com wrote: ran # sh -x /var/apr/build-1/libtool --mode=install install mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ got: ... + func_mode_install mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ libtool: install: `mod_mpm_worker.la' is not a valid libtool archive libtool: install: Try `libtool --help --mode=install' for more information. root@x093:[/data/prj/apache/httpd/httpd-2.4.10] This is what I am starting from. root@x093:[/data/prj/apache/httpd/httpd-2.4.10]find . -name mod_mpm_worker.\* ./server/mpm/worker/mod_mpm_worker.la ./server/mpm/worker/.libs/mod_mpm_worker.a ./server/mpm/worker/.libs/mod_mpm_worker.exp ./server/mpm/worker/.libs/mod_mpm_worker.la ./server/mpm/worker/.libs/mod_mpm_worker.so ./server/mpm/worker/.libs/mod_mpm_worker.lai root@x093:[/data/prj/apache/httpd/httpd-2.4.10] My gut feeling is that the problem here, and the one I have with PHP (and instdso.sh) are related, i.e., in apr. Something else I saw and have some concern about (in the ... stuff) is the assumption that linux==unix. with some context - the line:
Re: FYI: build status of AIX 2.4.10
the good news: user error. I had removed coreutils so I was relying on the default /usr/bin/install program. Once replaced with coreutils install program everything worked as expected. So, back to FYI only for the compile warnings. (Or, a storm in my glass of water) On Fri, Aug 1, 2014 at 1:41 PM, Michael Felt mamf...@gmail.com wrote: correction: I did not pay attention to the .. in the symbolic name. It does reference the file correctly. On Fri, Aug 1, 2014 at 1:40 PM, Michael Felt mamf...@gmail.com wrote: ran same command again, but rather that sh -x, used option --debug This is what I get from func_mode_install - where it fails above. + func_mode_install mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ + test install = /bin/sh + test install = /bin/sh + false + install_prog= + arg=install + func_quote_for_eval install + install_prog=install + install_shared_prog=install + install_cp=false + dest= + files= + opts= + prev= + install_type= + isdir=no + stripme= + no_mode=: + arg2= + test -n + test -n + dest=mod_mpm_worker.la + continue + arg2= + test -n mod_mpm_worker.la + files= mod_mpm_worker.la + dest=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ + continue + test -z install + test -n + test -n + test -z mod_mpm_worker.la + func_stripname / /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ + dest=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec + test -d /var/tmp/root/httpd.2.4.10/opt/httpd/libexec + isdir=yes + test yes = yes + destdir=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec + destname= + libtool_install_magic=%%%MAGIC variable%%% + staticlibs= + future_libdirs= + current_libdirs= + func_resolve_sysroot mod_mpm_worker.la + file=mod_mpm_worker.la + func_lalib_unsafe_p mod_mpm_worker.la + func_fatal_help `mod_mpm_worker.la' is not a valid libtool archive libtool: install: `mod_mpm_worker.la' is not a valid libtool archive libtool: install: Try `libtool --help --mode=install' for more information. FYI: the contents of mod_mpm_worker.la is: root@x093:[/data/prj/apache/httpd/httpd-2.4.10]cat ./server/mpm/worker/ mod_mpm_worker.la # mod_mpm_worker.la - a libtool library file # Generated by libtool (GNU libtool) 2.4.2 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='mod_mpm_worker.so' # Names of this library. library_names='mod_mpm_worker.so mod_mpm_worker.so mod_mpm_worker.so' # The name of the static archive. old_library='mod_mpm_worker.a' # Linker flags that can not go in dependency_libs. inherited_linker_flags='' # Libraries that this one depends upon. dependency_libs=' -L/usr/include/openssl/lib' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for mod_mpm_worker. current=0 age=0 revision=0 # Is this an already installed library? installed=no # Should we warn about portability when linking against -modules? shouldnotlink=yes # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/opt/httpd/libexec' However, I think the problem might be the self-referencing mod_mpm_worker.la in .libs root@x093:[/data/prj/apache/httpd/httpd-2.4.10]find . -name mod_mpm_worker.\* -ls 1373015501 -rw-r--r-- 1 root system 987 Aug 1 09:07 ./server/mpm/worker/mod_mpm_worker.la 137301549 57 -rw-r--r-- 1 root system 57455 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.a 1373015471 -rw-r--r-- 1 root system 188 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.exp 1373015521 lrwxrwxrwx 1 root system 20 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.la - ../mod_mpm_worker.la 137301548 86 -rwxr-xr-x 1 root system 87823 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.so 1373015511 -rw-r--r-- 1 root system 988 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.lai Will try modifying the symbolic link to the real file, and see how it works, or does not. On Fri, Aug 1, 2014 at 12:30 PM, Michael Felt mamf...@gmail.com wrote: ran # sh -x /var/apr/build-1/libtool --mode=install install mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ got: ... + func_mode_install mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ libtool: install: `mod_mpm_worker.la' is not a valid libtool archive libtool: install: Try `libtool --help --mode=install' for more information. root@x093:[/data/prj/apache/httpd/httpd-2.4.10] This is what I am starting from. root@x093:[/data/prj/apache/httpd/httpd-2.4.10]find . -name mod_mpm_worker.\* ./server/mpm/worker/mod_mpm_worker.la ./server/mpm/worker/.libs/mod_mpm_worker.a ./server/mpm/worker/.libs/mod_mpm_worker.exp ./server/mpm/worker/.libs/mod_mpm_worker.la ./server/mpm/worker/.libs/mod_mpm_worker.so
Re: FYI: build status of AIX 2.4.10
btw: I ran (as best I could) ApacheTest against 2.4.10. On the one hand, all tests it did passed, but it skipped several, which surprises me somewhat - because I thought I had all mods enabled in the build. tail... t/security/CVE-2009-1890skipped all skipped: cannot find module 'mod_proxy', cannot find module 'proxy_http.c' t/security/CVE-2009-3555skipped all skipped: cannot find module 'ssl' t/security/CVE-2011-3368-rewriteskipped all skipped: cannot find module 'rewrite' t/security/CVE-2011-3368skipped all skipped: cannot find module 'proxy' t/ssl/all...skipped all skipped: cannot find module 'mod_ssl' All tests successful, 56 tests and 29 subtests skipped. Files=97, Tests=2894, 369 wallclock secs (85.19 cusr + 80.86 csys = 166.05 CPU) [warning] server loopback:8529 shutdown [warning] port 8529 still in use... ..done Where should I be looking to correct this? On Fri, Aug 1, 2014 at 2:40 PM, Michael Felt mamf...@gmail.com wrote: the good news: user error. I had removed coreutils so I was relying on the default /usr/bin/install program. Once replaced with coreutils install program everything worked as expected. So, back to FYI only for the compile warnings. (Or, a storm in my glass of water) On Fri, Aug 1, 2014 at 1:41 PM, Michael Felt mamf...@gmail.com wrote: correction: I did not pay attention to the .. in the symbolic name. It does reference the file correctly. On Fri, Aug 1, 2014 at 1:40 PM, Michael Felt mamf...@gmail.com wrote: ran same command again, but rather that sh -x, used option --debug This is what I get from func_mode_install - where it fails above. + func_mode_install mod_mpm_worker.la /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ + test install = /bin/sh + test install = /bin/sh + false + install_prog= + arg=install + func_quote_for_eval install + install_prog=install + install_shared_prog=install + install_cp=false + dest= + files= + opts= + prev= + install_type= + isdir=no + stripme= + no_mode=: + arg2= + test -n + test -n + dest=mod_mpm_worker.la + continue + arg2= + test -n mod_mpm_worker.la + files= mod_mpm_worker.la + dest=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ + continue + test -z install + test -n + test -n + test -z mod_mpm_worker.la + func_stripname / /var/tmp/root/httpd.2.4.10/opt/httpd/libexec/ + dest=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec + test -d /var/tmp/root/httpd.2.4.10/opt/httpd/libexec + isdir=yes + test yes = yes + destdir=/var/tmp/root/httpd.2.4.10/opt/httpd/libexec + destname= + libtool_install_magic=%%%MAGIC variable%%% + staticlibs= + future_libdirs= + current_libdirs= + func_resolve_sysroot mod_mpm_worker.la + file=mod_mpm_worker.la + func_lalib_unsafe_p mod_mpm_worker.la + func_fatal_help `mod_mpm_worker.la' is not a valid libtool archive libtool: install: `mod_mpm_worker.la' is not a valid libtool archive libtool: install: Try `libtool --help --mode=install' for more information. FYI: the contents of mod_mpm_worker.la is: root@x093:[/data/prj/apache/httpd/httpd-2.4.10]cat ./server/mpm/worker/ mod_mpm_worker.la # mod_mpm_worker.la - a libtool library file # Generated by libtool (GNU libtool) 2.4.2 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='mod_mpm_worker.so' # Names of this library. library_names='mod_mpm_worker.so mod_mpm_worker.so mod_mpm_worker.so' # The name of the static archive. old_library='mod_mpm_worker.a' # Linker flags that can not go in dependency_libs. inherited_linker_flags='' # Libraries that this one depends upon. dependency_libs=' -L/usr/include/openssl/lib' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for mod_mpm_worker. current=0 age=0 revision=0 # Is this an already installed library? installed=no # Should we warn about portability when linking against -modules? shouldnotlink=yes # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/opt/httpd/libexec' However, I think the problem might be the self-referencing mod_mpm_worker.la in .libs root@x093:[/data/prj/apache/httpd/httpd-2.4.10]find . -name mod_mpm_worker.\* -ls 1373015501 -rw-r--r-- 1 root system 987 Aug 1 09:07 ./server/mpm/worker/mod_mpm_worker.la 137301549 57 -rw-r--r-- 1 root system 57455 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.a 1373015471 -rw-r--r-- 1 root system 188 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.exp 1373015521 lrwxrwxrwx 1 root system 20 Aug 1 09:07 ./server/mpm/worker/.libs/mod_mpm_worker.la - ../mod_mpm_worker.la 137301548 86 -rwxr-xr-x 1 root system 87823 Aug 1 09:07
Re: FYI: build status of AIX 2.4.10
On Fri, Aug 1, 2014 at 12:35 PM, Michael Felt mamf...@gmail.com wrote: btw: I ran (as best I could) ApacheTest against 2.4.10. On the one hand, all tests it did passed, but it skipped several, which surprises me somewhat - because I thought I had all mods enabled in the build. The test suite only tests modules loaded in httpd.conf when you invoke it the first time. if you build with --enable-maintainer-mode, all built modules will be loaded and therefore testable. -- Eric Covener cove...@gmail.com
Re: FYI: build status of AIX 2.4.10
Am 01.08.2014 um 18:44 schrieb Eric Covener: On Fri, Aug 1, 2014 at 12:35 PM, Michael Felt mamf...@gmail.com wrote: btw: I ran (as best I could) ApacheTest against 2.4.10. On the one hand, all tests it did passed, but it skipped several, which surprises me somewhat - because I thought I had all mods enabled in the build. The test suite only tests modules loaded in httpd.conf when you invoke it the first time. if you build with --enable-maintainer-mode, all built modules will be loaded and therefore testable. Or - if you want to avoid any other changes implied by maintainer mode, you can alternatively add --enable-load-all-modules to your configure flags (available since 2.4) which only adds active LoadModule lines for every build module to httpd.conf. Regards, Rainer