]> git.eshelyaron.com Git - emacs.git/commitdiff
Support wlan in network-interface-list on pre-Vista Windows
authorRobert Pluim <rpluim@gmail.com>
Wed, 27 Nov 2019 09:41:32 +0000 (10:41 +0100)
committerRobert Pluim <rpluim@gmail.com>
Thu, 28 Nov 2019 08:41:28 +0000 (09:41 +0100)
* src/w32.c (network_interface_list): Check for 'Wireless' in
adapter description to support pre-Vista Windows.

src/w32.c

index a6ebe55ee4dd2763c78bba50fa409b17a51510a6..9f3c1b5d6ed4945b7eb51592d7389474b677ac3b 100644 (file)
--- a/src/w32.c
+++ b/src/w32.c
@@ -9540,8 +9540,23 @@ network_interface_list (bool full, unsigned short match)
       switch (adapter->IfType)
         {
         case IF_TYPE_ETHERNET_CSMACD:
-          ifmt_idx = ETHERNET;
-          if_num = eth_count++;
+          /* Windows before Vista reports wireless adapters as
+             Ethernet.  Work around by looking at the Description
+             string.  */
+          {
+          char description[MAX_UTF8_PATH];
+          if (filename_from_utf16 (adapter->Description, description) == 0
+              && strstr (description, "Wireless "))
+            {
+              ifmt_idx = WLAN;
+              if_num = wlan_count++;
+            }
+          else
+            {
+              ifmt_idx = ETHERNET;
+              if_num = eth_count++;
+            }
+          }
           break;
         case IF_TYPE_ISO88025_TOKENRING:
           ifmt_idx = TOKENRING;