88 lines
1.9 KiB
C
88 lines
1.9 KiB
C
#pragma once
|
|
|
|
// size of the buffer to use when querying an interface
|
|
// binding from NDIS (IOCTL_NDISUIO_QUERY_BINDING)
|
|
#define QUERY_BUFFER_SIZE 1024
|
|
#define QUERY_BUFFER_MAX 65536 // 64K should be more than enough for an interface binding structure
|
|
|
|
DWORD
|
|
DevioGetNdisuioHandle(
|
|
PHANDLE pHandle);
|
|
|
|
DWORD
|
|
DevioCheckNdisBinding(
|
|
PNDISUIO_QUERY_BINDING pndBinding,
|
|
ULONG nBindingLen);
|
|
|
|
DWORD
|
|
DevioGetIntfBindingByIndex(
|
|
HANDLE hNdisuio, // IN opened handle to NDISUIO. If INVALID_HANDLE_VALUE, open one locally
|
|
UINT nIntfIndex, // IN interface index to look for
|
|
PRAW_DATA prdOutput); // OUT result of the IOCTL
|
|
|
|
DWORD
|
|
DevioGetInterfaceBindingByGuid(
|
|
HANDLE hNdisuio, // IN opened handle to NDISUIO. If INVALID_HANDLE_VALUE, open one locally
|
|
LPWSTR wszGuid, // IN interface GUID as "{guid}"
|
|
PRAW_DATA prdOutput); // OUT result of the IOCTL
|
|
|
|
DWORD
|
|
DevioGetIntfStats(
|
|
PINTF_CONTEXT pIntf);
|
|
|
|
DWORD
|
|
DevioGetIntfMac(
|
|
PINTF_CONTEXT pIntf);
|
|
|
|
DWORD
|
|
DevioNotifyFailure(
|
|
LPWSTR wszIntfGuid);
|
|
|
|
DWORD
|
|
DevioOpenIntfHandle(
|
|
LPWSTR wszIntfGuid,
|
|
PHANDLE phIntf);
|
|
|
|
DWORD
|
|
DevioCloseIntfHandle(
|
|
PINTF_CONTEXT pIntf);
|
|
|
|
DWORD
|
|
DevioSetIntfOIDs(
|
|
PINTF_CONTEXT pIntfContext,
|
|
PINTF_ENTRY pIntfEntry,
|
|
DWORD dwInFlags,
|
|
PDWORD pdwOutFlags);
|
|
|
|
DWORD
|
|
DevioRefreshIntfOIDs(
|
|
PINTF_CONTEXT pIntf,
|
|
DWORD dwInFlags,
|
|
PDWORD pdwOutFlags);
|
|
|
|
DWORD
|
|
DevioQueryEnumOID(
|
|
HANDLE hIntf,
|
|
NDIS_OID Oid,
|
|
DWORD *pdwEnumValue);
|
|
|
|
DWORD
|
|
DevioSetEnumOID(
|
|
HANDLE hIntf,
|
|
NDIS_OID Oid,
|
|
DWORD dwEnumValue);
|
|
|
|
DWORD
|
|
DevioQueryBinaryOID(
|
|
HANDLE hIntf,
|
|
NDIS_OID Oid,
|
|
PRAW_DATA pRawData,
|
|
DWORD dwMemEstimate);
|
|
|
|
|
|
DWORD
|
|
DevioSetBinaryOID(
|
|
HANDLE hIntf,
|
|
NDIS_OID Oid,
|
|
PRAW_DATA pRawData);
|