/**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the plugins of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 3 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL3 included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 3 requirements ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 2.0 or (at your option) the GNU General ** Public license version 3 or any later version approved by the KDE Free ** Qt Foundation. The licenses are as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 ** included in the packaging of this file. Please review the following ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-2.0.html and ** https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef QPLATFORMDEFS_WIN_H #define QPLATFORMDEFS_WIN_H // Since we need to include winsock2.h, we need to define WIN32_LEAN_AND_MEAN // somewhere above so windows.h won't include winsock.h. #include #include #undef interface #include #include QT_BEGIN_NAMESPACE #ifndef NS_NLA #define NS_NLA 15 #ifndef NLA_NAMESPACE_GUID enum NLA_BLOB_DATA_TYPE { NLA_RAW_DATA = 0, NLA_INTERFACE = 1, NLA_802_1X_LOCATION = 2, NLA_CONNECTIVITY = 3, NLA_ICS = 4 }; enum NLA_CONNECTIVITY_TYPE { NLA_NETWORK_AD_HOC = 0, NLA_NETWORK_MANAGED = 1, NLA_NETWORK_UNMANAGED = 2, NLA_NETWORK_UNKNOWN = 3 }; enum NLA_INTERNET { NLA_INTERNET_UNKNOWN = 0, NLA_INTERNET_NO = 1, NLA_INTERNET_YES = 2 }; struct NLA_BLOB { struct { NLA_BLOB_DATA_TYPE type; DWORD dwSize; DWORD nextOffset; } header; union { // NLA_RAW_DATA CHAR rawData[1]; // NLA_INTERFACE struct { DWORD dwType; DWORD dwSpeed; CHAR adapterName[1]; } interfaceData; // NLA_802_1X_LOCATION struct { CHAR information[1]; } locationData; // NLA_CONNECTIVITY struct { NLA_CONNECTIVITY_TYPE type; NLA_INTERNET internet; } connectivity; // NLA_ICS struct { struct { DWORD speed; DWORD type; DWORD state; WCHAR machineName[256]; WCHAR sharedAdapterName[256]; } remote; } ICS; } data; }; #endif // NLA_NAMESPACE_GUID #endif enum NDIS_MEDIUM { NdisMedium802_3 = 0, }; enum NDIS_PHYSICAL_MEDIUM { NdisPhysicalMediumWirelessLan = 1, NdisPhysicalMediumBluetooth = 10, NdisPhysicalMediumWiMax = 12, }; #define OID_GEN_MEDIA_SUPPORTED 0x00010103 #define OID_GEN_PHYSICAL_MEDIUM 0x00010202 #define IOCTL_NDIS_QUERY_GLOBAL_STATS \ CTL_CODE(FILE_DEVICE_PHYSICAL_NETCARD, 0, METHOD_OUT_DIRECT, FILE_ANY_ACCESS) QT_END_NAMESPACE #endif // QPLATFORMDEFS_WIN_H