You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by wr...@apache.org on 2008/04/09 10:26:31 UTC

svn commit: r646218 - /httpd/mod_ftp/trunk/modules/ftp/ftp_data_filters.c

Author: wrowe
Date: Wed Apr  9 01:26:28 2008
New Revision: 646218

URL: http://svn.apache.org/viewvc?rev=646218&view=rev
Log:
httpd r600473 - "document new API guarantee for handling non-NULL request_rec
pointer when adding connection filters" to httpd/trunk/server/util_filter.c removes 
the request_rec* from any filter which is AP_FTYPE_CONNECTION or higher.  This 
includes AP_FTYPE_NETWORK filters like the ftp_data_out filter.

The ftp_data_out_filter function (modules/ftp/ftp_data_filters.c:225) tries to
retrieve its module config using the filter's request_rec.  It must use the
fc's saved orig_server instead of the request_rec server.

Submitted by: Tom Donovan <Tom.Donovan acm.org>, wowe


Modified:
    httpd/mod_ftp/trunk/modules/ftp/ftp_data_filters.c

Modified: httpd/mod_ftp/trunk/modules/ftp/ftp_data_filters.c
URL: http://svn.apache.org/viewvc/httpd/mod_ftp/trunk/modules/ftp/ftp_data_filters.c?rev=646218&r1=646217&r2=646218&view=diff
==============================================================================
--- httpd/mod_ftp/trunk/modules/ftp/ftp_data_filters.c (original)
+++ httpd/mod_ftp/trunk/modules/ftp/ftp_data_filters.c Wed Apr  9 01:26:28 2008
@@ -200,7 +200,7 @@
 };
 
 
-apr_status_t ftp_data_out_filter(ap_filter_t * f, apr_bucket_brigade *bb)
+apr_status_t ftp_data_out_filter(ap_filter_t *f, apr_bucket_brigade *bb)
 {
     ftp_connection *fc = f->ctx;
     ftp_server_config *fsc;
@@ -222,7 +222,7 @@
         return rv;
     }
 
-    fsc = ftp_get_module_config(f->r->server->module_config);
+    fsc = ftp_get_module_config(fc->orig_server->module_config);
 
     while (!APR_BRIGADE_EMPTY(bb)) {