|
|
/*++
Copyright (c) 1998-1999 Microsoft Corporation
Module Name:
ipxmontr.h
Abstract: This file contains definitions which are needed by IPXMONTR.DLL and all NetSh helper DLLs which register under it.
--*/
#ifndef _IPXMONTR_H_
#define _IPXMONTR_H_
#if _MSC_VER > 1000
#pragma once
#endif
#ifdef __cplusplus
extern "C" { #endif
// {b1641451-84b8-11d2-b940-3078302c2030}
#define IPXMONTR_GUID \
{ \ 0xb1641451, 0x84b8, 0x11d2, \ { \ 0xb9, 0x40, 0x30, 0x78, 0x30, 0x2c, 0x20, 0x30 \ } \ }
#define IPXMON_VERSION_50 0x0005000
//
// API prototypes and structures used by them
//
typedef DWORD (WINAPI IPX_CONTEXT_ENTRY_FN)( IN PWCHAR pwszMachine, IN PWCHAR *ppwcArguments, IN DWORD dwArgCount, IN DWORD dwFlags, IN MIB_SERVER_HANDLE hMIBServer, OUT PWCHAR pwcNewContext );
typedef IPX_CONTEXT_ENTRY_FN *PIPX_CONTEXT_ENTRY_FN;
typedef struct _PROTO_STRING { DWORD dwProtoId; DWORD dwTokenId; }PROTO_STRING, *PPROTO_STRING;
typedef DWORD (WINAPI *PIM_DEL_INFO_BLK_IF)( IN PWCHAR pwszIfName, IN DWORD dwType );
typedef DWORD (WINAPI *PIM_DEL_INFO_BLK_GLOBAL)( IN DWORD dwType );
typedef DWORD (WINAPI *PIM_DEL_PROTO)( IN DWORD dwProtoId );
typedef DWORD (WINAPI *PIM_GET_INFO_BLK_GLOBAL)( IN DWORD dwType, OUT BYTE **ppbInfoBlk, OUT PDWORD pdwSize, OUT PDWORD pdwCount );
typedef DWORD (WINAPI *PIM_GET_INFO_BLK_IF)( IN PWCHAR pwszIfName, IN DWORD dwType, OUT BYTE **ppbInfoBlk, OUT PDWORD pdwSize, OUT PDWORD pdwCount, OUT PDWORD pdwIfType );
typedef DWORD (WINAPI *PIM_SET_INFO_BLK_GLOBAL)( IN DWORD dwType, IN PBYTE pbInfoBlk, IN DWORD dwSize, IN DWORD dwCount );
typedef DWORD (WINAPI *PIM_SET_INFO_BLK_IF)( IN PWCHAR pwszIfName, IN DWORD dwType, IN PBYTE pbInfoBlk, IN DWORD dwSize, IN DWORD dwCount );
typedef DWORD (WINAPI *PIM_IF_ENUM)( OUT BYTE **ppb, OUT PDWORD pdwCount, OUT PDWORD pdwTotal );
typedef DWORD (WINAPI *PIM_PROTO_LIST)( OUT PPROTO_STRING *ppps, OUT PDWORD pdwNumProto );
typedef BOOL (WINAPI *PIM_ROUTER_STATUS)( VOID );
typedef DWORD (WINAPI *PIM_GET_IF_TYPE)( IN PWCHAR pwszIfName, OUT PDWORD pdwIfType );
typedef DWORD (WINAPI *PIM_MATCH_ROUT_PROTO)( IN PWCHAR pwszToken );
NS_DISPLAY_PARENT_HELP DisplayIpxHelp;
typedef struct _IPX_CONTEXT_ATTRIBUTES { #ifdef __cplusplus
NS_BASE_CONTEXT_ATTRIBUTES bca; #else
NS_BASE_CONTEXT_ATTRIBUTES; #endif
PIPX_CONTEXT_ENTRY_FN pfnEntryFn; PVOID pfnCommitFn; // UNUSED
PNS_CONTEXT_DUMP_FN pfnDumpFn; PVOID pfnConnectFn; // UNUSED
PVOID pfnSubEntryFn; // UNUSED
PVOID pfnHelpFn; // UNUSED
}IPX_CONTEXT_ATTRIBUTES, *PIPX_CONTEXT_ATTRIBUTES;
typedef DWORD (WINAPI *PIPX_REGISTER_CONTEXT)( IN PIPX_CONTEXT_ATTRIBUTES pAttributes );
#ifdef __cplusplus
} #endif
#endif // _IPXMONTR_H_
|