1
0
mirror of https://github.com/apache/httpd.git synced 2025-08-08 15:02:10 +03:00

Add a declaration check for CMSG_DATA to mod_proxy_fdpass.

Also move '#error' after the includes, because it seems
CMSG_DATA is commonly defined in sys/socket.h.

The check also overwrites _apmod_error_fatal in case
CMSG_DATA is not defined to allow building when configure
was called with "--enable-proxy". Otherwise one would need
to explicitly disable mod_proxy_fdpass.

We might want to remove the #error completely, because the
new feature test prevents the building of the module when
the symbol is not defined.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@730803 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Rainer Jung
2009-01-02 18:15:02 +00:00
parent 59b02aa75b
commit 13618e8c65
2 changed files with 12 additions and 5 deletions

View File

@@ -42,7 +42,14 @@ APACHE_MODULE(proxy_ftp, Apache proxy FTP module, $proxy_ftp_objs, , $proxy_mods
APACHE_MODULE(proxy_http, Apache proxy HTTP module, $proxy_http_objs, , $proxy_mods_enable) APACHE_MODULE(proxy_http, Apache proxy HTTP module, $proxy_http_objs, , $proxy_mods_enable)
APACHE_MODULE(proxy_fcgi, Apache proxy FastCGI module, $proxy_fcgi_objs, , $proxy_mods_enable) APACHE_MODULE(proxy_fcgi, Apache proxy FastCGI module, $proxy_fcgi_objs, , $proxy_mods_enable)
APACHE_MODULE(proxy_scgi, Apache proxy SCGI module, $proxy_scgi_objs, , $proxy_mods_enable) APACHE_MODULE(proxy_scgi, Apache proxy SCGI module, $proxy_scgi_objs, , $proxy_mods_enable)
APACHE_MODULE(proxy_fdpass, Apache proxy to Unix Daemon Socket module, $proxy_fdpass_objs, , $proxy_mods_enable) APACHE_MODULE(proxy_fdpass, Apache proxy to Unix Daemon Socket module, $proxy_fdpass_objs, , $proxy_mods_enable, [
AC_CHECK_DECLS(CMSG_DATA, [ap_HAVE_DECL_CMSG_DATA="yes"], [ap_HAVE_DECL_CMSG_DATA="no"], [[#include <sys/socket.h>]])
if test $ap_HAVE_DECL_CMSG_DATA = "no"; then
AC_MSG_WARN([Your system does not support CMSG_DATA.])
enable_proxy_fdpass="no"
_apmod_error_fatal="no"
fi
])
APACHE_MODULE(proxy_ajp, Apache proxy AJP module, $proxy_ajp_objs, , $proxy_mods_enable) APACHE_MODULE(proxy_ajp, Apache proxy AJP module, $proxy_ajp_objs, , $proxy_mods_enable)
APACHE_MODULE(proxy_balancer, Apache proxy BALANCER module, $proxy_balancer_objs, , $proxy_mods_enable) APACHE_MODULE(proxy_balancer, Apache proxy BALANCER module, $proxy_balancer_objs, , $proxy_mods_enable)

View File

@@ -16,14 +16,14 @@
#include "mod_proxy.h" #include "mod_proxy.h"
#ifndef CMSG_DATA
#error This module only works on unix platforms with the correct OS support
#endif
#include <sys/types.h> #include <sys/types.h>
#include <sys/socket.h> #include <sys/socket.h>
#include <sys/un.h> #include <sys/un.h>
#ifndef CMSG_DATA
#error This module only works on unix platforms with the correct OS support
#endif
/* for apr_wait_for_io_or_timeout */ /* for apr_wait_for_io_or_timeout */
#include "apr_support.h" #include "apr_support.h"