45 DWORD dwBytesReturned;
81 DWORD dwBytesReturned;
106 DWORD dwBytesReturned;
193 *IpInfo = InterfaceInfo->
Adapter[
i];
214 DWORD dwCurrentIndex;
216 for (dwCurrentIndex = 0; ; dwCurrentIndex++)
234 DWORD dwBytesReturned;
261 if ((Char >=
L'0') && (Char <=
L'9'))
264 if ((Char >=
L'a') && (Char <=
L'f'))
265 return Char -
L'a' + 10;
267 if ((Char >=
L'A') && (Char <=
L'F'))
268 return Char -
L'A' + 10;
279 DWORD dwBytesReturned;
338 printf(
"SSID: %s\n", SsidBuffer);
345 printf(
"%.2x", BssidData);
467 if (TransmitAntenna != 0xFFFFFFFF)
487 if (ReceiveAntenna != 0xFFFFFFFF)
538 DWORD dwBytesReturned, SetOidSize;
707 DWORD dwBytesReturned;
713 DWORD dwNetworkCount;
760 dwNetworkCount += 10;
793 printf(
"\nSSID: %s\n", SsidBuffer);
800 printf(
"%.2x", BssidData);
832 printf(
"%u.5 ", (Rate >> 1));
837 printf(
"%u ", (Rate >> 1));
ACPI_SIZE strlen(const char *String)
#define ConInitStdStreams()
void ConResPrintf(FILE *fp, UINT nID,...)
void ConResPuts(FILE *fp, UINT nID)
#define IDS_MSG_TRANSMIT_ANTENNA
#define IDS_MSG_FRAGMENT_THRESHOLD
#define IDS_MSG_TRANSMISSION_POWER
#define IDS_MSG_ENCRYPTED
#define IDS_MSG_ANTENNA_COUNT
#define IDS_MSG_NETWORK_MODE
#define IDS_MSG_RECEIVE_ANTENNA
#define IDS_MSG_SUPPORT_RATE
#define IDS_NO_WLAN_ADAPTER
#define IDS_INFRASTRUCTURE
#define IDS_MSG_WEP_ENABLED
#define IDS_MSG_TRANSMIT_ANTENNA_ANY
#define IDS_WLAN_DISCONNECT
#define IDS_MSG_CURRENT_WIRELESS
#define IDS_MSG_RTS_THRESHOLD
#define IDS_MSG_NETWORK_TYPE
#define IDS_MSG_RECEIVE_ANTENNA_ANY
#define ERROR_INSUFFICIENT_BUFFER
BOOL WINAPI DeviceIoControl(IN HANDLE hDevice, IN DWORD dwIoControlCode, IN LPVOID lpInBuffer OPTIONAL, IN DWORD nInBufferSize OPTIONAL, OUT LPVOID lpOutBuffer OPTIONAL, IN DWORD nOutBufferSize OPTIONAL, OUT LPDWORD lpBytesReturned OPTIONAL, IN LPOVERLAPPED lpOverlapped OPTIONAL)
#define INVALID_HANDLE_VALUE
#define HeapFree(x, y, z)
#define FILE_ATTRIBUTE_NORMAL
static NTSTATUS QueryBinding(PIRP Irp, PIO_STACK_LOCATION IrpSp)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint j
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
_CONST_RETURN wchar_t *__cdecl wcsstr(_In_z_ const wchar_t *_Str, _In_z_ const wchar_t *_SubStr)
#define RtlFillMemory(Dest, Length, Fill)
struct _IP_INTERFACE_INFO IP_INTERFACE_INFO
DWORD WINAPI IpReleaseAddress(PIP_ADAPTER_INDEX_MAP AdapterInfo)
DWORD WINAPI GetInterfaceInfo(PIP_INTERFACE_INFO pIfTable, PULONG dwOutBufLen)
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
_In_ NDIS_ERROR_CODE ErrorCode
#define OID_802_11_BSSID_LIST
struct _NDIS_802_11_BSSID_LIST * PNDIS_802_11_BSSID_LIST
@ NdisPhysicalMediumWirelessLan
struct _NDIS_WLAN_BSSID * PNDIS_WLAN_BSSID
#define OID_802_11_NUMBER_OF_ANTENNAS
@ Ndis802_11Infrastructure
#define OID_GEN_PHYSICAL_MEDIUM
#define OID_802_11_ADD_WEP
#define OID_802_11_WEP_STATUS
struct _NDIS_802_11_WEP * PNDIS_802_11_WEP
enum _NDIS_802_11_NETWORK_INFRASTRUCTURE NDIS_802_11_NETWORK_INFRASTRUCTURE
#define OID_802_11_BSSID_LIST_SCAN
@ Ndis802_11AuthModeShared
#define NDIS_802_11_LENGTH_SSID
#define OID_802_11_RX_ANTENNA_SELECTED
struct _NDIS_802_11_SSID * PNDIS_802_11_SSID
UCHAR NDIS_802_11_MAC_ADDRESS[6]
#define NDIS_802_11_LENGTH_RATES
#define OID_802_11_RTS_THRESHOLD
struct _NDIS_802_11_SSID NDIS_802_11_SSID
#define OID_802_11_FRAGMENTATION_THRESHOLD
#define OID_802_11_INFRASTRUCTURE_MODE
#define OID_802_11_TX_ANTENNA_SELECTED
#define OID_802_11_TX_POWER_LEVEL
#define OID_802_11_DISASSOCIATE
#define OID_802_11_AUTHENTICATION_MODE
struct _NDISUIO_QUERY_OID NDISUIO_QUERY_OID
#define IOCTL_NDISUIO_QUERY_OID_VALUE
#define IOCTL_NDISUIO_BIND_WAIT
struct _NDISUIO_QUERY_BINDING NDISUIO_QUERY_BINDING
#define NDISUIO_DEVICE_NAME
struct _NDISUIO_SET_OID NDISUIO_SET_OID
#define IOCTL_NDISUIO_OPEN_DEVICE
#define IOCTL_NDISUIO_QUERY_BINDING
#define IOCTL_NDISUIO_SET_OID_VALUE
INT ConMsgPuts(IN PCON_STREAM Stream, IN DWORD dwFlags, IN LPCVOID lpSource OPTIONAL, IN DWORD dwMessageId, IN DWORD dwLanguageId)
INT WINAPI K32LoadStringW(IN HINSTANCE hInstance OPTIONAL, IN UINT uID, OUT LPWSTR lpBuffer, IN INT nBufferMax)
WCHAR Name[MAX_ADAPTER_NAME]
IP_ADAPTER_INDEX_MAP Adapter[1]
UCHAR Data[sizeof(ULONG)]
UCHAR Data[sizeof(ULONG)]
UCHAR Ssid[NDIS_802_11_LENGTH_SSID]
NDIS_802_11_RATES SupportedRates
NDIS_802_11_MAC_ADDRESS MacAddress
NDIS_802_11_NETWORK_INFRASTRUCTURE InfrastructureMode
VOID WINAPI DECLSPEC_HOTPATCH Sleep(IN DWORD dwMilliseconds)
#define LANG_USER_DEFAULT
#define FIELD_OFFSET(t, f)
#define RtlCopyMemory(Destination, Source, Length)
_In_ WDFCOLLECTION _In_ ULONG Index
DWORD WINAPI GetLastError(void)
#define FORMAT_MESSAGE_FROM_SYSTEM
_In_ LPWSTR _In_ ULONG _In_ ULONG _In_ ULONG _Out_ DEVINFO _In_ HDEV _In_ LPWSTR _In_ HANDLE hDriver
static const GUID InterfaceGuid
BOOL ParseCmdline(int argc, WCHAR *argv[])
BOOL OpenWlanAdapter(HANDLE *hAdapter, IP_ADAPTER_INDEX_MAP *IpInfo)
VOID DoFormatMessage(DWORD ErrorCode)
BOOL WlanDisconnect(HANDLE hAdapter, PIP_ADAPTER_INDEX_MAP IpInfo)
BOOL OpenAdapterHandle(DWORD Index, HANDLE *hAdapter, IP_ADAPTER_INDEX_MAP *IpInfo)
BOOL WlanScan(HANDLE hAdapter)
BOOL WlanConnect(HANDLE hAdapter)
HANDLE OpenDriverHandle(VOID)
BOOL WlanPrintCurrentStatus(HANDLE hAdapter)
static UCHAR CharToHex(WCHAR Char)
BOOL IsWlanAdapter(HANDLE hAdapter)