245 lines
3.9 KiB
C
245 lines
3.9 KiB
C
|
/*++
|
||
|
|
||
|
Copyright (c) 1998, Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
rmdhcp.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
This module declares routines for the DHCP allocator module's interface
|
||
|
to the IP router-manager. (See ROUTPROT.H for details).
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Abolade Gbadegesin (aboladeg) 4-Mar-1998
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
--*/
|
||
|
|
||
|
#ifndef _NATHLP_RMDHCP_H_
|
||
|
#define _NATHLP_RMDHCP_H_
|
||
|
|
||
|
//
|
||
|
// GLOBAL DATA DECLARATIONS
|
||
|
//
|
||
|
|
||
|
extern COMPONENT_REFERENCE DhcpComponentReference;
|
||
|
extern PCHAR DhcpDomainName;
|
||
|
extern PIP_AUTO_DHCP_GLOBAL_INFO DhcpGlobalInfo;
|
||
|
extern CRITICAL_SECTION DhcpGlobalInfoLock;
|
||
|
extern HANDLE DhcpNotificationEvent;
|
||
|
extern ULONG DhcpProtocolStopped;
|
||
|
extern const MPR_ROUTING_CHARACTERISTICS DhcpRoutingCharacteristics;
|
||
|
extern IP_AUTO_DHCP_STATISTICS DhcpStatistics;
|
||
|
extern SUPPORT_FUNCTIONS DhcpSupportFunctions;
|
||
|
|
||
|
extern BOOLEAN NoLocalDns; //whether DNS server is running or going to run on local host
|
||
|
|
||
|
//
|
||
|
// MACRO DECLARATIONS
|
||
|
//
|
||
|
|
||
|
#define REFERENCE_DHCP() \
|
||
|
REFERENCE_COMPONENT(&DhcpComponentReference)
|
||
|
|
||
|
#define REFERENCE_DHCP_OR_RETURN(retcode) \
|
||
|
REFERENCE_COMPONENT_OR_RETURN(&DhcpComponentReference,retcode)
|
||
|
|
||
|
#define DEREFERENCE_DHCP() \
|
||
|
DEREFERENCE_COMPONENT(&DhcpComponentReference)
|
||
|
|
||
|
#define DEREFERENCE_DHCP_AND_RETURN(retcode) \
|
||
|
DEREFERENCE_COMPONENT_AND_RETURN(&DhcpComponentReference, retcode)
|
||
|
|
||
|
//
|
||
|
// FUNCTION DECLARATIONS
|
||
|
//
|
||
|
|
||
|
VOID
|
||
|
DhcpCleanupModule(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
BOOLEAN
|
||
|
DhcpInitializeModule(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmStartProtocol(
|
||
|
HANDLE NotificationEvent,
|
||
|
PSUPPORT_FUNCTIONS SupportFunctions,
|
||
|
PVOID GlobalInfo,
|
||
|
ULONG StructureVersion,
|
||
|
ULONG StructureSize,
|
||
|
ULONG StructureCount
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmStartComplete(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmStopProtocol(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmAddInterface(
|
||
|
PWCHAR Name,
|
||
|
ULONG Index,
|
||
|
NET_INTERFACE_TYPE Type,
|
||
|
ULONG MediaType,
|
||
|
USHORT AccessType,
|
||
|
USHORT ConnectionType,
|
||
|
PVOID InterfaceInfo,
|
||
|
ULONG StructureVersion,
|
||
|
ULONG StructureSize,
|
||
|
ULONG StructureCount
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmDeleteInterface(
|
||
|
ULONG Index
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmGetEventMessage(
|
||
|
OUT ROUTING_PROTOCOL_EVENTS* Event,
|
||
|
OUT MESSAGE* Result
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmGetInterfaceInfo(
|
||
|
ULONG Index,
|
||
|
PVOID InterfaceInfo,
|
||
|
IN OUT PULONG InterfaceInfoSize,
|
||
|
IN OUT PULONG StructureVersion,
|
||
|
IN OUT PULONG StructureSize,
|
||
|
IN OUT PULONG StructureCount
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmSetInterfaceInfo(
|
||
|
ULONG Index,
|
||
|
PVOID InterfaceInfo,
|
||
|
ULONG StructureVersion,
|
||
|
ULONG StructureSize,
|
||
|
ULONG StructureCount
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmInterfaceStatus(
|
||
|
ULONG Index,
|
||
|
BOOL InterfaceActive,
|
||
|
ULONG StatusType,
|
||
|
PVOID StatusInfo
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmBindInterface(
|
||
|
ULONG Index,
|
||
|
PVOID BindingInfo
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmUnbindInterface(
|
||
|
ULONG Index
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmEnableInterface(
|
||
|
ULONG Index
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmDisableInterface(
|
||
|
ULONG Index
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmGetGlobalInfo(
|
||
|
PVOID GlobalInfo,
|
||
|
IN OUT PULONG GlobalInfoSize,
|
||
|
PULONG StructureVersion,
|
||
|
IN OUT PULONG StructureSize,
|
||
|
IN OUT PULONG StructureCount
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmSetGlobalInfo(
|
||
|
PVOID GlobalInfo,
|
||
|
ULONG StructureVersion,
|
||
|
ULONG StructureSize,
|
||
|
ULONG StructureCount
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmMibCreate(
|
||
|
ULONG InputDataSize,
|
||
|
PVOID InputData
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmMibDelete(
|
||
|
ULONG InputDataSize,
|
||
|
PVOID InputData
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmMibGet(
|
||
|
ULONG InputDataSize,
|
||
|
PVOID InputData,
|
||
|
OUT PULONG OutputDataSize,
|
||
|
OUT PVOID OutputData
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmMibSet(
|
||
|
ULONG InputDataSize,
|
||
|
PVOID InputData
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmMibGetFirst(
|
||
|
ULONG InputDataSize,
|
||
|
PVOID InputData,
|
||
|
OUT PULONG OutputDataSize,
|
||
|
OUT PVOID OutputData
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
APIENTRY
|
||
|
DhcpRmMibGetNext(
|
||
|
ULONG InputDataSize,
|
||
|
PVOID InputData,
|
||
|
OUT PULONG OutputDataSize,
|
||
|
OUT PVOID OutputData
|
||
|
);
|
||
|
|
||
|
#endif // _NATHLP_RMDNS_H_
|