From 6b877de5bca2ed56868d7d0b440997d1011f89b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Markus=20M=C3=A4kel=C3=A4?= Date: Wed, 24 Jan 2018 20:29:09 +0200 Subject: [PATCH] Make gwbuf_{add|get}_property const correct The function now takes const arguments. --- include/maxscale/buffer.h | 4 ++-- server/core/buffer.cc | 19 +++++++++---------- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/include/maxscale/buffer.h b/include/maxscale/buffer.h index 3c07ba1db..7a2e754b3 100644 --- a/include/maxscale/buffer.h +++ b/include/maxscale/buffer.h @@ -355,7 +355,7 @@ extern void gwbuf_set_type(GWBUF *head, uint32_t type); * * @return True on success, false otherwise. */ -extern bool gwbuf_add_property(GWBUF *buf, char *name, char *value); +extern bool gwbuf_add_property(GWBUF *buf, const char *name, const char *value); /** * Return the value of a buffer property @@ -365,7 +365,7 @@ extern bool gwbuf_add_property(GWBUF *buf, char *name, char *value); * * @return The property value or NULL if the property was not found. */ -extern char *gwbuf_get_property(GWBUF *buf, char *name); +extern char *gwbuf_get_property(GWBUF *buf, const char *name); /** * Convert a chain of GWBUF structures into a single GWBUF structure diff --git a/server/core/buffer.cc b/server/core/buffer.cc index cb5587623..7e7cc1967 100644 --- a/server/core/buffer.cc +++ b/server/core/buffer.cc @@ -738,23 +738,22 @@ static buffer_object_t* gwbuf_remove_buffer_object(GWBUF* buf, buffer_object_t* } bool -gwbuf_add_property(GWBUF *buf, char *name, char *value) +gwbuf_add_property(GWBUF *buf, const char *name, const char *value) { - name = MXS_STRDUP(name); - value = MXS_STRDUP(value); - + char* my_name = MXS_STRDUP(name); + char* my_value = MXS_STRDUP(value); BUF_PROPERTY *prop = (BUF_PROPERTY *)MXS_MALLOC(sizeof(BUF_PROPERTY)); - if (!name || !value || !prop) + if (!my_name || !my_value || !prop) { - MXS_FREE(name); - MXS_FREE(value); + MXS_FREE(my_name); + MXS_FREE(my_value); MXS_FREE(prop); return false; } - prop->name = name; - prop->value = value; + prop->name = my_name; + prop->value = my_value; spinlock_acquire(&buf->gwbuf_lock); prop->next = buf->properties; buf->properties = prop; @@ -763,7 +762,7 @@ gwbuf_add_property(GWBUF *buf, char *name, char *value) } char * -gwbuf_get_property(GWBUF *buf, char *name) +gwbuf_get_property(GWBUF *buf, const char *name) { BUF_PROPERTY *prop;