httpd-bugs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 48154] New: Requests through mod_isapi are not parsed by HTTP_INPUT filter
Date Fri, 06 Nov 2009 15:37:18 GMT
https://issues.apache.org/bugzilla/show_bug.cgi?id=48154

           Summary: Requests through mod_isapi are not parsed by
                    HTTP_INPUT filter
           Product: Apache httpd-2
           Version: 2.2.14
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: normal
          Priority: P2
         Component: mod_isapi
        AssignedTo: bugs@httpd.apache.org
        ReportedBy: thickey@radiantsystems.com


Changes made to ap_http_filter in version 2.2.9 (Bug ID 43711) are preventing
requests through the mod_isapi, isapi_handler() function from being processed. 
The changes for this bug are at line 327 of http_filters.c
...
        if ((ctx->state == BODY_CHUNK ||
            (ctx->state == BODY_LENGTH && ctx->remaining > 0)) &&
            f->r->expecting_100 && f->r->proto_num >= HTTP_VERSION(1,1)
&&
            !(f->r->eos_sent || f->r->bytes_sent)) {
            if (!ap_is_HTTP_SUCCESS(f->r->status)) {
                ctx->state = BODY_NONE;
                ctx->eos_sent = 1;
            } else {
...

The specific problem is the call to "ap_is_HTTP_SUCCESS(f->r->status)"

I understand the reason behind the change it causes a problem due to the
request_rec status being set to 0 at line 1483 of mod_isap.c

...
r->status = 0
...

This would happen wiht any message but for my situation it is a POST message
and when initially handled by ap_read_request() the status is set to HTTP_OK
(200)  I am not sure why the isapi_handler() function is setting the status to
0 other then perhaps to initialize the value as it is returned later.  But
becuase this is done before the parse it prevents the message from being read
by the http input filter into cid->ecb->lpbData and therefore no data is passed
on to the external DLL.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org


Mime
View raw message