File:  [WindowsNT SDKs] / q_a / samples / ddk / detect / detect.h
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Thu Aug 9 18:30:32 2018 UTC (7 years, 9 months ago) by root
Branches: msft, MAIN
CVS tags: ntsdk-nov-1993, HEAD
Microsoft Windows NT Build 511 (DDK SDK) 11-01-1993

/*++

Copyright (c) 1990  Microsoft Corporation

Module Name:

    detect.h

Abstract:

    The internal header for the MsNetDetect DLL.

Environment:

    This is expected to work in DOS, OS2 and NT at the equivalent
    of user mode.

Notes:

Revision History:


--*/

#ifndef _NET_DETECT_
#define _NET_DETECT_

//
// The compiler has a bug which does not handle the \0 character in a unicode
// string correctly.  This flag implements a workaround for the bug.
//
#define WORKAROUND 1

//
//  Private memory allocation routines
//

PVOID
DetectAllocateHeap(
    IN ULONG Size
    );

VOID
DetectFreeHeap(
    IN PVOID BaseAddress
    );


//
// This action routine is called when a handling a NcDetectIdentify.
//
typedef
LONG
(*NC_DETECT_IDENTIFY)(
    IN LONG Index,
    IN WCHAR * Buffer,
    IN LONG BuffSize
    );

//
// This action routine is called when a handling a NcDetectFirstNext.
//
typedef
LONG
(*NC_DETECT_FIRST_NEXT)(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *pvToken,
    OUT LONG *Confidence
    );

//
// This action routine is called when a handling a NcDetectOpenHandle.
//
typedef
LONG
(*NC_DETECT_OPEN_HANDLE)(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

//
// This action routine is called when a handling a NcDetectCreateHandle.
//
typedef
LONG
(*NC_DETECT_CREATE_HANDLE)(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

//
// This action routine is called when a handling a NcDetectCloseHandle.
//
typedef
LONG
(*NC_DETECT_CLOSE_HANDLE)(
    IN PVOID Handle
    );

//
// This action routine is called when a handling a NcDetectQueryCfg.
//
typedef
LONG
(*NC_DETECT_QUERY_CFG)(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

//
// This action routine is called when a handling a NcDetectVerifyCfg.
//
typedef
LONG
(*NC_DETECT_VERIFY_CFG)(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

//
// This action routine is called when a handling a NcDetectQueryMask.
//
typedef
LONG
(*NC_DETECT_QUERY_MASK)(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

//
// This action routine is called when a handling a NcDetectParamRange.
//
typedef
LONG
(*NC_DETECT_PARAM_RANGE)(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *Values,
    OUT LONG *BuffSize
    );

//
// This action routine is called when a handling a NcDetectQueryParameterName.
//
typedef
LONG
(*NC_DETECT_QUERY_PARAMETER_NAME)(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG  BufferSize
    );

//
// Main structure
//
// This structure holds all the information necessary for a single
// adapters detection.  It holds the adapter names recognized and the
// handling routines for the adapters.
//

typedef struct _DETECT_ADAPTER {

    //
    // Routines for handling requests
    //

    NC_DETECT_IDENTIFY NcDetectIdentifyHandler;
    NC_DETECT_FIRST_NEXT NcDetectFirstNextHandler;
    NC_DETECT_OPEN_HANDLE NcDetectOpenHandleHandler;
    NC_DETECT_CREATE_HANDLE NcDetectCreateHandleHandler;
    NC_DETECT_CLOSE_HANDLE NcDetectCloseHandleHandler;
    NC_DETECT_QUERY_CFG NcDetectQueryCfgHandler;
    NC_DETECT_VERIFY_CFG NcDetectVerifyCfgHandler;
    NC_DETECT_QUERY_MASK NcDetectQueryMaskHandler;
    NC_DETECT_PARAM_RANGE NcDetectParamRangeHandler;
    NC_DETECT_QUERY_PARAMETER_NAME NcDetectQueryParameterNameHandler;

    LONG SupportedAdapters;

} DETECT_ADAPTER, *PDETECT_ADAPTER;

//
//  Extracts the DLL structure from the handle.
//
#define PDETECT_ADAPTER_FROM_HANDLE(Handle) ((PDETECT_ADAPTER)(Handle))

//
//  Makes a handle from the DLL's structure.
//
#define HANDLE_FROM_PDETECT_ADAPTER(Adapter) ((PVOID)(Adapter))


//
// Helpful defines
//

//
// Constant strings for parameters
//


extern WCHAR IrqString[];
extern WCHAR IrqTypeString[];
extern WCHAR IoAddrString[];
extern WCHAR IoLengthString[];
extern WCHAR MemAddrString[];
extern WCHAR MemLengthString[];
extern WCHAR TransceiverString[];
extern WCHAR ZeroWaitStateString[];
extern WCHAR SlotNumberString[];


//
// This is the routine for copying information to a card which contains
// an 8390 (or compatible) NIC.
//
typedef
VOID
(*COPY_ROUTINE)(
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN ULONG IoBaseAddress,
    IN ULONG MemoryBaseAddress,
    IN PUCHAR Buffer,
    IN ULONG Length
    );


//
// Helpful functions
//

ULONG
UnicodeStrLen(
    IN WCHAR *String
    );

WCHAR *
FindParameterString(
    IN WCHAR *String1,
    IN WCHAR *String2
    );

VOID
ScanForNumber(
    IN WCHAR *Place,
    OUT ULONG *Value,
    OUT BOOLEAN *Found
    );

BOOLEAN
CheckFor8390(
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN ULONG IoBaseAddress
    );

VOID
Send8390Packet(
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN ULONG IoBaseAddress,
    IN ULONG MemoryBaseAddress,
    IN COPY_ROUTINE CardCopyDownBuffer,
    IN UCHAR *NetworkAddress
    );

BOOLEAN
GetMcaKey(
    IN  ULONG BusNumber,
    OUT PVOID *BusHandle
    );

BOOLEAN
GetMcaPosId(
    IN  PVOID BusHandle,
    IN  ULONG SlotNumber,
    OUT PULONG PosId
    );

VOID
DeleteMcaKey(
    IN PVOID BusHandle
    );

BOOLEAN
GetEisaKey(
    IN  ULONG BusNumber,
    OUT PVOID *BusHandle
    );

BOOLEAN
GetEisaCompressedId(
    IN  PVOID BusHandle,
    IN  ULONG SlotNumber,
    OUT PULONG CompressedId
    );

VOID
DeleteEisaKey(
    IN PVOID BusHandle
    );

//
// Structure for the individual drivers for holding card info
//

typedef struct _ADAPTER_INFO {

    LONG Index;
    PWCHAR InfId;
    PWCHAR Parameters;
    NC_DETECT_FIRST_NEXT FirstNext;
    ULONG SearchOrder;

}ADAPTER_INFO, *PADAPTER_INFO;

//
// Structure for holding handles in the NcDetect routines
//

typedef struct _ADAPTER_HANDLE {

    PVOID Handle;
    LONG DriverNumber;

} ADAPTER_HANDLE, *PADAPTER_HANDLE;

//
// Non-network detection routines
//

extern
VOID
SoundBlaster(
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber
    );


//
// Lance Detection routines
//

extern LONG LanceIdentifyHandler(
    IN LONG Index,
    IN WCHAR *Buffer,
    IN LONG BuffSize
    );

extern LONG LanceFirstNextHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *Token,
    OUT LONG *Confidence
    );

extern LONG LanceOpenHandleHandler(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

extern LONG LanceCreateHandleHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

extern LONG LanceCloseHandleHandler(
    IN PVOID Handle
    );

extern LONG LanceQueryCfgHandler(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG LanceVerifyCfgHandler(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

extern LONG LanceQueryMaskHandler(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG LanceParamRangeHandler(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *plValues,
    OUT LONG *plBuffSize
    );

extern LONG LanceQueryParameterNameHandler(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG BufferSize
    );



//
// Ibmtok Detection routines
//

extern LONG IbmtokIdentifyHandler(
    IN LONG Index,
    IN WCHAR *Buffer,
    IN LONG BuffSize
    );

extern LONG IbmtokFirstNextHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *Token,
    OUT LONG *Confidence
    );

extern LONG IbmtokOpenHandleHandler(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

extern LONG IbmtokCreateHandleHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

extern LONG IbmtokCloseHandleHandler(
    IN PVOID Handle
    );

extern LONG IbmtokQueryCfgHandler(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG IbmtokVerifyCfgHandler(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

extern LONG IbmtokQueryMaskHandler(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG IbmtokParamRangeHandler(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *plValues,
    OUT LONG *plBuffSize
    );

extern LONG IbmtokQueryParameterNameHandler(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG BufferSize
    );


//
// Wd Detection routines
//

extern LONG WdIdentifyHandler(
    IN LONG Index,
    IN WCHAR *Buffer,
    IN LONG BuffSize
    );

extern LONG WdFirstNextHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *Token,
    OUT LONG *Confidence
    );

extern LONG WdOpenHandleHandler(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

extern LONG WdCreateHandleHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

extern LONG WdCloseHandleHandler(
    IN PVOID Handle
    );

extern LONG WdQueryCfgHandler(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG WdVerifyCfgHandler(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

extern LONG WdQueryMaskHandler(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG WdParamRangeHandler(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *plValues,
    OUT LONG *plBuffSize
    );

extern LONG WdQueryParameterNameHandler(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG BufferSize
    );

//
// Elnkii Detection routines
//

extern LONG ElnkiiIdentifyHandler(
    IN LONG Index,
    IN WCHAR *Buffer,
    IN LONG BuffSize
    );

extern LONG ElnkiiFirstNextHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *Token,
    OUT LONG *Confidence
    );

extern LONG ElnkiiOpenHandleHandler(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

extern LONG ElnkiiCreateHandleHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

extern LONG ElnkiiCloseHandleHandler(
    IN PVOID Handle
    );

extern LONG ElnkiiQueryCfgHandler(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG ElnkiiVerifyCfgHandler(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

extern LONG ElnkiiQueryMaskHandler(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG ElnkiiParamRangeHandler(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *plValues,
    OUT LONG *plBuffSize
    );

extern LONG ElnkiiQueryParameterNameHandler(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG BufferSize
    );


//
// Ne2000 Detection routines
//

extern LONG Ne2000IdentifyHandler(
    IN LONG Index,
    IN WCHAR *Buffer,
    IN LONG BuffSize
    );

extern LONG Ne2000FirstNextHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *Token,
    OUT LONG *Confidence
    );

extern LONG Ne2000OpenHandleHandler(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

extern LONG Ne2000CreateHandleHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

extern LONG Ne2000CloseHandleHandler(
    IN PVOID Handle
    );

extern LONG Ne2000QueryCfgHandler(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG Ne2000VerifyCfgHandler(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

extern LONG Ne2000QueryMaskHandler(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG Ne2000ParamRangeHandler(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *plValues,
    OUT LONG *plBuffSize
    );

extern LONG Ne2000QueryParameterNameHandler(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG BufferSize
    );


//
// Mca Detection routines
//

extern LONG McaIdentifyHandler(
    IN LONG Index,
    IN WCHAR *Buffer,
    IN LONG BuffSize
    );

extern LONG McaFirstNextHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *Token,
    OUT LONG *Confidence
    );

extern LONG McaOpenHandleHandler(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

extern LONG McaCreateHandleHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

extern LONG McaCloseHandleHandler(
    IN PVOID Handle
    );

extern LONG McaQueryCfgHandler(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG McaVerifyCfgHandler(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

extern LONG McaQueryMaskHandler(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG McaParamRangeHandler(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *plValues,
    OUT LONG *plBuffSize
    );

extern LONG McaQueryParameterNameHandler(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG BufferSize
    );

//
// Eisa Detection routines
//

extern LONG EisaIdentifyHandler(
    IN LONG Index,
    IN WCHAR *Buffer,
    IN LONG BuffSize
    );

extern LONG EisaFirstNextHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *Token,
    OUT LONG *Confidence
    );

extern LONG EisaOpenHandleHandler(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

extern LONG EisaCreateHandleHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

extern LONG EisaCloseHandleHandler(
    IN PVOID Handle
    );

extern LONG EisaQueryCfgHandler(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG EisaVerifyCfgHandler(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

extern LONG EisaQueryMaskHandler(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG EisaParamRangeHandler(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *plValues,
    OUT LONG *plBuffSize
    );

extern LONG EisaQueryParameterNameHandler(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG BufferSize
    );

//
// UB Detection routines
//

extern LONG UbIdentifyHandler(
    IN LONG Index,
    IN WCHAR *Buffer,
    IN LONG BuffSize
    );

extern LONG UbFirstNextHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *Token,
    OUT LONG *Confidence
    );

extern LONG UbOpenHandleHandler(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

extern LONG UbCreateHandleHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

extern LONG UbCloseHandleHandler(
    IN PVOID Handle
    );

extern LONG UbQueryCfgHandler(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG UbVerifyCfgHandler(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

extern LONG UbQueryMaskHandler(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG UbParamRangeHandler(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *plValues,
    OUT LONG *plBuffSize
    );

extern LONG UbQueryParameterNameHandler(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG BufferSize
    );

//
// Proteon Detection routines
//

extern LONG ProteonIdentifyHandler(
    IN LONG Index,
    IN WCHAR *Buffer,
    IN LONG BuffSize
    );

extern LONG ProteonFirstNextHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *Token,
    OUT LONG *Confidence
    );

extern LONG ProteonOpenHandleHandler(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

extern LONG ProteonCreateHandleHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

extern LONG ProteonCloseHandleHandler(
    IN PVOID Handle
    );

extern LONG ProteonQueryCfgHandler(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG ProteonVerifyCfgHandler(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

extern LONG ProteonQueryMaskHandler(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG ProteonParamRangeHandler(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *plValues,
    OUT LONG *plBuffSize
    );

extern LONG ProteonQueryParameterNameHandler(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG BufferSize
    );

//
// Elnk16 Detection routines
//

extern LONG Elnk16IdentifyHandler(
    IN LONG Index,
    IN WCHAR *Buffer,
    IN LONG BuffSize
    );

extern LONG Elnk16FirstNextHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *Token,
    OUT LONG *Confidence
    );

extern LONG Elnk16OpenHandleHandler(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

extern LONG Elnk16CreateHandleHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

extern LONG Elnk16CloseHandleHandler(
    IN PVOID Handle
    );

extern LONG Elnk16QueryCfgHandler(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG Elnk16VerifyCfgHandler(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

extern LONG Elnk16QueryMaskHandler(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG Elnk16ParamRangeHandler(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *plValues,
    OUT LONG *plBuffSize
    );

extern LONG Elnk16QueryParameterNameHandler(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG BufferSize
    );


//
// Ee16 Detection routines
//

extern LONG Ee16IdentifyHandler(
    IN LONG Index,
    IN WCHAR *Buffer,
    IN LONG BuffSize
    );

extern LONG Ee16FirstNextHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *Token,
    OUT LONG *Confidence
    );

extern LONG Ee16OpenHandleHandler(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

extern LONG Ee16CreateHandleHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

extern LONG Ee16CloseHandleHandler(
    IN PVOID Handle
    );

extern LONG Ee16QueryCfgHandler(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG Ee16VerifyCfgHandler(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

extern LONG Ee16QueryMaskHandler(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG Ee16ParamRangeHandler(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *plValues,
    OUT LONG *plBuffSize
    );

extern LONG Ee16QueryParameterNameHandler(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG BufferSize
    );


//
// Mips Detection routines
//

extern LONG MipsIdentifyHandler(
    IN LONG Index,
    IN WCHAR *Buffer,
    IN LONG BuffSize
    );

extern LONG MipsFirstNextHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    IN  BOOL First,
    OUT PVOID *Token,
    OUT LONG *Confidence
    );

extern LONG MipsOpenHandleHandler(
    IN  PVOID Token,
    OUT PVOID *Handle
    );

extern LONG MipsCreateHandleHandler(
    IN  LONG NetcardId,
    IN INTERFACE_TYPE InterfaceType,
    IN ULONG BusNumber,
    OUT PVOID *Handle
    );

extern LONG MipsCloseHandleHandler(
    IN PVOID Handle
    );

extern LONG MipsQueryCfgHandler(
    IN  PVOID Handle,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG MipsVerifyCfgHandler(
    IN PVOID Handle,
    IN WCHAR *Buffer
    );

extern LONG MipsQueryMaskHandler(
    IN  LONG NetcardId,
    OUT WCHAR *Buffer,
    IN  LONG BuffSize
    );

extern LONG MipsParamRangeHandler(
    IN  LONG NetcardId,
    IN  WCHAR *Param,
    OUT LONG *plValues,
    OUT LONG *plBuffSize
    );

extern LONG MipsQueryParameterNameHandler(
    IN  WCHAR *Param,
    OUT WCHAR *Buffer,
    IN  LONG BufferSize
    );

#endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.