From 572ac897733f0b6fe7baf67006db0e8f182db59c Mon Sep 17 00:00:00 2001
From: KWSys Upstream <kwrobot@kitware.com>
Date: Wed, 16 Nov 2016 11:14:51 -0500
Subject: KWSys 2016-11-16 (a0c60eec)

Code extracted from:

    http://public.kitware.com/KWSys.git

at commit a0c60eec7cdbe7b5d0196bfc5b69bd969fe8786f (master).

Upstream Shortlog
-----------------

Brad King (2):
      818405fc Fix typo in clang-format script documentation
      a0c60eec Terminal: Add tmux to VT100 color support whitelist

Matt Leotta (1):
      6a642f72 SystemInformation: Skip loopback devices in search for FQDN
---
 SystemInformation.cxx | 7 ++++++-
 Terminal.c            | 2 ++
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/SystemInformation.cxx b/SystemInformation.cxx
index 1675da5..e01dcd7 100644
--- a/SystemInformation.cxx
+++ b/SystemInformation.cxx
@@ -79,6 +79,7 @@ typedef int siginfo_t;
 #include <sys/sysctl.h>
 #if defined(KWSYS_SYS_HAS_IFADDRS_H)
 #include <ifaddrs.h>
+#include <net/if.h>
 #define KWSYS_SYSTEMINFORMATION_IMPLEMENT_FQDN
 #endif
 #endif
@@ -99,6 +100,7 @@ typedef int siginfo_t;
 #include <sys/sysctl.h>
 #if defined(KWSYS_SYS_HAS_IFADDRS_H)
 #include <ifaddrs.h>
+#include <net/if.h>
 #define KWSYS_SYSTEMINFORMATION_IMPLEMENT_FQDN
 #endif
 #if !(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ - 0 >= 1050)
@@ -113,6 +115,7 @@ typedef int siginfo_t;
 #include <sys/socket.h>
 #if defined(KWSYS_SYS_HAS_IFADDRS_H)
 #include <ifaddrs.h>
+#include <net/if.h>
 #if !defined(__LSB_VERSION__) /* LSB has no getifaddrs */
 #define KWSYS_SYSTEMINFORMATION_IMPLEMENT_FQDN
 #endif
@@ -1696,7 +1699,9 @@ int SystemInformationImplementation::GetFullyQualifiedDomainName(
 
   for (ifa = ifas; ifa != NULL; ifa = ifa->ifa_next) {
     int fam = ifa->ifa_addr ? ifa->ifa_addr->sa_family : -1;
-    if ((fam == AF_INET) || (fam == AF_INET6)) {
+    // Skip Loopback interfaces
+    if (((fam == AF_INET) || (fam == AF_INET6)) &&
+        !(ifa->ifa_flags & IFF_LOOPBACK)) {
       char host[NI_MAXHOST] = { '\0' };
 
       const size_t addrlen = (fam == AF_INET ? sizeof(struct sockaddr_in)
diff --git a/Terminal.c b/Terminal.c
index 26174a1..c0b7f45 100644
--- a/Terminal.c
+++ b/Terminal.c
@@ -150,6 +150,8 @@ static const char* kwsysTerminalVT100Names[] = { "Eterm",
                                                  "screen-bce",
                                                  "screen-w",
                                                  "screen.linux",
+                                                 "tmux",
+                                                 "tmux-256color",
                                                  "vt100",
                                                  "xterm",
                                                  "xterm-16color",
-- 
cgit v0.12