From 0e3ab2782ab3605d80914ae4b24532cb8e82e511 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Fri, 19 Aug 2022 14:45:46 +0200 Subject: [PATCH] glib-aux: simplify nm_inet_parse_str() by using nm_inet_parse_bin() --- src/libnm-glib-aux/nm-inet-utils.c | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/src/libnm-glib-aux/nm-inet-utils.c b/src/libnm-glib-aux/nm-inet-utils.c index 3e5fe4496a..2ede87baf9 100644 --- a/src/libnm-glib-aux/nm-inet-utils.c +++ b/src/libnm-glib-aux/nm-inet-utils.c @@ -425,20 +425,11 @@ gboolean nm_inet_parse_str(int addr_family, const char *text, char **out_addr) { NMIPAddr addrbin; - char addrstr_buf[MAX(INET_ADDRSTRLEN, INET6_ADDRSTRLEN)]; - g_return_val_if_fail(text, FALSE); - - if (addr_family == AF_UNSPEC) - addr_family = strchr(text, ':') ? AF_INET6 : AF_INET; - else - g_return_val_if_fail(NM_IN_SET(addr_family, AF_INET, AF_INET6), FALSE); - - if (inet_pton(addr_family, text, &addrbin) != 1) + if (!nm_inet_parse_bin(addr_family, text, &addr_family, &addrbin)) return FALSE; - NM_SET_OUT(out_addr, - g_strdup(inet_ntop(addr_family, &addrbin, addrstr_buf, sizeof(addrstr_buf)))); + NM_SET_OUT(out_addr, nm_inet_ntop_dup(addr_family, &addrbin)); return TRUE; } @@ -492,12 +483,11 @@ gboolean nm_inet_parse_with_prefix_str(int addr_family, const char *text, char **out_addr, int *out_prefix) { NMIPAddr addrbin; - char addrstr_buf[MAX(INET_ADDRSTRLEN, INET6_ADDRSTRLEN)]; if (!nm_inet_parse_with_prefix_bin(addr_family, text, &addr_family, &addrbin, out_prefix)) return FALSE; - NM_SET_OUT(out_addr, - g_strdup(inet_ntop(addr_family, &addrbin, addrstr_buf, sizeof(addrstr_buf)))); + + NM_SET_OUT(out_addr, nm_inet_ntop_dup(addr_family, &addrbin)); return TRUE; }