/**************************************************************************** ** ** Copyright (C) 2015 The Qt Company Ltd. ** Contact: http://www.qt.io/licensing/ ** ** This file is part of the plugins of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL21$ ** 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 http://www.qt.io/terms-conditions. For further ** information use the contact form at http://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 2.1 or version 3 as published by the Free ** Software Foundation and appearing in the file LICENSE.LGPLv21 and ** LICENSE.LGPLv3 included in the packaging of this file. Please review the ** following information to ensure the GNU Lesser General Public License ** requirements will be met: https://www.gnu.org/licenses/lgpl.html and ** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** As a special exception, The Qt Company gives you certain additional ** rights. These rights are described in The Qt Company LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef QPLATFORMDEFS_WIN_H #define QPLATFORMDEFS_WIN_H #include #include #undef interface #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