From c205ee6ce08ceb7bdf4ed366d07c74e57b7ab691 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Wed, 17 Feb 2016 13:25:34 +0100 Subject: [PATCH] platform: stack-allocate temporary string in nm_platform_link_tun_get_properties_ifname() --- src/platform/nm-platform.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/platform/nm-platform.c b/src/platform/nm-platform.c index 85e22989f..e7a8b78fc 100644 --- a/src/platform/nm-platform.c +++ b/src/platform/nm-platform.c @@ -2134,7 +2134,8 @@ nm_platform_link_veth_get_properties (NMPlatform *self, int ifindex, int *out_pe gboolean nm_platform_link_tun_get_properties_ifname (NMPlatform *self, const char *ifname, NMPlatformTunProperties *props) { - char *path, *val; + char path[256]; + char *val; gboolean success = TRUE; _CHECK_SELF (self, klass, FALSE); @@ -2147,11 +2148,9 @@ nm_platform_link_tun_get_properties_ifname (NMPlatform *self, const char *ifname if (!ifname || !nm_utils_iface_valid_name (ifname)) return FALSE; - ifname = ASSERT_VALID_PATH_COMPONENT (ifname); - path = g_strdup_printf ("/sys/class/net/%s/owner", ifname); + nm_sprintf_buf (path, "/sys/class/net/%s/owner", ifname); val = nm_platform_sysctl_get (self, path); - g_free (path); if (val) { props->owner = _nm_utils_ascii_str_to_int64 (val, 10, -1, G_MAXINT64, -1); if (errno) @@ -2160,9 +2159,8 @@ nm_platform_link_tun_get_properties_ifname (NMPlatform *self, const char *ifname } else success = FALSE; - path = g_strdup_printf ("/sys/class/net/%s/group", ifname); + nm_sprintf_buf (path, "/sys/class/net/%s/group", ifname); val = nm_platform_sysctl_get (self, path); - g_free (path); if (val) { props->group = _nm_utils_ascii_str_to_int64 (val, 10, -1, G_MAXINT64, -1); if (errno) @@ -2171,9 +2169,8 @@ nm_platform_link_tun_get_properties_ifname (NMPlatform *self, const char *ifname } else success = FALSE; - path = g_strdup_printf ("/sys/class/net/%s/tun_flags", ifname); + nm_sprintf_buf (path, "/sys/class/net/%s/tun_flags", ifname); val = nm_platform_sysctl_get (self, path); - g_free (path); if (val) { gint64 flags;