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.

295 lines
11 KiB

  1. /**********************************************************************/
  2. /** Microsoft Windows/NT **/
  3. /** Copyright(c) Microsoft Corp., 1997 **/
  4. /**********************************************************************/
  5. /*
  6. DsAcsUse.h
  7. Defines the ACS attributes names in DS, API to Load and Save the
  8. Attributes
  9. FILE HISTORY:
  10. 11/03/97 Wei Jiang Created
  11. */
  12. // dsacsuse.h
  13. #ifndef _DS_ACS_USE_H_
  14. #define _DS_ACS_USE_H_
  15. #define ACS_DEFAULT_INSTALLUSER L"ACSInstall"
  16. #define ACS_IDENTITY_DEFAULT L"0"
  17. #define ACS_IDENTITY_UNKNOWN L"1"
  18. #define ACS_IDENTITY_USER L"2:"
  19. #define ACS_IDENTITY_OU L"3:"
  20. //================== length limit =======================
  21. #define MAX_LEN_PROFILENAME 128
  22. #define MAX_LEN_SUBNETNAME 128
  23. #define LDAP_LEADING L"LDAP://"
  24. #define ACS_DSP_ROOTDSE L"LDAP://RootDSE"
  25. #define ACS_DSA_CONFIGCONTEXT L"configurationNamingContext"
  26. #define ACS_DSA_DEFAULTCONTEXT L"defaultNamingContext"
  27. #define CHAR_BACKSLASH _T('\\')
  28. #define CHAR_REPLACEDBY _T(':')
  29. //===========================================================================
  30. // ACS Top Containers
  31. //
  32. #define ACS_RPATH_ACS_PARENT_INCOFIG L"CN=Services,"
  33. #define ACS_RPATH_ACS_INCONFIG L"CN=ACS,CN=Services,"
  34. #define ACS_RPATH_SUBNETS_INCONFIG L"CN=Subnets,CN=Sites,"
  35. //===========================================================================
  36. // ACS user attributes
  37. //
  38. #define ACS_UAN_POLICYNAME L"ACSPolicyName" // String, Multivalue
  39. #define ACS_UAN_POLICYNAME_DEF L"" // default to None
  40. //===========================================================================
  41. // ACS user Policy & Subnet config
  42. //
  43. // ACS object names in DS -- these are the names in DS, display names are in RC
  44. #define ACS_NAME_ACS L"ACS" // ACS folder
  45. #define ACS_NAME_SUBNETWORKS L"Subnetworks" // folder name for subnetworks
  46. #define ACS_NAME_PROFILES L"Profiles" // folder name for profiles
  47. #define ACS_NAME_USERS L"Users" // folder name for users
  48. #define ACS_NAME_DEFAULTUSER L"Default_User" // policy object name for default user
  49. #define ACS_NAME_UNKNOWNUSER L"Unknown_User" // policy name for unknown user
  50. #define ACS_NAME_POLICYENTRY L"NT5ACSPolicy" // policy element name within policy folder
  51. #define ACS_NAME_SUBNETCONFIG L"Config" // subnet config object name
  52. #define ACS_NAME_SUBNETLIMITS L"Limits" // subnet config object name
  53. // class name -- UP : User Policy
  54. #define ACS_CLS_CONTAINER L"Container"
  55. #define ACS_CLS_POLICY L"aCSPolicy"
  56. #define ACS_CLS_SUBNETCONFIG L"aCSSubnet"
  57. #define ACS_CLS_SUBNETLIMITS L"aCSResourceLimits"
  58. //////////////
  59. // attributes names
  60. //=====================================
  61. // policy attrtibute name
  62. #define ACS_PAN_TIMEOFDAY L"aCSTimeOfDay"
  63. #define ACS_PAN_DIRECTION L"aCSDirection"
  64. #define ACS_PAN_PF_TOKENRATE L"aCSMaxTokenRatePerFlow"
  65. #define ACS_PAN_PF_PEAKBANDWIDTH L"aCSMaxPeakBandwidthPerFlow"
  66. #define ACS_PAN_PF_DURATION L"aCSMaxDurationPerFlow"
  67. #define ACS_PAN_SERVICETYPE L"aCSServiceType"
  68. #define ACS_PAN_PRIORITY L"aCSPriority"
  69. #define ACS_PAN_PERMISSIONBITS L"aCSPermissionBits"
  70. #define ACS_PAN_TT_FLOWS L"aCSTotalNoOfFlows"
  71. #define ACS_PAN_TT_TOKENRATE L"aCSAggregateTokenRatePerUser"
  72. #define ACS_PAN_TT_PEAKBANDWIDTH L"aCSMaxAggregatePeakRatePerUser"
  73. #define ACS_PAN_IDENTITYNAME L"aCSIdentityName"
  74. // type of each attribute
  75. #define ACS_PAT_TIMEOFDAY ADSTYPE_CASEIGNORE_LIST
  76. #define ACS_PAT_DIRECTION ADSTYPE_INTEGER
  77. #define ACS_PAT_PF_TOKENRATE ADSTYPE_LARGE_INTEGER
  78. #define ACS_PAT_PF_PEAKBANDWIDTH ADSTYPE_LARGE_INTEGER
  79. #define ACS_PAT_PF_DURATION ADSTYPE_INTEGER
  80. #define ACS_PAT_SERVICETYPE ADSTYPE_INTEGER
  81. #define ACS_PAT_PRIORITY ADSTYPE_INTEGER
  82. #define ACS_PAT_PERMISSIONBITS ADSTYPE_LARGE_INTEGER
  83. #define ACS_PAT_TT_FLOWS ADSTYPE_INTEGER
  84. #define ACS_PAT_TT_TOKENRATE ADSTYPE_LARGE_INTEGER
  85. #define ACS_PAT_TT_PEAKBANDWIDTH ADSTYPE_LARGE_INTEGER
  86. #define ACS_PAT_IDENTITYNAME ADSTYPE_CASE_IGNORE_STRING
  87. // If multi-valued
  88. #define ACS_PAM_TIMEOFDAY true
  89. #define ACS_PAM_DIRECTION false
  90. #define ACS_PAM_PF_TOKENRATE false
  91. #define ACS_PAM_PF_PEAKBANDWIDTH false
  92. #define ACS_PAM_PF_DURATION false
  93. #define ACS_PAM_SERVICETYPE false
  94. #define ACS_PAM_PRIORITY false
  95. #define ACS_PAM_PERMISSIONBITS false
  96. #define ACS_PAM_TT_FLOWS false
  97. #define ACS_PAM_TT_TOKENRATE false
  98. #define ACS_PAM_TT_PEAKBANDWIDTH false
  99. #define ACS_PAM_IDENTITYNAME true
  100. // value limit
  101. #define ACS_PAV_MAX_IDENTITY 1024
  102. //=====================================
  103. // subnet config attrtibute name
  104. #define ACS_SCAN_ALLOCABLERSVPBW L"aCSAllocableRSVPBandwidth"
  105. #define ACS_SCAN_MAXPEAKBW L"aCSMaxPeakBandwidth"
  106. #define ACS_SCAN_ENABLERSVPMESSAGELOGGING L"aCSEnableRSVPMessageLogging"
  107. #define ACS_SCAN_EVENTLOGLEVEL L"aCSEventLogLevel"
  108. #define ACS_SCAN_ENABLEACSSERVICE L"aCSEnableACSService"
  109. #define ACS_SCAN_MAX_PF_TOKENRATE L"aCSMaxTokenRatePerFlow"
  110. #define ACS_SCAN_MAX_PF_PEAKBW L"aCSMaxPeakBandwidthPerFlow"
  111. #define ACS_SCAN_MAX_PF_DURATION L"aCSMaxDurationPerFlow"
  112. #define ACS_SCAN_RSVPLOGFILESLOCATION L"aCSRSVPLogFilesLocation"
  113. #define ACS_SCAN_DESCRIPTION L"description"
  114. #define ACS_SCAN_MAXNOOFLOGFILES L"aCSMaxNoOfLogFiles"
  115. #define ACS_SCAN_MAXSIZEOFRSVPLOGFILE L"aCSMaxSizeOfRSVPLogFile"
  116. #define ACS_SCAN_DSBMPRIORITY L"aCSDSBMPriority"
  117. #define ACS_SCAN_DSBMREFRESH L"aCSDSBMRefresh"
  118. #define ACS_SCAN_DSBMDEADTIME L"aCSDSBMDeadTime"
  119. #define ACS_SCAN_CACHETIMEOUT L"aCSCacheTimeout"
  120. #define ACS_SCAN_NONRESERVEDTXLIMIT L"aCSNonReservedTxLimit"
  121. // accounting -- added by WeiJiang 2/16/98
  122. #define ACS_SCAN_ENABLERSVPMESSAGEACCOUNTING L"aCSEnableRSVPAccounting"
  123. #define ACS_SCAN_RSVPACCOUNTINGFILESLOCATION L"aCSRSVPAccountFilesLocation"
  124. #define ACS_SCAN_MAXNOOFACCOUNTINGFILES L"aCSMaxNoOfAccountFiles"
  125. #define ACS_SCAN_MAXSIZEOFRSVPACCOUNTINGFILE L"aCSMaxSizeOfRSVPAccountFile"
  126. // server list
  127. #define ACS_SCAN_SERVERLIST L"aCSServerList"
  128. // type of the attributes
  129. #define ACS_SCAT_ALLOCABLERSVPBW ADSTYPE_LARGE_INTEGER
  130. #define ACS_SCAT_MAXPEAKBW ADSTYPE_LARGE_INTEGER
  131. #define ACS_SCAT_ENABLERSVPMESSAGELOGGING ADSTYPE_BOOLEAN
  132. #define ACS_SCAT_EVENTLOGLEVEL ADSTYPE_INTEGER
  133. #define ACS_SCAT_ENABLEACSSERVICE ADSTYPE_BOOLEAN
  134. #define ACS_SCAT_MAX_PF_TOKENRATE ADSTYPE_LARGE_INTEGER
  135. #define ACS_SCAT_MAX_PF_PEAKBW ADSTYPE_LARGE_INTEGER
  136. #define ACS_SCAT_MAX_PF_DURATION ADSTYPE_INTEGER
  137. #define ACS_SCAT_RSVPLOGFILESLOCATION ADSTYPE_CASE_IGNORE_STRING
  138. #define ACS_SCAT_DESCRIPTION ADSTYPE_CASE_IGNORE_STRING
  139. #define ACS_SCAT_MAXNOOFLOGFILES ADSTYPE_INTEGER
  140. #define ACS_SCAT_MAXSIZEOFRSVPLOGFILE ADSTYPE_INTEGER
  141. #define ACS_SCAT_DSBMPRIORITY ADSTYPE_INTEGER
  142. #define ACS_SCAT_DSBMREFRESH ADSTYPE_INTEGER
  143. #define ACS_SCAT_DSBMDEADTIME ADSTYPE_INTEGER
  144. #define ACS_SCAT_CACHETIMEOUT ADSTYPE_INTEGER
  145. #define ACS_SCAT_NONRESERVEDTXLIMIT ADSTYPE_LARGE_INTEGER
  146. #define ACS_SCAT_SERVERLIST ADSTYPE_CASE_IGNORE_STRING
  147. // type of the attributes
  148. #define ACS_SCAM_ALLOCABLERSVPBW false
  149. #define ACS_SCAM_MAXPEAKBW false
  150. #define ACS_SCAM_ENABLERSVPMESSAGELOGGING false
  151. #define ACS_SCAM_EVENTLOGLEVEL false
  152. #define ACS_SCAM_ENABLEACSSERVICE false
  153. #define ACS_SCAM_MAX_PF_TOKENRATE false
  154. #define ACS_SCAM_MAX_PF_PEAKBW false
  155. #define ACS_SCAM_MAX_PF_DURATION false
  156. #define ACS_SCAM_RSVPLOGFILESLOCATION false
  157. #define ACS_SCAM_DESCRIPTION false
  158. #define ACS_SCAM_MAXNOOFLOGFILES false
  159. #define ACS_SCAM_MAXSIZEOFRSVPLOGFILE false
  160. #define ACS_SCAM_DSBMPRIORITY false
  161. #define ACS_SCAM_DSBMREFRESH false
  162. #define ACS_SCAM_DSBMDEADTIME false
  163. #define ACS_SCAM_CACHETIMEOUT false
  164. #define ACS_SCAM_NONRESERVEDTXLIMIT false
  165. // accounting -- added by WeiJiang 2/16/98
  166. #define ACS_SCAM_ENABLERSVPMESSAGEACCOUNTING false
  167. #define ACS_SCAM_RSVPACCOUNTINGFILESLOCATION false
  168. #define ACS_SCAM_MAXNOOFACCOUNTINGFILES false
  169. #define ACS_SCAM_MAXSIZEOFRSVPACCOUNTINGFILE false
  170. // server list
  171. #define ACS_SCAM_SERVERLIST true
  172. // default value of the attributes
  173. #define ACS_SCADEF_ALLOCABLERSVPBW NO LIMIT
  174. #define ACS_SCADEF_MAXPEAKBW NO LIMIT
  175. #define ACS_SCADEF_ENABLERSVPMESSAGELOGGING FALSE
  176. #define ACS_SCADEF_EVENTLOGLEVEL 0
  177. #define ACS_SCADEF_ENABLEACSSERVICE TRUE
  178. #define ACS_SCADEF_MAX_PF_TOKENRATE NO LIMIT
  179. #define ACS_SCADEF_MAX_PF_PEAKBW NO LIMIT
  180. #define ACS_SCADEF_MAX_PF_DURATION NO LIMIT
  181. #define ACS_SCADEF_RSVPLOGFILESLOCATION _T("%windir%\\system32\\LogFiles")
  182. #define ACS_SCADEF_MAXNOOFLOGFILES 10
  183. #define ACS_SCADEF_MAXSIZEOFRSVPLOGFILE 1
  184. #define ACS_SCADEF_DSBMPRIORITY 4
  185. #define ACS_SCADEF_DSBMREFRESH 5
  186. #define ACS_SCADEF_DSBMDEADTIME 15
  187. #define ACS_SCADEF_CACHETIMEOUT 30
  188. #define ACS_SCADEF_NONRESERVEDTXLIMIT 0
  189. // accounting -- added by WeiJiang 2/16/98
  190. #define ACS_SCADEF_ENABLERSVPMESSAGEACCOUNTING TRUE
  191. #define ACS_SCADEF_RSVPACCOUNTINGFILESLOCATION _T("%windir%\\system32\\LogFiles")
  192. #define ACS_SCADEF_MAXNOOFACCOUNTINGFILES 10
  193. #define ACS_SCADEF_MAXSIZEOFRSVPACCOUNTINGFILE 1
  194. #define ACS_SCAV_MIN_DSBMPRIORITY 1
  195. #define ACS_SCAV_MAX_DSBMPRIORITY 64
  196. #define ACS_SCAV_MIN_DSBMREFRESH 5
  197. #define ACS_SCAV_MAX_DSBMREFRESH 60
  198. #define ACS_SCAV_MIN_DSBMDEADTIME 15
  199. #define ACS_SCAV_MAX_DSBMDEADTIME 180
  200. #define ACS_SCAV_MIN_CACHETIMEOUT 1
  201. #define ACS_SCAV_MAX_CACHETIMEOUT 1440
  202. #define ACS_SCAV_MAX_DESCRIPTION 1024
  203. #define ACS_SCAV_MAX_LOGFILESLOCATION MAX_PATH
  204. //=====================================
  205. // subnet service level limits
  206. #define ACS_SSLAN_ALLOCABLERSVPBW L"aCSAllocableRSVPBandwidth"
  207. #define ACS_SSLAN_MAXPEAKBW L"aCSMaxPeakBandwidth"
  208. #define ACS_SSLAN_MAX_PF_TOKENRATE L"aCSMaxTokenRatePerFlow"
  209. #define ACS_SSLAN_MAX_PF_PEAKBW L"aCSMaxPeakBandwidthPerFlow"
  210. #define ACS_SSLAN_SERVICETYPE L"aCSServiceType"
  211. // type of the attributes
  212. #define ACS_SSLAT_ALLOCABLERSVPBW ADSTYPE_LARGE_INTEGER
  213. #define ACS_SSLAT_MAXPEAKBW ADSTYPE_LARGE_INTEGER
  214. #define ACS_SSLAT_MAX_PF_TOKENRATE ADSTYPE_LARGE_INTEGER
  215. #define ACS_SSLAT_MAX_PF_PEAKBW ADSTYPE_LARGE_INTEGER
  216. #define ACS_SSLAT_SERVICETYPE ADSTYPE_INTEGER
  217. // type of the attributes
  218. #define ACS_SSLAM_ALLOCABLERSVPBW false
  219. #define ACS_SSLAM_MAXPEAKBW false
  220. #define ACS_SSLAM_MAX_PF_TOKENRATE false
  221. #define ACS_SSLAM_MAX_PF_PEAKBW false
  222. #define ACS_SSLAM_SERVICETYPE false
  223. // default value of the attributes
  224. #define ACS_SSLADEF_ALLOCABLERSVPBW NO LIMIT
  225. #define ACS_SSLADEF_MAXPEAKBW NO LIMIT
  226. #define ACS_SSLADEF_MAX_PF_TOKENRATE NO LIMIT
  227. #define ACS_SSLADEF_MAX_PF_PEAKBW NO LIMIT
  228. //=============================================================
  229. // policy value definition
  230. #define ACS_DIRECTION_SEND 0x1
  231. #define ACS_DIRECTION_RECEIVE 0x2
  232. #define ACS_DIRECTION_BOTH (ACS_DIRECTION_RECEIVE | ACS_DIRECTION_SEND)
  233. #define ACS_SERVICETYPE_DISABLED 0
  234. #define ACS_SERVICETYPE_BESTEFFORT 0x1
  235. #define ACS_SERVICETYPE_CONTROLLEDLOAD 0x2
  236. #define ACS_SERVICETYPE_GUARANTEEDSERVICE 0x4
  237. #define ACS_SERVICETYPE_ALL 0xffffffff
  238. //===============================================================
  239. // service type used by Subnet limit
  240. #define ACS_SUBNET_LIMITS_SERVICETYPE_AGGREGATE 0
  241. #define ACS_SUBNET_LIMITS_SERVICETYPE_GUARANTEEDSERVICE 2
  242. #define ACS_SUBNET_LIMITS_SERVICETYPE_CONTROLLEDLOAD 5
  243. // the sub object under container ACS_NAME_SUBNETLIMITS will be named as following
  244. #define ACS_SUBNET_LIMITS_OBJ_AGGREGATE _T("0")
  245. #define ACS_SUBNET_LIMITS_OBJ_GUARANTEEDSERVICE _T("2")
  246. #define ACS_SUBNET_LIMITS_OBJ_CONTROLLEDLOAD _T("5")
  247. #endif // _DS_ACS_USE_H_
  248. // end of dsacsuser.h