Source code of Windows XP (NT5)
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.

313 lines
5.5 KiB

  1. /********************************************************************/
  2. /** Copyright(c) 1995 Microsoft Corporation. **/
  3. /********************************************************************/
  4. //***
  5. //
  6. // Filename: objects.h
  7. //
  8. // Description: Prototypes for all routines and procedures that manipulate
  9. // the various objects.
  10. //
  11. // History: May 11,1995 NarenG Created original version.
  12. //
  13. //
  14. // Conneciton object prototypes
  15. //
  16. CONNECTION_OBJECT *
  17. ConnObjAllocateAndInit(
  18. IN HANDLE hDDMInterface,
  19. IN HCONN hConnection
  20. );
  21. VOID
  22. ConnObjInsertInTable(
  23. IN CONNECTION_OBJECT * pConnObj
  24. );
  25. CONNECTION_OBJECT *
  26. ConnObjGetPointer(
  27. IN HCONN hConnection
  28. );
  29. DWORD
  30. ConnObjHashConnHandleToBucket(
  31. IN HCONN hConnection
  32. );
  33. PCONNECTION_OBJECT
  34. ConnObjRemove(
  35. IN HCONN hConnection
  36. );
  37. VOID
  38. ConnObjRemoveAndDeAllocate(
  39. IN HCONN hConnection
  40. );
  41. DWORD
  42. ConnObjAddLink(
  43. IN CONNECTION_OBJECT * pConnObj,
  44. IN DEVICE_OBJECT * pDeviceObj
  45. );
  46. VOID
  47. ConnObjRemoveLink(
  48. IN HCONN hConnection,
  49. IN DEVICE_OBJECT * pDeviceObj
  50. );
  51. VOID
  52. ConnObjDisconnect(
  53. IN CONNECTION_OBJECT * pConnObj
  54. );
  55. //
  56. // Router Interface object prototypes
  57. //
  58. BOOL
  59. IfObjectAreAllTransportsDisconnected(
  60. IN ROUTER_INTERFACE_OBJECT * pIfObject
  61. );
  62. VOID
  63. IfObjectDisconnected(
  64. IN ROUTER_INTERFACE_OBJECT * pIfObject
  65. );
  66. DWORD
  67. IfObjectConnected(
  68. IN HANDLE hDDMInterface,
  69. IN HCONN hConnection,
  70. IN PPP_PROJECTION_RESULT *pProjectionResult
  71. );
  72. VOID
  73. IfObjectNotifyOfReachabilityChange(
  74. IN ROUTER_INTERFACE_OBJECT *pIfObject,
  75. IN BOOL fReachable,
  76. IN UNREACHABILITY_REASON dwReason
  77. );
  78. VOID
  79. IfObjectNotifyAllOfReachabilityChange(
  80. IN BOOL fReachable,
  81. IN UNREACHABILITY_REASON dwReason
  82. );
  83. DWORD
  84. IfObjectAddClientInterface(
  85. IN ROUTER_INTERFACE_OBJECT * pIfObject,
  86. IN PBYTE pClientInterface
  87. );
  88. VOID
  89. IfObjectDeleteInterface(
  90. IN ROUTER_INTERFACE_OBJECT * pIfObject
  91. );
  92. DWORD
  93. IfObjectLoadPhonebookInfo(
  94. IN ROUTER_INTERFACE_OBJECT * pIfObject
  95. );
  96. VOID
  97. IfObjectInitiatePersistentConnections(
  98. VOID
  99. );
  100. VOID
  101. IfObjectDisconnectInterfaces(
  102. VOID
  103. );
  104. VOID
  105. IfObjectConnectionChangeNotification(
  106. VOID
  107. );
  108. VOID
  109. IfObjectSetDialoutHoursRestriction(
  110. IN ROUTER_INTERFACE_OBJECT * pIfObject
  111. );
  112. //
  113. // Media object prototypes
  114. //
  115. VOID
  116. MediaObjRemoveFromTable(
  117. LPWSTR lpwsMedia
  118. );
  119. DWORD
  120. MediaObjAddToTable(
  121. LPWSTR lpwsMedia
  122. );
  123. DWORD
  124. MediaObjInitializeTable(
  125. VOID
  126. );
  127. VOID
  128. MediaObjGetAvailableMediaBits(
  129. DWORD * pfAvailableMedia
  130. );
  131. DWORD
  132. MediaObjSetMediaBit(
  133. LPWSTR lpwsMedia,
  134. DWORD * pfMedia
  135. );
  136. VOID
  137. MediaObjFreeTable(
  138. VOID
  139. );
  140. //
  141. // Device object prototypes
  142. //
  143. DWORD
  144. DeviceObjIterator(
  145. IN DWORD (*pProcessFunction)( IN DEVICE_OBJECT *,
  146. IN LPVOID,
  147. IN DWORD,
  148. IN DWORD ),
  149. IN BOOL fReturnOnError,
  150. IN PVOID Parameter
  151. );
  152. DWORD
  153. DeviceObjHashPortToBucket(
  154. IN HPORT hPort
  155. );
  156. DEVICE_OBJECT *
  157. DeviceObjGetPointer(
  158. IN HPORT hPort
  159. );
  160. VOID
  161. DeviceObjInsertInTable(
  162. IN DEVICE_OBJECT * pDeviceObj
  163. );
  164. VOID
  165. DeviceObjRemoveFromTable(
  166. IN HPORT hPort
  167. );
  168. DEVICE_OBJECT *
  169. DeviceObjAllocAndInitialize(
  170. IN HPORT hPort,
  171. IN RASMAN_PORT* pRasmanPort
  172. );
  173. DWORD
  174. DeviceObjStartClosing(
  175. IN DEVICE_OBJECT * pDeviceObj,
  176. IN PVOID Parameter,
  177. IN DWORD dwBucketIndex,
  178. IN DWORD dwDeviceIndex
  179. );
  180. DWORD
  181. DeviceObjPostListen(
  182. IN DEVICE_OBJECT * pDeviceObj,
  183. IN PVOID Parameter,
  184. IN DWORD dwBucketIndex,
  185. IN DWORD dwDeviceIndex
  186. );
  187. DWORD
  188. DeviceObjIsClosed(
  189. IN DEVICE_OBJECT * pDeviceObj,
  190. IN PVOID Parameter,
  191. IN DWORD dwBucketIndex,
  192. IN DWORD dwDeviceIndex
  193. );
  194. DWORD
  195. DeviceObjCopyhPort(
  196. IN DEVICE_OBJECT * pDeviceObj,
  197. IN PVOID Parameter,
  198. IN DWORD dwBucketIndex,
  199. IN DWORD dwDeviceIndex
  200. );
  201. DWORD
  202. DeviceObjCloseListening(
  203. IN DEVICE_OBJECT * pDeviceObj,
  204. IN PVOID Parameter,
  205. IN DWORD dwBucketIndex,
  206. IN DWORD dwDeviceIndex
  207. );
  208. DWORD
  209. DeviceObjResumeListening(
  210. IN DEVICE_OBJECT * pDeviceObj,
  211. IN PVOID Parameter,
  212. IN DWORD dwBucketIndex,
  213. IN DWORD dwDeviceIndex
  214. );
  215. DWORD
  216. DeviceObjRequestNotification(
  217. IN DEVICE_OBJECT * pDeviceObj,
  218. IN PVOID Parameter,
  219. IN DWORD dwBucketIndex,
  220. IN DWORD dwDeviceIndex
  221. );
  222. DWORD
  223. DeviceObjClose(
  224. IN DEVICE_OBJECT * pDevObj,
  225. IN PVOID Parameter,
  226. IN DWORD dwBucketIndex,
  227. IN DWORD dwDeviceIndex
  228. );
  229. DWORD
  230. DeviceObjGetType(
  231. IN DEVICE_OBJECT * pDevObj,
  232. IN PVOID Parameter,
  233. IN DWORD dwBucketIndex,
  234. IN DWORD dwDeviceIndex
  235. );
  236. DWORD
  237. DeviceObjForceIpSec(
  238. IN DEVICE_OBJECT * pDeviceObj,
  239. IN PVOID Parameter,
  240. IN DWORD dwBucketIndex,
  241. IN DWORD dwDeviceIndex
  242. );
  243. DWORD
  244. DeviceObjIsWANDevice(
  245. IN DEVICE_OBJECT * pDevObj,
  246. IN PVOID Parameter,
  247. IN DWORD dwBucketIndex,
  248. IN DWORD dwDeviceIndex
  249. );
  250. VOID
  251. DeviceObjAdd(
  252. IN RASMAN_PORT * pRasmanPort
  253. );
  254. VOID
  255. DeviceObjRemove(
  256. IN RASMAN_PORT * pRasmanPort
  257. );
  258. VOID
  259. DeviceObjUsageChange(
  260. IN RASMAN_PORT * pRasmanPort
  261. );