mirror of
https://github.com/apache/httpd.git
synced 2025-08-08 15:02:10 +03:00
Fix backward compatibility with APR versions less than 2.0 which don't have
apr_socket_wait(). git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@933547 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
@@ -24,6 +24,10 @@
|
|||||||
#include "util_filter.h"
|
#include "util_filter.h"
|
||||||
#define APR_WANT_STRFUNC
|
#define APR_WANT_STRFUNC
|
||||||
#include "apr_strings.h"
|
#include "apr_strings.h"
|
||||||
|
#include "apr_version.h"
|
||||||
|
#if APR_MAJOR_VERSION < 2
|
||||||
|
#include "apr_support.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
module AP_MODULE_DECLARE_DATA reqtimeout_module;
|
module AP_MODULE_DECLARE_DATA reqtimeout_module;
|
||||||
|
|
||||||
@@ -218,7 +222,11 @@ static apr_status_t reqtimeout_filter(ap_filter_t *f,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* ... and wait for more */
|
/* ... and wait for more */
|
||||||
|
#if APR_MAJOR_VERSION < 2
|
||||||
|
rv = apr_wait_for_io_or_timeout(NULL, ccfg->socket, 1);
|
||||||
|
#else
|
||||||
rv = apr_socket_wait(ccfg->socket, APR_WAIT_READ);
|
rv = apr_socket_wait(ccfg->socket, APR_WAIT_READ);
|
||||||
|
#endif
|
||||||
if (rv != APR_SUCCESS)
|
if (rv != APR_SUCCESS)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@@ -24,6 +24,12 @@
|
|||||||
#error This module only works on unix platforms with the correct OS support
|
#error This module only works on unix platforms with the correct OS support
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include "apr_version.h"
|
||||||
|
#if APR_MAJOR_VERSION < 2
|
||||||
|
/* for apr_wait_for_io_or_timeout */
|
||||||
|
#include "apr_support.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "mod_proxy_fdpass.h"
|
#include "mod_proxy_fdpass.h"
|
||||||
|
|
||||||
module AP_MODULE_DECLARE_DATA proxy_fdpass_module;
|
module AP_MODULE_DECLARE_DATA proxy_fdpass_module;
|
||||||
@@ -73,7 +79,12 @@ static apr_status_t socket_connect_un(apr_socket_t *sock,
|
|||||||
|
|
||||||
if ((rv == -1) && (errno == EINPROGRESS || errno == EALREADY)
|
if ((rv == -1) && (errno == EINPROGRESS || errno == EALREADY)
|
||||||
&& (t > 0)) {
|
&& (t > 0)) {
|
||||||
|
#if APR_MAJOR_VERSION < 2
|
||||||
|
rv = apr_wait_for_io_or_timeout(NULL, sock, 0);
|
||||||
|
#else
|
||||||
rv = apr_socket_wait(sock, APR_WAIT_WRITE);
|
rv = apr_socket_wait(sock, APR_WAIT_WRITE);
|
||||||
|
#endif
|
||||||
|
|
||||||
if (rv != APR_SUCCESS) {
|
if (rv != APR_SUCCESS) {
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user