Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

227 lines
4.0 KiB

/*++
Copyright (c) 1995-1997 Microsoft Corporation
Module Name:
clusrtl.h
Abstract:
Header file for definitions and structures for the NT Cluster
Run Time Library
Author:
John Vert (jvert) 30-Nov-1995
Revision History:
--*/
#ifndef _CLNETCFG_INCLUDED_
#define _CLNETCFG_INCLUDED_
#ifdef __cplusplus
extern "C" {
#endif
typedef struct {
LIST_ENTRY Linkage;
LPWSTR Id;
LPWSTR Name;
LPWSTR Address;
LPWSTR AddressMask;
} CLNET_NETWORK, *PCLNET_NETWORK;
typedef struct {
LIST_ENTRY Linkage;
LPWSTR Id;
LPWSTR Name;
LPWSTR NodeId;
LPWSTR NetworkId;
LPWSTR Adapter;
LPWSTR Address;
} CLNET_INTERFACE, *PCLNET_INTERFACE;
PCLNET_NETWORK
ClNetAllocNetwork(
LPWSTR Id,
LPWSTR Name,
LPWSTR Address,
LPWSTR AddressMask
);
VOID
ClNetFreeNetwork(
PCLNET_NETWORK Network
);
PCLNET_INTERFACE
ClNetAllocInterface(
LPWSTR Id,
LPWSTR Name,
LPWSTR NodeId,
LPWSTR NetworkId,
LPWSTR Adapter,
LPWSTR Address
);
VOID
ClNetFreeInterface(
PCLNET_INTERFACE Interface
);
/////////////////////////////////////////////////////////////////////////
//
// Routines exported by the ClNet package
//
LPWSTR
ClNetLoadString(
IN UINT StringId
);
LPWSTR
ClNetMakeInterfaceName(
LPWSTR Prefix, OPTIONAL
LPWSTR NodeName,
LPWSTR AdapterName
);
LPWSTR
ClNetMakeNewNetworkName(
IN LPWSTR NewNetworkName,
IN LPWSTR InterfaceName
);
DWORD
ClNetConfigureNetworks(
IN RPC_BINDING_HANDLE JoinSponsorBinding,
IN LPWSTR LocalNodeId,
IN LPWSTR LocalNodeName,
IN PNM_NETWORK_ENUM NetworkEnum,
IN PNM_INTERFACE_ENUM InterfaceEnum,
IN LPWSTR DefaultEndpoint,
IN LPWSTR NewNetworkNameString,
OUT LPDWORD MatchedNetworkCount,
OUT LPDWORD NewNetworkCount
);
VOID
ClNetFreeNetworkEnum(
IN PNM_NETWORK_ENUM NetworkEnum
);
VOID
ClNetFreeNetworkInfo(
IN PNM_NETWORK_INFO NetworkInfo
);
VOID
ClNetFreeInterfaceEnum(
IN PNM_INTERFACE_ENUM InterfaceEnum
);
VOID
ClNetFreeInterfaceInfo(
IN PNM_INTERFACE_INFO InterfaceInfo
);
VOID
ClNetFreeNodeEnum(
IN PNM_NODE_ENUM NodeEnum
);
VOID
ClNetFreeNodeEnum2(
IN PNM_NODE_ENUM2 NodeEnum2
);
VOID
ClNetFreeNodeInfo(
IN PNM_NODE_INFO NodeInfo
);
//
// Routines that must be supplied by users of the ClNet package.
//
VOID
ClNetPrint(
IN ULONG LogLevel,
IN PCHAR FormatString,
...
);
VOID
ClNetLogEvent(
IN DWORD LogLevel,
IN DWORD MessageId
);
VOID
ClNetLogEvent1(
IN DWORD LogLevel,
IN DWORD MessageId,
IN LPCWSTR Arg1
);
VOID
ClNetLogEvent2(
IN DWORD LogLevel,
IN DWORD MessageId,
IN LPCWSTR Arg1,
IN LPCWSTR Arg2
);
VOID
ClNetLogEvent3(
IN DWORD LogLevel,
IN DWORD MessageId,
IN LPCWSTR Arg1,
IN LPCWSTR Arg2,
IN LPCWSTR Arg3
);
DWORD
ClNetCreateNetworkDefinition(
IN RPC_BINDING_HANDLE JoinSponsorBinding,
IN PNM_NETWORK_INFO NetworkInfo,
IN PNM_INTERFACE_INFO InterfaceInfo
);
DWORD
ClNetCreateInterfaceDefinition(
IN RPC_BINDING_HANDLE JoinSponsorBinding,
IN PNM_INTERFACE_INFO InterfaceInfo
);
DWORD
ClNetSetInterfaceDefinition(
IN RPC_BINDING_HANDLE JoinSponsorBinding,
IN PNM_INTERFACE_INFO InterfaceInfo
);
DWORD
ClNetDeleteInterfaceDefinition(
IN RPC_BINDING_HANDLE JoinSponsorBinding,
IN LPWSTR InterfaceId,
IN LPWSTR NetworkId,
OUT PBOOLEAN NetworkDeleted
);
#ifdef __cplusplus
}
#endif
#endif // ifndef _CLNETCFG_INCLUDED_