diff --git a/include/common/buf.h b/include/common/buf.h
index fccad45..0ee9c54 100644
--- a/include/common/buf.h
+++ b/include/common/buf.h
@@ -278,6 +278,21 @@
 	return 1;
 }
 
+/* b_contig_data() : returns the amount of data that can contiguously be read
+ * at once starting from a relative offset <start> (which allows to easily
+ * pre-compute blocks for memcpy). The start point will typically contain the
+ * amount of past data already returned by a previous call to this function.
+ */
+static inline size_t b_contig_data(const struct buffer *b, size_t start)
+{
+	size_t data = b_wrap(b) - b_peek(b, start);
+	size_t limit = b_data(b) - start;
+
+	if (data > limit)
+		data = limit;
+	return data;
+}
+
 
 /*********************************************/
 /* Functions used to modify the buffer state */
diff --git a/include/common/buffer.h b/include/common/buffer.h
index b34c389..da65e89 100644
--- a/include/common/buffer.h
+++ b/include/common/buffer.h
@@ -123,16 +123,6 @@
 	return ret;
 }
 
-/* Returns the amount of input data that can contiguously be read at once */
-static inline int bi_contig_data(const struct buffer *b)
-{
-	int data = b->data + b->size - b->p;
-
-	if (data > b->i)
-		data = b->i;
-	return data;
-}
-
 /* Returns the start of the output data in a buffer */
 static inline char *bo_ptr(const struct buffer *b)
 {
