From fabe24df3a350eac3fc6deade05b20108cb13c39 Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Wed, 30 Jun 2021 01:56:24 +0200 Subject: ipc: windows: don't display disabled adapters Signed-off-by: Jason A. Donenfeld --- src/ipc-windows.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/ipc-windows.h') diff --git a/src/ipc-windows.h b/src/ipc-windows.h index 9c72a62..d19860e 100644 --- a/src/ipc-windows.h +++ b/src/ipc-windows.h @@ -37,6 +37,7 @@ static int kernel_get_wireguard_interfaces(struct string_list *list) SP_DEVINFO_DATA dev_info_data = { .cbSize = sizeof(SP_DEVINFO_DATA) }; HKEY key; GUID instance_id; + ULONG status, problem_code; char *interface_name; struct hashtable_entry *entry; @@ -110,7 +111,9 @@ static int kernel_get_wireguard_interfaces(struct string_list *list) goto cleanup_buf; } - string_list_add(list, interface_name); + if (CM_Get_DevNode_Status(&status, &problem_code, dev_info_data.DevInst, 0) == CR_SUCCESS && + (status & (DN_DRIVER_LOADED | DN_STARTED)) == (DN_DRIVER_LOADED | DN_STARTED)) + string_list_add(list, interface_name); entry = hashtable_find_or_insert_entry(&cached_kernel_interfaces, interface_name); free(interface_name); -- cgit v1.2.3-59-g8ed1b