From: Guus Sliepen <guus@tinc-vpn.org>
Date: Mon, 17 Apr 2017 11:02:39 +0000 (+0200)
Subject: Make sure realname is always initialized.
X-Git-Tag: release-1.1pre15~25
X-Git-Url: http://git.tinc-vpn.org/git/browse?a=commitdiff_plain;h=2b4c0c63628ff9b432ec5d4b4c7b7ab2d4b02fb2;p=tinc

Make sure realname is always initialized.
---

diff --git a/src/bsd/device.c b/src/bsd/device.c
index 54282626..fbc75937 100644
--- a/src/bsd/device.c
+++ b/src/bsd/device.c
@@ -198,18 +198,19 @@ static bool setup_device(void) {
 
 	// Guess what the corresponding interface is called
 
-	char *realname;
+	char *realname = NULL;
 
 #if defined(HAVE_FDEVNAME)
-	realname = fdevname(device_fd) ? : device;
+	realname = fdevname(device_fd);
 #elif defined(HAVE_DEVNAME)
 	struct stat buf;
 	if(!fstat(device_fd, &buf))
-		realname = devname(buf.st_rdev, S_IFCHR) ? : device;
-#else
-	realname = device;
+		realname = devname(buf.st_rdev, S_IFCHR);
 #endif
 
+	if(!realname)
+		realname = device;
+
 	if(!get_config_string(lookup_config(config_tree, "Interface"), &iface))
 		iface = xstrdup(strrchr(realname, '/') ? strrchr(realname, '/') + 1 : realname);
 	else if(strcmp(iface, strrchr(realname, '/') ? strrchr(realname, '/') + 1 : realname))