⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 oid.h

📁 台湾RALink公司的 rt2570无线 802.11g 网卡的 驱动的源代码 ,支持linux2.4以上的 内河
💻 H
📖 第 1 页 / 共 3 页
字号:
/*
 ***************************************************************************
 * Ralink Tech Inc.
 * 4F, No. 2 Technology 5th Rd.
 * Science-based Industrial Park
 * Hsin-chu, Taiwan, R.O.C.
 *
 * (c) Copyright 2002-2004, Ralink Technology, Inc.
 *
 * This program is free software; you can redistribute it and/or modify  * 
 * it under the terms of the GNU General Public License as published by  * 
 * the Free Software Foundation; either version 2 of the License, or     * 
 * (at your option) any later version.                                   * 
 *                                                                       * 
 * This program is distributed in the hope that it will be useful,       * 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of        * 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         * 
 * GNU General Public License for more details.                          * 
 *                                                                       * 
 * You should have received a copy of the GNU General Public License     * 
 * along with this program; if not, write to the                         * 
 * Free Software Foundation, Inc.,                                       * 
 * 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             * 
 *                                                                       * 
 ************************************************************************
	Module Name:
	oid.h

	Abstract:

	Revision History:
	Who			When			What
	--------	----------		----------------------------------------------
	Name		Date			Modification logs
	Jan Lee		2005-06-01		Release
*/

#ifndef _OID_H_
#define _OID_H_


#if WIRELESS_EXT <= 11
#ifndef SIOCDEVPRIVATE
#define SIOCDEVPRIVATE                              0x8BE0
#endif
#define SIOCIWFIRSTPRIV                             SIOCDEVPRIVATE
#endif

#define RT_PRIV_IOCTL                               (SIOCIWFIRSTPRIV + 1)
#define RTPRIV_IOCTL_SET                            (SIOCIWFIRSTPRIV + 0)
#define RTPRIV_IOCTL_AUTH                            (SIOCIWFIRSTPRIV + 2)
#define RTPRIV_IOCTL_KEYID                            (SIOCIWFIRSTPRIV + 7)
#define RTPRIV_IOCTL_WEPSTATUS                            (SIOCIWFIRSTPRIV + 4)
#define RTPRIV_IOCTL_WPAPSK                            (SIOCIWFIRSTPRIV + 5)
#define RTPRIV_IOCTL_PSM                            (SIOCIWFIRSTPRIV + 6)


//
// IEEE 802.11 OIDs
//


#ifdef RT2500_DBG
#define RTPRIV_IOCTL_BBP                            SIOCIWFIRSTPRIV + 0x03
#define RTPRIV_IOCTL_MAC                            SIOCIWFIRSTPRIV + 0x05
#endif


// OID definition, since NDIS 5.0 didn't define these, we need to define for our own
#ifndef NDIS51_MINIPORT

#define OID_GEN_MACHINE_NAME               0x0001021A

//RaConfig2500 (SetInformation)-->
#define RT_OID_802_11_COUNTRY_REGION                0x0507
#define OID_802_11_BSSID_LIST_SCAN              	 0x0508
#define OID_802_11_SSID                    			0x0509//also in get
#define OID_802_11_BSSID                   			0x050A//also in get
#define RT_OID_802_11_RADIO                         		 0x050B//also in get
#define RT_OID_802_11_PHY_MODE                      	 0x050C//also in get
#define RT_OID_802_11_STA_CONFIG                    	 0x050D//also in get
#define OID_802_11_DESIRED_RATES           		 0x050E
#define RT_OID_802_11_PREAMBLE                      	 0x050F//also in get
#define OID_802_11_WEP_STATUS                   		 0x0510//also in get
#define OID_802_11_AUTHENTICATION_MODE           0x0511//also in get
#define OID_802_11_INFRASTRUCTURE_MODE           0x0512//also in get
#define RT_OID_802_11_RESET_COUNTERS                0x0513
#define OID_802_11_RTS_THRESHOLD           		 0x0514//also in get
#define OID_802_11_FRAGMENTATION_THRESHOLD   0x0515//also in get
#define OID_802_11_POWER_MODE              		 0x0516//also in get
#define OID_802_11_TX_POWER_LEVEL                      0x0517
#define RT_OID_802_11_ADD_WPA                       	 0x0518
#define OID_802_11_REMOVE_KEY                   		 0x0519
#define OID_802_11_ADD_KEY                      		 0x0520
#define RT_OID_REMOVE_ALLKEYS						0x0D730220
#define OID_802_11_CONFIGURATION           		 0x0521//also in get
#define OID_802_11_TX_PACKET_BURST			0x522  // NEWNEW
#define RT_OID_802_11_QUERY_NOISE_LEVEL       0x523
#define RT_OID_802_11_EXTRA_INFO	          0x524

#define RT_OID_DEVICE_NAME                          		 0x0607
#define RT_OID_VERSION_INFO                         		 0x0608
#define OID_802_11_BSSID_LIST              			 0x0609
#define OID_802_3_CURRENT_ADDRESS                      0x060A
#define OID_GEN_MEDIA_CONNECT_STATUS               0x060B
#define RT_OID_802_11_QUERY_LINK_STATUS                       0x060C
#define OID_802_11_RSSI                    				 0x060D
#define OID_802_11_STATISTICS                   		 0x060E
#define OID_GEN_RCV_OK                           		        0x060F
#define OID_GEN_RCV_NO_BUFFER                       	 0x0610

//<-- RaConfig2500 (SetInformation)

//
// IEEE 802.11 OIDs
//
#define OID_802_11_NETWORK_TYPES_SUPPORTED              0x0103
#define OID_802_11_NETWORK_TYPE_IN_USE                  0x0104
#define OID_802_11_RSSI_TRIGGER                         		0x0107
#define OID_802_11_NUMBER_OF_ANTENNAS                   0x010B
#define OID_802_11_RX_ANTENNA_SELECTED                  0x010C
#define OID_802_11_TX_ANTENNA_SELECTED                  0x010D
#define OID_802_11_SUPPORTED_RATES                      0x010E
#define OID_802_11_ADD_WEP                              	0x0112
#define OID_802_11_REMOVE_WEP                           0x0113
#define OID_802_11_DISASSOCIATE                         0x0114
#define OID_802_11_PRIVACY_FILTER                       0x0118
#define OID_802_11_ASSOCIATION_INFORMATION              0x011E
#define OID_802_11_TEST                                 		0x011F

// Renamed to reflect better the extended set of encryption status
#define OID_802_11_ENCRYPTION_STATUS            OID_802_11_WEP_STATUS
#define OID_802_11_RELOAD_DEFAULTS              0x0D01011C
// Added to allow key mapping and default keys

//
// IEEE 802.11 Structures and definitions
//
// new types for Media Specific Indications

#define NDIS_802_11_LENGTH_SSID         32
#define NDIS_802_11_LENGTH_RATES        8
#define NDIS_802_11_LENGTH_RATES_EX     16

typedef enum _NDIS_802_11_STATUS_TYPE
{
    Ndis802_11StatusType_Authentication,
    Ndis802_11StatusTypeMax    // not a real type, defined as an upper bound
} NDIS_802_11_STATUS_TYPE, *PNDIS_802_11_STATUS_TYPE;

typedef UCHAR   NDIS_802_11_MAC_ADDRESS[6];

typedef struct _NDIS_802_11_STATUS_INDICATION
{
    NDIS_802_11_STATUS_TYPE StatusType;
} NDIS_802_11_STATUS_INDICATION, *PNDIS_802_11_STATUS_INDICATION;

// mask for authentication/integrity fields
#define NDIS_802_11_AUTH_REQUEST_AUTH_FIELDS        0x0f

#define NDIS_802_11_AUTH_REQUEST_REAUTH             0x01
#define NDIS_802_11_AUTH_REQUEST_KEYUPDATE          0x02
#define NDIS_802_11_AUTH_REQUEST_PAIRWISE_ERROR     0x06
#define NDIS_802_11_AUTH_REQUEST_GROUP_ERROR        0x0E

typedef struct _NDIS_802_11_AUTHENTICATION_REQUEST
{
    ULONG Length;            // Length of structure
    NDIS_802_11_MAC_ADDRESS Bssid;
    ULONG Flags;
} NDIS_802_11_AUTHENTICATION_REQUEST, *PNDIS_802_11_AUTHENTICATION_REQUEST;

// Added new types for OFDM 5G and 2.4G
typedef enum _NDIS_802_11_NETWORK_TYPE
{
   Ndis802_11FH, 
   Ndis802_11DS, 
    Ndis802_11OFDM5,
    Ndis802_11OFDM24,
    Ndis802_11NetworkTypeMax    // not a real type, defined as an upper bound
} NDIS_802_11_NETWORK_TYPE, *PNDIS_802_11_NETWORK_TYPE;

typedef struct _NDIS_802_11_NETWORK_TYPE_LIST
{
    ULONG                       NumberOfItems;  // in list below, at least 1
   NDIS_802_11_NETWORK_TYPE    NetworkType [1];
} NDIS_802_11_NETWORK_TYPE_LIST, *PNDIS_802_11_NETWORK_TYPE_LIST;

typedef enum _NDIS_802_11_POWER_MODE
{
   Ndis802_11PowerModeCAM,
   Ndis802_11PowerModeMAX_PSP,
   Ndis802_11PowerModeFast_PSP,
    Ndis802_11PowerModeMax      // not a real mode, defined as an upper bound
} NDIS_802_11_POWER_MODE, *PNDIS_802_11_POWER_MODE;

typedef ULONG   NDIS_802_11_TX_POWER_LEVEL; // in milliwatts

//
// Received Signal Strength Indication
//
typedef LONG    NDIS_802_11_RSSI;           // in dBm

typedef struct _NDIS_802_11_CONFIGURATION_FH
{
   ULONG           Length;            // Length of structure
   ULONG           HopPattern;        // As defined by 802.11, MSB set 
   ULONG           HopSet;            // to one if non-802.11
   ULONG           DwellTime;         // units are Kusec
} NDIS_802_11_CONFIGURATION_FH, *PNDIS_802_11_CONFIGURATION_FH;

typedef struct _NDIS_802_11_CONFIGURATION
{
   ULONG                           Length;             // Length of structure
   ULONG                           BeaconPeriod;       // units are Kusec
   ULONG                           ATIMWindow;         // units are Kusec
   ULONG                           DSConfig;           // Frequency, units are kHz
   NDIS_802_11_CONFIGURATION_FH    FHConfig;
} NDIS_802_11_CONFIGURATION, *PNDIS_802_11_CONFIGURATION;

typedef struct _NDIS_802_11_STATISTICS
{
   ULONG           Length;             // Length of structure
   LARGE_INTEGER   TransmittedFragmentCount;
   LARGE_INTEGER   MulticastTransmittedFrameCount;
   LARGE_INTEGER   FailedCount;
   LARGE_INTEGER   RetryCount;
   LARGE_INTEGER   MultipleRetryCount;
   LARGE_INTEGER   RTSSuccessCount;
   LARGE_INTEGER   RTSFailureCount;
   LARGE_INTEGER   ACKFailureCount;
   LARGE_INTEGER   FrameDuplicateCount;
   LARGE_INTEGER   ReceivedFragmentCount;
   LARGE_INTEGER   MulticastReceivedFrameCount;
   LARGE_INTEGER   FCSErrorCount;
} NDIS_802_11_STATISTICS, *PNDIS_802_11_STATISTICS;

typedef  ULONG  NDIS_802_11_KEY_INDEX;
typedef ULONGLONG   NDIS_802_11_KEY_RSC;

// Key mapping keys require a BSSID
typedef struct _NDIS_802_11_KEY
{
    ULONG           Length;             // Length of this structure
    ULONG           KeyIndex;           
    ULONG           KeyLength;          // length of key in bytes
    NDIS_802_11_MAC_ADDRESS BSSID;
    NDIS_802_11_KEY_RSC KeyRSC;
    UCHAR           KeyMaterial[64];     // variable length depending on above field
} NDIS_802_11_KEY, *PNDIS_802_11_KEY;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -