On Thursday 30 June 2011 07:04 AM, Daniel Shahaf wrote:
> The problem is that the prototype of ap_log_rerror() in
> AP_DECLARE(void) ap_log_rerror(const char *file, int line, int module_index,
> int level, apr_status_t status,
> const request_rec *r, const char *fmt, ...);
> , has a `module_index' parameter that our code doesn't pass.
> dev@: I suspect we need to patch mod_dav_svn to allow it to run with the
> modified API.
This is fixed in trunk via *r1076234
Update log_access_verdict to make it work with HTTPD 2.3.x as well as older
server versions with reference to . The function is being called
with APLOG_MARK in few places. The macro APLOG_MARK expands to 2 arguments
till HTTPD-2.2.x but 3 arguments in HTTPD-2.3-dev, which causes failure
while compiling with HTTPD-2.3-dev. So we need to handle both the cases.
case 1 HTTPD 2.3:
1.APLOG_USE_MODULE is used to indirectly set APLOG_MODULE_INDEX and APLOG_MARK.
2.The macros LOG_ARGS_SIGNATURE and LOG_ARGS_CASCADE are expanded as formal and
actual arguments to log_access_verdict with respect to APLOG_MARK which has
one additonal parameter module_index through which we can take the advantage of
per-module loglevel configuration introduced in HTTPD 2.3.
case 2 pre-HTTPD 2.3:
The macros LOG_ARGS_SIGNATURE and LOG_ARGS_CASCADE expand to FILE and LINE to
make the code compatible with older server versions.
(log_access_verdict): Make the macro LOG_ARGS_SIGNATURE as formal parameter
and use LOG_ARGS_CASCADE as actual parameter from the callers.
We had a discussion regarding this issue via the thread
Thanks & Regards,
> OP: Thanks for the report. Until this is fixed I suggest you try
> a non-beta release of httpd.
Received on 2011-06-30 08:37:57 CEST