MINOR: buffer: replace b{i,o}_put* with b_put*

The two variants now do exactly the same (appending at the tail of the
buffer) so let's not keep the distinction between these classes of
functions and have generic ones for this. It's also worth noting that
b{i,o}_putchk() wasn't used at all and was removed.
diff --git a/include/common/buf.h b/include/common/buf.h
index c38d65d..a7bbb1f 100644
--- a/include/common/buf.h
+++ b/include/common/buf.h
@@ -447,6 +447,53 @@
 	b->head = b_size(b) - output;
 }
 
+/* b_putchar() : tries to append char <c> at the end of buffer <b>. Supports
+ * wrapping. Data are truncated if buffer is full.
+ */
+static inline void b_putchr(struct buffer *b, char c)
+{
+	if (b_full(b))
+		return;
+	*b_tail(b) = c;
+	b->len++;
+}
+
+/* b_putblk() : tries to append block <blk> at the end of buffer <b>. Supports
+ * wrapping. Data are truncated if buffer is too short. It returns the number
+ * of bytes copied.
+ */
+static inline size_t b_putblk(struct buffer *b, const char *blk, size_t len)
+{
+	size_t half;
+
+	if (len > b_room(b))
+		len = b_room(b);
+	if (!len)
+		return 0;
+
+	half = b_contig_space(b);
+	if (half > len)
+		half = len;
+
+	memcpy(b_tail(b), blk, half);
+	b->len += half;
+	if (len > half) {
+		memcpy(b_tail(b), blk + half, len - half);
+		b->len += len - half;
+	}
+	return len;
+}
+
+/* b_putstr() : tries to copy string <str> into output data at buffer <b>.
+ * Supports wrapping. Data are truncated if buffer is too short. It returns the
+ * number of bytes copied.
+ */
+static inline size_t b_putstr(struct buffer *b, const char *str)
+{
+	return b_putblk(b, str, strlen(str));
+}
+
+
 #endif /* _COMMON_BUF_H */
 
 /*