diff --git a/include/proto/filters.h b/include/proto/filters.h
index dd7490f..e4061a7 100644
--- a/include/proto/filters.h
+++ b/include/proto/filters.h
@@ -34,6 +34,10 @@
 #define CHN_IDX(chn)     (((chn)->flags & CF_ISRESP) == CF_ISRESP)
 #define FLT_NXT(flt, chn) ((flt)->next[CHN_IDX(chn)])
 #define FLT_FWD(flt, chn) ((flt)->fwd[CHN_IDX(chn)])
+#define flt_req_nxt(flt) ((flt)->next[0])
+#define flt_rsp_nxt(flt) ((flt)->next[1])
+#define flt_req_fwd(flt) ((flt)->fwd[0])
+#define flt_rsp_fwd(flt) ((flt)->fwd[1])
 
 #define HAS_FILTERS(strm)           ((strm)->strm_flt.flags & STRM_FLT_FL_HAS_FILTERS)
 
@@ -181,7 +185,8 @@
 	list_for_each_entry(f, &strm_flt(s)->filters, list) {
 		if (f == filter)
 			break;
-		FLT_NXT(f, chn) += len;
+		if (IS_DATA_FILTER(filter, chn))
+			FLT_NXT(f, chn) += len;
 	}
 }
 
@@ -205,9 +210,11 @@
 	list_for_each_entry(f, &strm_flt(s)->filters, list) {
 		if (f == filter)
 			before = 0;
-		if (before)
-			FLT_FWD(f, chn) += len;
-		FLT_NXT(f, chn) += len;
+		if (IS_DATA_FILTER(filter, chn)) {
+			if (before)
+				FLT_FWD(f, chn) += len;
+			FLT_NXT(f, chn) += len;
+		}
 	}
 }
 
diff --git a/include/types/filters.h b/include/types/filters.h
index 38f96d9..c433078 100644
--- a/include/types/filters.h
+++ b/include/types/filters.h
@@ -56,17 +56,6 @@
 };
 
 /*
- * Filter flags set for a specific filter on channel
- *
- *  - FILTER_FL_FORWARD_DATA : When this flag is set, the rest of the data is
- *                             directly forwarded. For chunk-encoded HTTP
- *                             messages, this flag is reseted between each
- *                             chunks.
- */
-#define FILTER_FL_FORWARD_DATA 0x00000001
-
-
-/*
  * Callbacks available on a filter:
  *
  *  - init                : Initializes the filter for a proxy. Returns a
