diff options
Diffstat (limited to 'src/util/util.c')
-rw-r--r-- | src/util/util.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/util/util.c b/src/util/util.c index f1aaebc28..b812ef1b1 100644 --- a/src/util/util.c +++ b/src/util/util.c @@ -611,3 +611,26 @@ void to_sized_string(struct sized_string *out, const char *in) } } +/* This function only removes first and last + * character if the first character was '['. + * + * NOTE: This means, that ipv6addr must NOT be followed + * by port number. + */ +errno_t +remove_ipv6_brackets(char *ipv6addr) +{ + size_t len; + + if (ipv6addr && ipv6addr[0] == '[') { + len = strlen(ipv6addr); + if (len < 3) { + return EINVAL; + } + + memmove(ipv6addr, &ipv6addr[1], len - 2); + ipv6addr[len -2] = '\0'; + } + + return EOK; +} |