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.

179 lines
2.2 KiB

  1. /*++
  2. Copyright (c) 1999 Microsoft Corporation
  3. Module Name:
  4. driver.h
  5. Abstract:
  6. This module contains all of the code prototypes to
  7. drive the management of specific filters in the
  8. IPSec driver.
  9. Author:
  10. abhisheV 05-November-1999
  11. Environment
  12. User Level: Win32
  13. Revision History:
  14. --*/
  15. #define DEVICE_NAME L"\\\\.\\IpsecDev"
  16. #define IPSEC_SERVICE_NAME L"IPSEC"
  17. #if defined(__cplusplus)
  18. extern "C" {
  19. #endif
  20. DWORD
  21. SPDStartIPSecDriver(
  22. );
  23. DWORD
  24. SPDStopIPSecDriver(
  25. );
  26. DWORD
  27. SPDOpenIPSecDriver(
  28. PHANDLE phIPSecDriver
  29. );
  30. VOID
  31. SPDCloseIPSecDriver(
  32. HANDLE hIPSecDriver
  33. );
  34. DWORD
  35. InsertTransportFiltersIntoIPSec(
  36. PINITXSFILTER pSpecificFilters
  37. );
  38. DWORD
  39. DeleteTransportFiltersFromIPSec(
  40. PINITXSFILTER pSpecificFilters
  41. );
  42. DWORD
  43. WrapTransportFilters(
  44. PINITXSFILTER pSpecificFilters,
  45. PIPSEC_FILTER_INFO * ppInternalFilters,
  46. PDWORD pdwNumFilters
  47. );
  48. VOID
  49. FormIPSecTransportFilter(
  50. PINITXSFILTER pSpecificFilter,
  51. PIPSEC_FILTER_INFO pIpsecFilter
  52. );
  53. DWORD
  54. QueryDriverForIpsecStats(
  55. PIPSEC_QUERY_STATS * ppQueryStats
  56. );
  57. DWORD
  58. IpsecEnumSAs(
  59. PDWORD pdwNumberOfSAs,
  60. PIPSEC_ENUM_SAS * ppIpsecEnumSAs
  61. );
  62. DWORD
  63. CopyQMSA(
  64. PIPSEC_SA_INFO pInfo,
  65. PIPSEC_QM_SA pQMSA
  66. );
  67. VOID
  68. CopyQMSAOffer(
  69. PIPSEC_SA_INFO pInfo,
  70. PIPSEC_QM_OFFER pOffer
  71. );
  72. VOID
  73. CopyQMSAFilter(
  74. IPAddr MyTunnelEndpt,
  75. PIPSEC_FILTER pIpsecFilter,
  76. PIPSEC_QM_FILTER pIpsecQMFilter
  77. );
  78. VOID
  79. CopyQMSAMMSpi(
  80. IKE_COOKIE_PAIR CookiePair,
  81. PIKE_COOKIE_PAIR pMMSpi
  82. );
  83. VOID
  84. FreeQMSAs(
  85. DWORD dwCnt,
  86. PIPSEC_QM_SA pQMSAs
  87. );
  88. DWORD
  89. InsertTunnelFiltersIntoIPSec(
  90. PINITNSFILTER pSpecificFilters
  91. );
  92. DWORD
  93. DeleteTunnelFiltersFromIPSec(
  94. PINITNSFILTER pSpecificFilters
  95. );
  96. DWORD
  97. WrapTunnelFilters(
  98. PINITNSFILTER pSpecificFilters,
  99. PIPSEC_FILTER_INFO * ppInternalFilters,
  100. PDWORD pdwNumFilters
  101. );
  102. VOID
  103. FormIPSecTunnelFilter(
  104. PINITNSFILTER pSpecificFilter,
  105. PIPSEC_FILTER_INFO pIpsecFilter
  106. );
  107. DWORD
  108. SPDSetIPSecDriverOpMode(
  109. DWORD dwOpMode
  110. );
  111. DWORD
  112. SPDRegisterIPSecDriverProtocols(
  113. DWORD dwRegisterMode
  114. );
  115. #if defined(__cplusplus)
  116. }
  117. #endif