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.

240 lines
4.0 KiB

  1. /*++
  2. Copyright (c) 1998, Microsoft Corporation
  3. Module Name:
  4. rmh323.h
  5. Abstract:
  6. This module declares routines for the H.323 transparent proxy module's
  7. interface to the IP router-manager. (See ROUTPROT.H for details).
  8. Author:
  9. Abolade Gbadegesin (aboladeg) 18-Jun-1999
  10. Revision History:
  11. --*/
  12. #ifndef _NATHLP_RMH323_H_
  13. #define _NATHLP_RMH323_H_
  14. //
  15. // GLOBAL DATA DECLARATIONS
  16. //
  17. extern COMPONENT_REFERENCE H323ComponentReference;
  18. extern PIP_H323_GLOBAL_INFO H323GlobalInfo;
  19. extern CRITICAL_SECTION H323GlobalInfoLock;
  20. extern HANDLE H323NotificationEvent;
  21. extern ULONG H323ProtocolStopped;
  22. extern const MPR_ROUTING_CHARACTERISTICS H323RoutingCharacteristics;
  23. extern SUPPORT_FUNCTIONS H323SupportFunctions;
  24. //
  25. // MACRO DECLARATIONS
  26. //
  27. #define REFERENCE_H323() \
  28. REFERENCE_COMPONENT(&H323ComponentReference)
  29. #define REFERENCE_H323_OR_RETURN(retcode) \
  30. REFERENCE_COMPONENT_OR_RETURN(&H323ComponentReference,retcode)
  31. #define DEREFERENCE_H323() \
  32. DEREFERENCE_COMPONENT(&H323ComponentReference)
  33. #define DEREFERENCE_H323_AND_RETURN(retcode) \
  34. DEREFERENCE_COMPONENT_AND_RETURN(&H323ComponentReference, retcode)
  35. //
  36. // FUNCTION DECLARATIONS
  37. //
  38. VOID
  39. H323CleanupModule(
  40. VOID
  41. );
  42. BOOLEAN
  43. H323InitializeModule(
  44. VOID
  45. );
  46. ULONG
  47. APIENTRY
  48. H323RmStartProtocol(
  49. HANDLE NotificationEvent,
  50. PSUPPORT_FUNCTIONS SupportFunctions,
  51. PVOID GlobalInfo,
  52. ULONG StructureVersion,
  53. ULONG StructureSize,
  54. ULONG StructureCount
  55. );
  56. ULONG
  57. APIENTRY
  58. H323RmStartComplete(
  59. VOID
  60. );
  61. ULONG
  62. APIENTRY
  63. H323RmStopProtocol(
  64. VOID
  65. );
  66. ULONG
  67. APIENTRY
  68. H323RmAddInterface(
  69. PWCHAR Name,
  70. ULONG Index,
  71. NET_INTERFACE_TYPE Type,
  72. ULONG MediaType,
  73. USHORT AccessType,
  74. USHORT ConnectionType,
  75. PVOID InterfaceInfo,
  76. ULONG StructureVersion,
  77. ULONG StructureSize,
  78. ULONG StructureCount
  79. );
  80. ULONG
  81. APIENTRY
  82. H323RmDeleteInterface(
  83. ULONG Index
  84. );
  85. ULONG
  86. APIENTRY
  87. H323RmGetEventMessage(
  88. OUT ROUTING_PROTOCOL_EVENTS* Event,
  89. OUT MESSAGE* Result
  90. );
  91. ULONG
  92. APIENTRY
  93. H323RmGetInterfaceInfo(
  94. ULONG Index,
  95. PVOID InterfaceInfo,
  96. IN OUT PULONG InterfaceInfoSize,
  97. IN OUT PULONG StructureVersion,
  98. IN OUT PULONG StructureSize,
  99. IN OUT PULONG StructureCount
  100. );
  101. ULONG
  102. APIENTRY
  103. H323RmSetInterfaceInfo(
  104. ULONG Index,
  105. PVOID InterfaceInfo,
  106. ULONG StructureVersion,
  107. ULONG StructureSize,
  108. ULONG StructureCount
  109. );
  110. ULONG
  111. APIENTRY
  112. H323RmInterfaceStatus(
  113. ULONG Index,
  114. BOOL InterfaceActive,
  115. ULONG StatusType,
  116. PVOID StatusInfo
  117. );
  118. ULONG
  119. APIENTRY
  120. H323RmBindInterface(
  121. ULONG Index,
  122. PVOID BindingInfo
  123. );
  124. ULONG
  125. APIENTRY
  126. H323RmUnbindInterface(
  127. ULONG Index
  128. );
  129. ULONG
  130. APIENTRY
  131. H323RmEnableInterface(
  132. ULONG Index
  133. );
  134. ULONG
  135. APIENTRY
  136. H323RmDisableInterface(
  137. ULONG Index
  138. );
  139. ULONG
  140. APIENTRY
  141. H323RmGetGlobalInfo(
  142. PVOID GlobalInfo,
  143. IN OUT PULONG GlobalInfoSize,
  144. IN OUT PULONG StructureVersion,
  145. IN OUT PULONG StructureSize,
  146. IN OUT PULONG StructureCount
  147. );
  148. ULONG
  149. APIENTRY
  150. H323RmSetGlobalInfo(
  151. PVOID GlobalInfo,
  152. ULONG StructureVersion,
  153. ULONG StructureSize,
  154. ULONG StructureCount
  155. );
  156. ULONG
  157. APIENTRY
  158. H323RmMibCreate(
  159. ULONG InputDataSize,
  160. PVOID InputData
  161. );
  162. ULONG
  163. APIENTRY
  164. H323RmMibDelete(
  165. ULONG InputDataSize,
  166. PVOID InputData
  167. );
  168. ULONG
  169. APIENTRY
  170. H323RmMibGet(
  171. ULONG InputDataSize,
  172. PVOID InputData,
  173. OUT PULONG OutputDataSize,
  174. OUT PVOID OutputData
  175. );
  176. ULONG
  177. APIENTRY
  178. H323RmMibSet(
  179. ULONG InputDataSize,
  180. PVOID InputData
  181. );
  182. ULONG
  183. APIENTRY
  184. H323RmMibGetFirst(
  185. ULONG InputDataSize,
  186. PVOID InputData,
  187. OUT PULONG OutputDataSize,
  188. OUT PVOID OutputData
  189. );
  190. ULONG
  191. APIENTRY
  192. H323RmMibGetNext(
  193. ULONG InputDataSize,
  194. PVOID InputData,
  195. OUT PULONG OutputDataSize,
  196. OUT PVOID OutputData
  197. );
  198. #endif // _NATHLP_RMH323_H_