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.

203 lines
3.4 KiB

  1. #define POLL_STATE_INITIAL 0
  2. #define POLL_STATE_DS_DOWNLOADED 1
  3. #define POLL_STATE_LOCAL_DOWNLOADED 2
  4. #define POLL_STATE_CACHE_DOWNLOADED 3
  5. typedef struct _IPSEC_POLICY_STATE {
  6. DWORD dwCurrentState;
  7. union {
  8. LPWSTR pszDirectoryPolicyDN;
  9. LPWSTR pszRegistryPolicyDN;
  10. LPWSTR pszCachePolicyDN;
  11. };
  12. DWORD CurrentPollingInterval;
  13. DWORD DefaultPollingInterval;
  14. DWORD DSIncarnationNumber;
  15. DWORD RegIncarnationNumber;
  16. PIPSEC_POLICY_OBJECT pIpsecPolicyObject;
  17. PIPSEC_POLICY_DATA pIpsecPolicyData;
  18. } IPSEC_POLICY_STATE, * PIPSEC_POLICY_STATE;
  19. VOID
  20. InitializePolicyStateBlock(
  21. PIPSEC_POLICY_STATE pIpsecPolicyState
  22. );
  23. DWORD
  24. StartStatePollingManager(
  25. PIPSEC_POLICY_STATE pIpsecPolicyState
  26. );
  27. DWORD
  28. PlumbDirectoryPolicy(
  29. PIPSEC_POLICY_STATE pIpsecPolicyState
  30. );
  31. DWORD
  32. GetDirectoryPolicyDN(
  33. LPWSTR * ppszDirectoryPolicyDN
  34. );
  35. DWORD
  36. LoadDirectoryPolicy(
  37. LPWSTR pszDirectoryPolicyDN,
  38. PIPSEC_POLICY_OBJECT * ppIpsecPolicyObject
  39. );
  40. DWORD
  41. PlumbCachePolicy(
  42. PIPSEC_POLICY_STATE pIpsecPolicyState
  43. );
  44. DWORD
  45. GetCachePolicyDN(
  46. LPWSTR * ppszCachePolicyDN
  47. );
  48. DWORD
  49. LoadCachePolicy(
  50. LPWSTR pszCachePolicyDN,
  51. PIPSEC_POLICY_OBJECT * ppIpsecPolicyObject
  52. );
  53. DWORD
  54. PlumbRegistryPolicy(
  55. PIPSEC_POLICY_STATE pIpsecPolicyState
  56. );
  57. DWORD
  58. GetRegistryPolicyDN(
  59. LPWSTR * ppszRegistryPolicyDN
  60. );
  61. DWORD
  62. LoadRegistryPolicy(
  63. LPWSTR pszRegistryPolicyDN,
  64. PIPSEC_POLICY_OBJECT * ppIpsecPolicyObject
  65. );
  66. DWORD
  67. AddPolicyInformation(
  68. PIPSEC_POLICY_DATA pIpsecPolicyData
  69. );
  70. DWORD
  71. AddMMPolicyInformation(
  72. PIPSEC_POLICY_DATA pIpsecPolicyData
  73. );
  74. DWORD
  75. AddQMPolicyInformation(
  76. PIPSEC_POLICY_DATA pIpsecPolicyData
  77. );
  78. DWORD
  79. OnPolicyChanged(
  80. PIPSEC_POLICY_STATE pIpsecPolicyState
  81. );
  82. DWORD
  83. DeletePolicyInformation(
  84. PIPSEC_POLICY_DATA pIpsecPolicyData
  85. );
  86. DWORD
  87. DeleteMMPolicyInformation(
  88. PIPSEC_POLICY_DATA pIpsecPolicyData
  89. );
  90. DWORD
  91. DeleteQMPolicyInformation(
  92. PIPSEC_POLICY_DATA pIpsecPolicyData
  93. );
  94. DWORD
  95. DeleteAllPolicyInformation(
  96. );
  97. DWORD
  98. DeleteAllMMPolicyInformation(
  99. );
  100. DWORD
  101. DeleteAllQMPolicyInformation(
  102. );
  103. VOID
  104. ClearPolicyStateBlock(
  105. PIPSEC_POLICY_STATE pIpsecPolicyState
  106. );
  107. DWORD
  108. OnPolicyPoll(
  109. PIPSEC_POLICY_STATE pIpsecPolicyState
  110. );
  111. DWORD
  112. ProcessDirectoryPolicyPollState(
  113. PIPSEC_POLICY_STATE pIpsecPolicyState
  114. );
  115. DWORD
  116. GetDirectoryIncarnationNumber(
  117. LPWSTR pszIpsecPolicyDN,
  118. DWORD * pdwIncarnationNumber
  119. );
  120. DWORD
  121. MigrateFromDSToCache(
  122. PIPSEC_POLICY_STATE pIpsecPolicyState
  123. );
  124. DWORD
  125. ProcessCachePolicyPollState(
  126. PIPSEC_POLICY_STATE pIpsecPolicyState
  127. );
  128. DWORD
  129. MigrateFromCacheToDS(
  130. PIPSEC_POLICY_STATE pIpsecPolicyState
  131. );
  132. DWORD
  133. UpdateFromCacheToDS(
  134. PIPSEC_POLICY_STATE pIpsecPolicyState
  135. );
  136. DWORD
  137. ProcessLocalPolicyPollState(
  138. PIPSEC_POLICY_STATE pIpsecPolicyState
  139. );
  140. DWORD
  141. HasRegistryPolicyChanged(
  142. LPWSTR pszCurrentPolicyDN,
  143. PBOOL pbChanged
  144. );
  145. DWORD
  146. GetRegistryIncarnationNumber(
  147. LPWSTR pszIpsecPolicyDN,
  148. DWORD *pdwIncarnationNumber
  149. );
  150. DWORD
  151. UpdatePolicyInformation(
  152. PIPSEC_POLICY_DATA pOldIpsecPolicyData,
  153. PIPSEC_POLICY_DATA pNewIpsecPolicyData
  154. );
  155. DWORD
  156. LoadDefaultISAKMPInformation(
  157. LPWSTR pszDefaultISAKMPDN
  158. );
  159. VOID
  160. UnLoadDefaultISAKMPInformation(
  161. LPWSTR pszDefaultISAKMPDN
  162. );