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.

150 lines
2.5 KiB

  1. /*++
  2. Copyright (c) 1999 Microsoft Corporation
  3. Module Name:
  4. tnspecific.h
  5. Abstract:
  6. This module contains all of the code prototypes to
  7. drive the specific tunnel filter list management of
  8. IPSecSPD Service.
  9. Author:
  10. abhisheV 29-October-1999
  11. Environment
  12. User Level: Win32
  13. Revision History:
  14. --*/
  15. DWORD
  16. ApplyTnTransform(
  17. PINITNFILTER pFilter,
  18. MATCHING_ADDR * pMatchingAddresses,
  19. DWORD dwAddrCnt,
  20. PINITNSFILTER * ppSpecificFilters
  21. );
  22. DWORD
  23. FormTnOutboundInboundAddresses(
  24. PINITNFILTER pFilter,
  25. MATCHING_ADDR * pMatchingAddresses,
  26. DWORD dwAddrCnt,
  27. PADDR * ppOutDesTunAddrList,
  28. PDWORD pdwOutDesTunAddrCnt,
  29. PADDR * ppInDesTunAddrList,
  30. PDWORD pdwInDesTunAddrCnt
  31. );
  32. DWORD
  33. FormSpecificTnFilters(
  34. PINITNFILTER pFilter,
  35. PADDR pSrcAddrList,
  36. DWORD dwSrcAddrCnt,
  37. PADDR pDesAddrList,
  38. DWORD dwDesAddrCnt,
  39. PADDR pDesTunAddrList,
  40. DWORD dwDesTunAddrCnt,
  41. DWORD dwDirection,
  42. PINITNSFILTER * ppSpecificFilters
  43. );
  44. DWORD
  45. CreateSpecificTnFilter(
  46. PINITNFILTER pGenericFilter,
  47. ADDR SrcAddr,
  48. ADDR DesAddr,
  49. ADDR DesTunnelAddr,
  50. PINITNSFILTER * ppSpecificFilter
  51. );
  52. VOID
  53. AssignTnFilterWeight(
  54. PINITNSFILTER pSpecificFilter
  55. );
  56. VOID
  57. AddToSpecificTnList(
  58. PINITNSFILTER * ppSpecificTnFilterList,
  59. PINITNSFILTER pSpecificTnFilters
  60. );
  61. VOID
  62. FreeIniTnSFilterList(
  63. PINITNSFILTER pIniTnSFilterList
  64. );
  65. VOID
  66. FreeIniTnSFilter(
  67. PINITNSFILTER pIniTnSFilter
  68. );
  69. VOID
  70. LinkTnSpecificFilters(
  71. PINIQMPOLICY pIniQMPolicy,
  72. PINITNSFILTER pIniTnSFilters
  73. );
  74. VOID
  75. RemoveIniTnSFilter(
  76. PINITNSFILTER pIniTnSFilter
  77. );
  78. DWORD
  79. EnumSpecificTnFilters(
  80. PINITNSFILTER pIniTnSFilterList,
  81. DWORD dwResumeHandle,
  82. DWORD dwPreferredNumEntries,
  83. PTUNNEL_FILTER * ppTnFilters,
  84. PDWORD pdwNumTnFilters
  85. );
  86. DWORD
  87. CopyTnSFilter(
  88. PINITNSFILTER pIniTnSFilter,
  89. PTUNNEL_FILTER pTnFilter
  90. );
  91. DWORD
  92. EnumSelectSpecificTnFilters(
  93. PINITNFILTER pIniTnFilter,
  94. DWORD dwResumeHandle,
  95. DWORD dwPreferredNumEntries,
  96. PTUNNEL_FILTER * ppTnFilters,
  97. PDWORD pdwNumTnFilters
  98. );
  99. DWORD
  100. ValidateTnFilterTemplate(
  101. PTUNNEL_FILTER pTnFilter
  102. );
  103. BOOL
  104. MatchIniTnSFilter(
  105. PINITNSFILTER pIniTnSFilter,
  106. PTUNNEL_FILTER pTnFilter
  107. );
  108. DWORD
  109. CopyTnMatchDefaults(
  110. PTUNNEL_FILTER * ppTnFilters,
  111. PIPSEC_QM_POLICY * ppQMPolicies,
  112. PDWORD pdwNumMatches
  113. );
  114. DWORD
  115. CopyDefaultTnFilter(
  116. PTUNNEL_FILTER pTnFilter,
  117. PINIQMPOLICY pIniQMPolicy
  118. );