From: Tim Duesterhus Date: Mon, 8 Nov 2021 08:05:05 +0000 (+0100) Subject: CLEANUP: chunk: Remove duplicated chunk_Xcat implementation X-Git-Tag: v2.5-dev14~31 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8f1d178cd1732689f08df7f97b8a6fecb13c748d;p=thirdparty%2Fhaproxy.git CLEANUP: chunk: Remove duplicated chunk_Xcat implementation Delegate chunk_istcat, chunk_cat and chunk_strncat to the most generic chunk_memcat. --- diff --git a/include/haproxy/chunk.h b/include/haproxy/chunk.h index af9ef816bb..05fd161217 100644 --- a/include/haproxy/chunk.h +++ b/include/haproxy/chunk.h @@ -107,28 +107,6 @@ static inline int chunk_cpy(struct buffer *chk, const struct buffer *src) return 1; } -/* appends chunk after . Returns 0 in case of failure. */ -static inline int chunk_cat(struct buffer *chk, const struct buffer *src) -{ - if (unlikely(chk->data + src->data > chk->size)) - return 0; - - memcpy(chk->area + chk->data, src->area, src->data); - chk->data += src->data; - return 1; -} - -/* appends ist after . Returns 0 in case of failure. */ -static inline int chunk_istcat(struct buffer *chk, const struct ist src) -{ - if (unlikely(chk->data + src.len > chk->size)) - return 0; - - memcpy(chk->area + chk->data, src.ptr, src.len); - chk->data += src.len; - return 1; -} - /* copies memory area into for bytes. Returns 0 in * case of failure. No trailing zero is added. */ @@ -158,6 +136,18 @@ static inline int chunk_memcat(struct buffer *chk, const char *src, return 1; } +/* appends ist after . Returns 0 in case of failure. */ +static inline int chunk_istcat(struct buffer *chk, const struct ist src) +{ + return chunk_memcat(chk, istptr(src), istlen(src)); +} + +/* appends chunk after . Returns 0 in case of failure. */ +static inline int chunk_cat(struct buffer *chk, const struct buffer *src) +{ + return chunk_memcat(chk, src->area, src->data); +} + /* copies str into followed by a trailing zero. Returns 0 in * case of failure. */ @@ -218,12 +208,7 @@ static inline int chunk_strcat(struct buffer *chk, const char *str) */ static inline int chunk_strncat(struct buffer *chk, const char *str, int nb) { - if (unlikely(chk->data + nb >= chk->size)) - return 0; - - memcpy(chk->area + chk->data, str, nb); - chk->data += nb; - return 1; + return chunk_memcat(chk, str, nb); } /* Adds a trailing zero to the current chunk and returns the pointer to the