util_filter.c revision 9ce0a03f13db4815dd3e554409d672caa1a4671d
f757855e81fc0bc116de372220096e532afb5cb8Lennart Poettering/* ====================================================================
f757855e81fc0bc116de372220096e532afb5cb8Lennart Poettering * The Apache Software License, Version 1.1
f757855e81fc0bc116de372220096e532afb5cb8Lennart Poettering * Copyright (c) 2000-2001 The Apache Software Foundation. All rights
f757855e81fc0bc116de372220096e532afb5cb8Lennart Poettering * Redistribution and use in source and binary forms, with or without
f757855e81fc0bc116de372220096e532afb5cb8Lennart Poettering * modification, are permitted provided that the following conditions
f757855e81fc0bc116de372220096e532afb5cb8Lennart Poettering * 1. Redistributions of source code must retain the above copyright
f757855e81fc0bc116de372220096e532afb5cb8Lennart Poettering * notice, this list of conditions and the following disclaimer.
f757855e81fc0bc116de372220096e532afb5cb8Lennart Poettering * 2. Redistributions in binary form must reproduce the above copyright
f757855e81fc0bc116de372220096e532afb5cb8Lennart Poettering * notice, this list of conditions and the following disclaimer in
f757855e81fc0bc116de372220096e532afb5cb8Lennart Poettering * the documentation and/or other materials provided with the
f757855e81fc0bc116de372220096e532afb5cb8Lennart Poettering * distribution.
7732f92bad5f24a4bd03bb357af46da56b0ac94dLennart Poettering * 3. The end-user documentation included with the redistribution,
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * if any, must include the following acknowledgment:
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * "This product includes software developed by the
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * Apache Software Foundation (http://www.apache.org/)."
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * Alternately, this acknowledgment may appear in the software itself,
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * if and wherever such third-party acknowledgments normally appear.
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * 4. The names "Apache" and "Apache Software Foundation" must
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * not be used to endorse or promote products derived from this
5f932eb9af7a5e4723855bcd776c2acaa2a31932Lennart Poettering * software without prior written permission. For written
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * permission, please contact apache@apache.org.
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * 5. Products derived from this software may not be called "Apache",
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * nor may "Apache" appear in their name, without prior written
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * permission of the Apache Software Foundation.
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
f6d6bad1461a8f545a80955fadd7ee0c10db15bbLennart Poettering * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
#define APR_WANT_STRFUNC
#include "apr_want.h"
#include "httpd.h"
#include "http_log.h"
#include "util_filter.h"
|| (before_this)->r != (f)->r)
return APR_SUCCESS;
*outf = f;
return NULL;
if (curr == f) {
if (next) {
return AP_NOBODY_READ;
if (next) {
apr_bucket *e;
return AP_NOBODY_WROTE;
apr_bucket *e;
if (!(*saveto)) {
return rv;
return APR_SUCCESS;
apr_bucket *b;
b = apr_bucket_flush_create();
return rv;
const char *fmt,
return rv;