From f3c7e85d05f7b2b7bf093162b776f71b2bc6420d Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Wed, 20 Aug 2014 22:50:47 +0200 Subject: libctrl: remove reference to bsc_replace_string() ... and rather introduce a general osmo_talloc_replace_string() to libosmocore. --- include/osmocom/core/utils.h | 7 +++++++ include/osmocom/ctrl/control_cmd.h | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/include/osmocom/core/utils.h b/include/osmocom/core/utils.h index c08e7753..373522ac 100644 --- a/include/osmocom/core/utils.h +++ b/include/osmocom/core/utils.h @@ -1,6 +1,7 @@ #pragma once #include +#include /*! \defgroup utils General-purpose utility functions * @{ @@ -59,5 +60,11 @@ do { \ abort(); \ } +static inline void osmo_talloc_replace_string(void *ctx, char **dst, char *newstr) +{ + if (*dst) + talloc_free(*dst); + *dst = talloc_strdup(ctx, newstr); +} /*! @} */ diff --git a/include/osmocom/ctrl/control_cmd.h b/include/osmocom/ctrl/control_cmd.h index 10717acf..e38db037 100644 --- a/include/osmocom/ctrl/control_cmd.h +++ b/include/osmocom/ctrl/control_cmd.h @@ -145,7 +145,7 @@ static int get_##cmdname(struct ctrl_cmd *cmd, void *_data) \ static int set_##cmdname(struct ctrl_cmd *cmd, void *_data) \ { \ dtype *data = cmd->node; \ - bsc_replace_string(cmd->node, &data->element, cmd->value); \ + osmo_talloc_replace_string(cmd->node, &data->element, cmd->value); \ return get_##cmdname(cmd, _data); \ } #define CTRL_CMD_DEFINE_STRING(cmdname, cmdstr, dtype, element) \ -- cgit v1.2.3