return 0;
}
-typedef struct {
- apr_pool_t *scratch_pool;
-} proxy_fcgi_baton_t;
-
static void dump_header_to_log(request_rec *r, unsigned char fheader[],
apr_size_t length)
{
{
apr_bucket_brigade *ib, *ob;
int seen_end_of_headers = 0, done = 0;
- proxy_fcgi_baton_t *pfb = conn->data;
apr_status_t rv = APR_SUCCESS;
conn_rec *c = r->connection;
struct iovec vec[2];
unsigned char farray[FCGI_HEADER_LEN];
apr_pollfd_t pfd;
int header_state = HDR_STATE_READING_HEADERS;
+ apr_pool_t *setaside_pool;
+
+ apr_pool_create(&setaside_pool, r->pool);
pfd.desc_type = APR_POLL_SOCKET;
pfd.desc.s = conn->sock;
apr_brigade_cleanup(ob);
- apr_pool_clear(pfb->scratch_pool);
+ apr_pool_clear(setaside_pool);
}
else if (st == -1) {
rv = APR_EINVAL;
/* We're still looking for the end of the
* headers, so this part of the data will need
* to persist. */
- apr_bucket_setaside(b, pfb->scratch_pool);
+ apr_bucket_setaside(b, setaside_pool);
}
}
}
return status;
}
-
- {
- proxy_fcgi_baton_t *pfb = apr_pcalloc(r->pool, sizeof(*pfb));
-
- apr_pool_create(&pfb->scratch_pool, r->pool);
-
- backend->data = pfb;
- }
}
backend->is_ssl = 0;