You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bugs@httpd.apache.org by bu...@apache.org on 2002/07/10 00:20:40 UTC

DO NOT REPLY [Bug 10617] New: - SegFault in mod_ext_filter when content_type is null

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=10617>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=10617

SegFault in mod_ext_filter when content_type is null

           Summary: SegFault in mod_ext_filter when content_type is null
           Product: Apache httpd-2.0
           Version: 2.0.39
          Platform: Sun
        OS/Version: Solaris
            Status: NEW
          Severity: Major
          Priority: Other
         Component: mod_ext_filter
        AssignedTo: bugs@httpd.apache.org
        ReportedBy: apsmith@aps.org


This happens when a filtered URL returns a Location: redirect (the example I
looked at was the Zope management console) - the bucket-brigade for the
(non-existant) body is forwarded to the external filter, but no content_type is
set (and there is no content). You obviously don't want to filter a content-less
body. The following is a patch to mod_ext_filter.c that fixes the problem:

*** mod_ext_filter.c    Tue Jul  9 18:01:47 2002
--- mod_ext_filter.c_orig       Tue Jul  9 17:57:05 2002
***************
*** 491,499 ****
          return APR_EINVAL;
      }
      ctx->p = f->r->pool;
!     if ((f->r->content_type == NULL) ||
!       (ctx->filter->intype && ctx->filter->intype != INTYPE_ALL &&
!         strcasecmp(ctx->filter->intype, f->r->content_type))) {
          /* wrong IMT for us; don't mess with the output */
          ctx->noop = 1;
      }
--- 491,499 ----
          return APR_EINVAL;
      }
      ctx->p = f->r->pool;
!     if (ctx->filter->intype &&
!         ctx->filter->intype != INTYPE_ALL &&
!         strcasecmp(ctx->filter->intype, f->r->content_type)) {
          /* wrong IMT for us; don't mess with the output */
          ctx->noop = 1;
      }

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