Leaked source code of windows server 2003
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.

463 lines
21 KiB

  1. // ========================================================================
  2. //
  3. // sz.h
  4. //
  5. // Constant string support
  6. //
  7. // NOTE: Strings that need multi-language support should NOT go here!
  8. // They belong in the \cal\lang tree.
  9. //
  10. // Copyright 1986-1999 Microsoft Corporation, All Rights Reserved
  11. //
  12. #ifndef _EX_SZ_H_
  13. #define _EX_SZ_H_
  14. // Const string length -------------------------------------------------------
  15. //
  16. #define CchConstString(_s) ((sizeof(_s)/sizeof(_s[0])) - 1)
  17. #define _wcsspnp(_cpc1, _cpc2) ((*((_cpc1)+wcsspn(_cpc1,_cpc2))) ? ((_cpc1)+wcsspn(_cpc1,_cpc2)) : NULL)
  18. // String constants ----------------------------------------------------------
  19. //
  20. // Product tokens ------------------------------------------------------------
  21. //
  22. DEC_CONST CHAR gc_szOffice9UserAgent[] = "Microsoft Data Access Internet Publishing Provider DAV";
  23. DEC_CONST UINT gc_cchOffice9UserAgent = CchConstString(gc_szOffice9UserAgent);
  24. DEC_CONST CHAR gc_szRosebudNT5UserAgent[] = "Microsoft Data Access Internet Publishing Provider DAV 1.1";
  25. DEC_CONST UINT gc_cchRosebudNT5UserAgent = CchConstString(gc_szRosebudNT5UserAgent);
  26. // Whitespace ----------------------------------------------------------------
  27. //
  28. DEC_CONST CHAR gc_szLWS[] = " \r\n\t";
  29. DEC_CONST WCHAR gc_wszLWS[] = L" \r\n\t";
  30. DEC_CONST CHAR gc_szWS[] = " \t";
  31. DEC_CONST WCHAR gc_wszWS[] = L" \t";
  32. // Generic constants ---------------------------------------------------------
  33. //
  34. DEC_CONST WCHAR gc_wszDigits[] = L"0123456789";
  35. DEC_CONST WCHAR gc_wchEquals = L'=';
  36. DEC_CONST WCHAR gc_wchComma = L',';
  37. DEC_CONST WCHAR gc_wszByteRangeAlphabet[] = L"0123456789-, \t";
  38. DEC_CONST WCHAR gc_wszSeparator[] = L" \t,";
  39. DEC_CONST WCHAR gc_wchDash = L'-';
  40. // HTTP-DAV headers ----------------------------------------------------------
  41. //
  42. DEC_CONST CHAR gc_szAccept_Charset[] = "Accept-Charset";
  43. DEC_CONST CHAR gc_szAccept_Encoding[] = "Accept-Encoding";
  44. DEC_CONST CHAR gc_szAccept_Language[] = "Accept-Language";
  45. DEC_CONST CHAR gc_szAccept_Ranges[] = "Accept-Ranges";
  46. DEC_CONST CHAR gc_szAccept[] = "Accept";
  47. DEC_CONST CHAR gc_szAge[] = "Age";
  48. DEC_CONST CHAR gc_szAllow[] = "Allow";
  49. DEC_CONST CHAR gc_szAtomic[] = "Atomic";
  50. DEC_CONST CHAR gc_szAuthorization[] = "Authorization";
  51. DEC_CONST CHAR gc_szChunked[] = "chunked";
  52. DEC_CONST WCHAR gc_wszChunked[] = L"chunked";
  53. DEC_CONST CHAR gc_szCollection_Member[] = "Collection-Member";
  54. DEC_CONST CHAR gc_szCompatibility[] = "Compatibility";
  55. DEC_CONST CHAR gc_szConnection[] = "Connection";
  56. DEC_CONST CHAR gc_szContent_Base[] = "Content-Base";
  57. DEC_CONST CHAR gc_szContent_Encoding[] = "Content-Encoding";
  58. DEC_CONST CHAR gc_szContent_Language[] = "Content-Language";
  59. DEC_CONST CHAR gc_szContent_Length[] = "Content-Length";
  60. DEC_CONST CHAR gc_szContent_Location[] = "Content-Location";
  61. DEC_CONST CHAR gc_szContent_MD5[] = "Content-MD5";
  62. DEC_CONST CHAR gc_szContent_Range[] = "Content-Range";
  63. DEC_CONST WCHAR gc_wszContent_Range[] = L"Content-Range";
  64. DEC_CONST INT gc_cchContent_Range = CchConstString(gc_szContent_Range);
  65. DEC_CONST CHAR gc_szContent_Type[] = "Content-Type";
  66. DEC_CONST WCHAR gc_wszContent_Type[] = L"Content-Type";
  67. DEC_CONST INT gc_cchContent_Type = CchConstString(gc_szContent_Type);
  68. DEC_CONST CHAR gc_szContent_Disposition[] = "Content-Disposition";
  69. DEC_CONST CHAR gc_szCookie[] = "Cookie";
  70. DEC_CONST CHAR gc_szDate[] = "Date";
  71. DEC_CONST CHAR gc_szDepth[] = "Depth";
  72. DEC_CONST CHAR gc_szDestination[] = "Destination";
  73. DEC_CONST CHAR gc_szDestroy[] = "Destroy";
  74. DEC_CONST CHAR gc_szExpires[] = "Expires";
  75. DEC_CONST CHAR gc_szETag[] = "ETag";
  76. DEC_CONST CHAR gc_szFrom[] = "From";
  77. DEC_CONST CHAR gc_szHost[] = "Host";
  78. DEC_CONST CHAR gc_szIf_Match[] = "If-Match";
  79. DEC_CONST CHAR gc_szIf_Modified_Since[] = "If-Modified-Since";
  80. DEC_CONST CHAR gc_szIf_None_Match[] = "If-None-Match";
  81. DEC_CONST CHAR gc_szIf_None_State_Match[] = "If-None-State-Match";
  82. DEC_CONST CHAR gc_szIf_Range[] = "If-Range";
  83. DEC_CONST CHAR gc_szIf_State_Match[] = "If-State-Match";
  84. DEC_CONST CHAR gc_szIf_Unmodified_Since[] = "If-Unmodified-Since";
  85. DEC_CONST CHAR gc_szLast_Modified[] = "Last-Modified";
  86. DEC_CONST CHAR gc_szLocation[] = "Location";
  87. DEC_CONST CHAR gc_szLockInfo[] = "Lock-Info";
  88. DEC_CONST CHAR gc_szLockToken[] = "If";
  89. DEC_CONST CHAR gc_szMS_Author_Via[] = "MS-Author-Via";
  90. DEC_CONST CHAR gc_szMS_Exchange_FlatURL[] = "MS-Exchange-Permanent-URL";
  91. DEC_CONST CHAR gc_szOverwrite[] = "Overwrite";
  92. DEC_CONST CHAR gc_szAllowRename[] = "Allow-Rename";
  93. DEC_CONST CHAR gc_szPublic[] = "Public";
  94. DEC_CONST CHAR gc_szRange[] = "Range";
  95. DEC_CONST CHAR gc_szReferer[] = "Referer";
  96. DEC_CONST CHAR gc_szRetry_After[] = "Retry-After";
  97. DEC_CONST CHAR gc_szServer[] = "Server";
  98. DEC_CONST CHAR gc_szSet_Cookie[] = "Set-Cookie";
  99. DEC_CONST CHAR gc_szTimeout[] = "Timeout";
  100. DEC_CONST CHAR gc_szTime_Out[] = "Time-Out";
  101. DEC_CONST CHAR gc_szTransfer_Encoding[] = "Transfer-Encoding";
  102. DEC_CONST CHAR gc_szTranslate[] = "Translate";
  103. DEC_CONST CHAR gc_szUpdate[] = "Update";
  104. DEC_CONST CHAR gc_szUser_Agent[] = "User-Agent";
  105. DEC_CONST CHAR gc_szVary[] = "Vary";
  106. DEC_CONST CHAR gc_szWarning[] = "Warning";
  107. DEC_CONST CHAR gc_szWWW_Authenticate[] = "WWW-Authenticate";
  108. DEC_CONST CHAR gc_szVersioning_Support[] = "Versioning-Support";
  109. DEC_CONST CHAR gc_szBrief[] = "Brief";
  110. // ECB server variables ------------------------------------------------------
  111. //
  112. DEC_CONST CHAR gc_szHTTP_[] = "HTTP_";
  113. DEC_CONST UINT gc_cchHTTP_ = CchConstString(gc_szHTTP_);
  114. DEC_CONST CHAR gc_szServer_Protocol[] = "SERVER_PROTOCOL";
  115. DEC_CONST CHAR gc_szServer_Name[] = "SERVER_NAME";
  116. DEC_CONST CHAR gc_szServer_Port[] = "SERVER_PORT";
  117. DEC_CONST CHAR gc_szAuth_Type[] = "AUTH_TYPE";
  118. DEC_CONST CHAR gc_szHTTP_Version[] = "HTTP_VERSION";
  119. DEC_CONST CHAR gc_szAll_Raw[] = "ALL_RAW";
  120. // ECB server variable values ------------------------------------------------
  121. //
  122. DEC_CONST CHAR gc_sz80[] = "80";
  123. DEC_CONST CHAR gc_sz443[] = "443";
  124. DEC_CONST CHAR gc_szBasic[] = "Basic";
  125. // Verbs
  126. //
  127. DEC_CONST CHAR gc_szHEAD[] = "HEAD";
  128. DEC_CONST CHAR gc_szGET[] = "GET";
  129. // Custom headers ------------------------------------------------------------
  130. //
  131. DEC_CONST CHAR gc_szX_MS_DEBUG_DAV[] = "X-MS-Debug-DAV";
  132. DEC_CONST CHAR gc_szX_MS_DEBUG_DAV_Signature[] = "X-MS-Debug-DAV-Signature";
  133. // Depth values --------------------------------------------------------------
  134. //
  135. DEC_CONST CHAR gc_sz0[] = "0";
  136. DEC_CONST WCHAR gc_wsz0[] = L"0";
  137. DEC_CONST CHAR gc_sz1[] = "1";
  138. DEC_CONST WCHAR gc_wsz1[] = L"1";
  139. DEC_CONST CHAR gc_szInfinity[] = "infinity";
  140. DEC_CONST WCHAR gc_wszInfinity[] = L"infinity";
  141. DEC_CONST CHAR gc_sz1NoRoot[] = "1,noroot";
  142. DEC_CONST CHAR gc_szInfinityNoRoot[] = "infinity,noroot";
  143. // Common header values ------------------------------------------------------
  144. //
  145. DEC_CONST CHAR gc_szClose[] = "close";
  146. DEC_CONST WCHAR gc_wszClose[] = L"close";
  147. DEC_CONST WCHAR gc_wszKeep_Alive[] = L"Keep-Alive";
  148. DEC_CONST CHAR gc_szNone[] = "none";
  149. DEC_CONST CHAR gc_szBytes[] = "bytes";
  150. DEC_CONST WCHAR gc_wszBytes[] = L"bytes";
  151. DEC_CONST INT gc_cchBytes = CchConstString(gc_szBytes);
  152. DEC_CONST WCHAR gc_wszRows[] = L"rows";
  153. DEC_CONST CHAR gc_szAnd[] = "and";
  154. DEC_CONST CHAR gc_szOr[] = "or";
  155. DEC_CONST WCHAR gc_wszNot[] = L"not";
  156. DEC_CONST WCHAR gc_wszInfinite[] = L"Infinite";
  157. DEC_CONST INT gc_cchInfinite = CchConstString(gc_wszInfinite);
  158. DEC_CONST WCHAR gc_wszSecondDash[] = L"Second-";
  159. DEC_CONST INT gc_cchSecondDash = CchConstString(gc_wszSecondDash);
  160. DEC_CONST CHAR gc_szMS_Author_Via_Dav[] = "DAV";
  161. DEC_CONST CHAR gc_szMS_Author_Via_Dav_Fp[] = "MS-FP/4.0,DAV";
  162. // Lock Header values --------------------------------------------------------
  163. //
  164. DEC_CONST CHAR gc_szLockTimeoutFormat[] = "Second-%d";
  165. DEC_CONST INT gc_cchMaxLockTimeoutString = CchConstString(gc_szLockTimeoutFormat) + 10;
  166. // Content-Type values -------------------------------------------------------
  167. //
  168. DEC_CONST CHAR gc_szText_XML[] = "text/xml";
  169. DEC_CONST WCHAR gc_wszText_XML[] = L"text/xml";
  170. DEC_CONST INT gc_cchText_XML = CchConstString(gc_szText_XML);
  171. DEC_CONST CHAR gc_szApplication_XML[] = "application/xml";
  172. DEC_CONST WCHAR gc_wszApplication_XML[] = L"application/xml";
  173. DEC_CONST CHAR gc_szText_HTML[] = "text/html";
  174. DEC_CONST INT gc_cchText_HTML = CchConstString(gc_szText_HTML);
  175. DEC_CONST CHAR gc_szAppl_Octet_Stream[] = "application/octet-stream";
  176. DEC_CONST WCHAR gc_wszAppl_Octet_Stream[] = L"application/octet-stream";
  177. DEC_CONST INT gc_cchAppl_Octet_Stream = CchConstString(gc_szAppl_Octet_Stream);
  178. DEC_CONST CHAR gc_szAppl_X_WWW_Form[] = "application/x-www-form-urlencoded";
  179. DEC_CONST INT gc_cchAppl_X_WWW_Form = CchConstString(gc_szAppl_X_WWW_Form);
  180. DEC_CONST WCHAR gc_wszMultipart_Byterange[] = L"multipart/byteranges";
  181. DEC_CONST INT gc_cchMultipart_Byterange = CchConstString(gc_wszMultipart_Byterange);
  182. DEC_CONST CHAR gc_szMultipart_FormData[] = "multipart/form-data";
  183. DEC_CONST INT gc_cchMultipart_FormData = CchConstString(gc_szMultipart_FormData);
  184. DEC_CONST WCHAR gc_wszBoundary[] = L"boundary";
  185. DEC_CONST INT gc_cchBoundary = CchConstString(gc_wszBoundary);
  186. DEC_CONST CHAR gc_szAppl_MIME[] = "application/mime";
  187. DEC_CONST INT gc_cchAppl_MIME = CchConstString(gc_szAppl_MIME);
  188. // Cache control -------------------------------------------------------------
  189. //
  190. DEC_CONST CHAR gc_szCache_Control[] = "Cache-Control";
  191. DEC_CONST CHAR gc_szCache_Control_Private[] = "private";
  192. DEC_CONST CHAR gc_szCache_Control_NoCache[] = "no-cache";
  193. DEC_CONST CHAR gc_szCache_Control_MaxAge[] = "max-age";
  194. DEC_CONST ULONG gc_cchCache_Control_MaxAge = CchConstString(gc_szCache_Control_MaxAge);
  195. DEC_CONST CHAR gc_szCache_Control_MaxAgeZero[] = "max-age=0";
  196. // Header emitters -----------------------------------------------------------
  197. //
  198. DEC_CONST CHAR gc_szCRLF[] = "\r\n";
  199. DEC_CONST WCHAR gc_wszCRLF[] = L"\r\n";
  200. DEC_CONST INT gc_cchCRLF = CchConstString(gc_szCRLF);
  201. DEC_CONST CHAR gc_szColonSp[] = ": ";
  202. DEC_CONST CHAR gc_szEmpty[] = "";
  203. DEC_CONST WCHAR gc_wszEmpty[] = L"";
  204. // HTTP versions -------------------------------------------------------------
  205. //
  206. DEC_CONST CHAR gc_szHTTP[] = "HTTP/";
  207. DEC_CONST INT gc_cchHTTP = CchConstString(gc_szHTTP);
  208. DEC_CONST CHAR gc_szHTTP_0_9[] = "HTTP/0.9";
  209. DEC_CONST CHAR gc_szHTTP_1_0[] = "HTTP/1.0";
  210. DEC_CONST CHAR gc_szHTTP_1_1[] = "HTTP/1.1";
  211. DEC_CONST INT gc_cchHTTP_X_X = CchConstString(gc_szHTTP_1_1);
  212. DEC_CONST CHAR gc_szDavCompliance[] = "DAV";
  213. // Default error -------------------------------------------------------------
  214. //
  215. DEC_CONST CHAR gc_szDefErr400StatusLine[] = "400 Bad Request";
  216. DEC_CONST CHAR gc_szDefErrStatusLine[] = "500 Internal Server Failure";
  217. DEC_CONST UINT gc_cchszDefErrStatusLine = CchConstString(gc_szDefErrStatusLine);
  218. DEC_CONST CHAR gc_szDefErrBody[] =
  219. "Content-Type: text/html\r\n"
  220. "Content-Length: 67\r\n"
  221. "\r\n"
  222. "<body><h1>"
  223. "HTTP/1.1 500 Internal Server Error(exception)"
  224. "</h1></body>";
  225. DEC_CONST UINT gc_cchszDefErrBody = CchConstString(gc_szDefErrBody);
  226. // Token error ---------------------------------------------------------------
  227. //
  228. DEC_CONST CHAR gc_szUsgErrBody[] =
  229. "Content-Type: text/html\r\n"
  230. "Content-Length: 69\r\n"
  231. "\r\n"
  232. "<body><h1>"
  233. "HTTP/1.1 500 Internal Server Error(USG support)"
  234. "</h1></body>";
  235. DEC_CONST UINT gc_cchszUsgErrBody = CchConstString(gc_szUsgErrBody);
  236. // INDEX response items ------------------------------------------------------
  237. //
  238. DEC_CONST WCHAR gc_wszAs[] = L"as";
  239. DEC_CONST WCHAR gc_wszCollectionResource[] = L"DAV:collectionresource";
  240. DEC_CONST WCHAR gc_wszContent_Encoding[] = L"Content-Encoding";
  241. DEC_CONST WCHAR gc_wszContent_Language[] = L"Content-Language";
  242. DEC_CONST WCHAR gc_wszContent_Length[] = L"Content-Length";
  243. DEC_CONST WCHAR gc_wszCreation_Date[] = L"Creation-Date";
  244. DEC_CONST WCHAR gc_wszDisplayName[] = L"DisplayName";
  245. DEC_CONST WCHAR gc_wszETag[] = L"ETag";
  246. DEC_CONST WCHAR gc_wszExternal[] = L"External";
  247. DEC_CONST WCHAR gc_wszHref[] = L"href";
  248. DEC_CONST WCHAR gc_wszIsCollection[] = L"IsCollection";
  249. DEC_CONST WCHAR gc_wszLast_Modified[] = L"Last-Modified";
  250. DEC_CONST WCHAR gc_wszMemberResource[] = L"MemberResource";
  251. DEC_CONST WCHAR gc_wszDav[] = L"DAV:";
  252. DEC_CONST WCHAR gc_wszProp[] = L"DAV:prop";
  253. DEC_CONST WCHAR gc_wszXML__Href[] = L"DAV:href";
  254. DEC_CONST WCHAR gc_wszXML__Namespace[] = L"xml::namespace";
  255. // Partial response items ----------------------------------------------------
  256. //
  257. DEC_CONST WCHAR gc_wszErrorMessage[] = L"DAV:responsedescription";
  258. DEC_CONST WCHAR gc_wszStatus[] = L"DAV:status";
  259. DEC_CONST WCHAR gc_wszMultiResponse[] = L"DAV:multistatus";
  260. DEC_CONST WCHAR gc_wszResponse[] = L"DAV:response";
  261. DEC_CONST WCHAR gc_wszSearchResult[] = L"DAV:searchresult";
  262. DEC_CONST WCHAR gc_wszPropstat[] = L"DAV:propstat";
  263. DEC_CONST WCHAR gc_wszXML[] = L"xml";
  264. DEC_CONST WCHAR gc_wszContentRange[] = L"DAV:contentrange";
  265. // Metadata items ------------------------------------------------------------
  266. //
  267. DEC_CONST WCHAR gc_wszCreate[] = L"DAV:create";
  268. DEC_CONST WCHAR gc_wszSet[] = L"DAV:set";
  269. DEC_CONST WCHAR gc_wszGetProps[] = L"DAV:getprops";
  270. DEC_CONST WCHAR gc_wszPropfind[] = L"DAV:propfind";
  271. DEC_CONST WCHAR gc_wszPropertyUpdate[] = L"DAV:propertyupdate";
  272. DEC_CONST WCHAR gc_wszRemove[] = L"DAV:remove";
  273. DEC_CONST WCHAR gc_wszAllprop[] = L"DAV:allprop";
  274. DEC_CONST WCHAR gc_wszFullFidelity[] = L"http://schemas.microsoft.com/exchange/allprop";
  275. DEC_CONST WCHAR gc_wszFullFidelityExclude[] = L"http://schemas.microsoft.com/exchange/exclude";
  276. DEC_CONST WCHAR gc_wszFullFidelityInclude[] = L"http://schemas.microsoft.com/exchange/include";
  277. DEC_CONST WCHAR gc_wszPropname[] = L"DAV:propname";
  278. DEC_CONST WCHAR gc_wszCollection[] = L"DAV:collection";
  279. // Version history report items ----------------------------------------------
  280. //
  281. DEC_CONST WCHAR gc_wszEnumReport[] = L"DAV:enumreport";
  282. DEC_CONST WCHAR gc_wszLimit[] = L"DAV:limit";
  283. DEC_CONST WCHAR gc_wszReport[] = L"DAV:report";
  284. DEC_CONST WCHAR gc_wszDavDefaultHistory[] = L"DAV:defaulthistory";
  285. DEC_CONST UINT gc_cchDavDefaultHistory = CchConstString (gc_wszDavDefaultHistory);
  286. DEC_CONST WCHAR gc_wszRevision[] = L"DAV:revision";
  287. // Search items --------------------------------------------------------------
  288. //
  289. DEC_CONST CHAR gc_szDasl[] = "DASL";
  290. DEC_CONST CHAR gc_szSqlQuery[] = "<DAV:sql>";
  291. DEC_CONST WCHAR gc_wszSearchRequest[] = L"DAV:searchrequest";
  292. DEC_CONST WCHAR gc_wszResoucetype[] = L"DAV:resourcetype";
  293. DEC_CONST WCHAR gc_wszStructureddocument[] = L"DAV:structureddocument";
  294. DEC_CONST WCHAR gc_wszSimpleSearch[] = L"DAV:simple-search";
  295. DEC_CONST WCHAR gc_wszType[] = L"DAV:type";
  296. DEC_CONST WCHAR gc_wszQuery[] = L"DAV:query";
  297. DEC_CONST WCHAR gc_wszSql[] = L"DAV:sql";
  298. DEC_CONST WCHAR gc_wszSelect[] = L"Select";
  299. DEC_CONST WCHAR gc_wszFrom[] = L"From";
  300. DEC_CONST WCHAR gc_wszWhere[] = L"Where";
  301. DEC_CONST WCHAR gc_wszOrder[] = L"Order";
  302. DEC_CONST WCHAR gc_wszBy[] = L"By";
  303. DEC_CONST WCHAR gc_wszServerHints[] = L"DAV:serverhints";
  304. DEC_CONST WCHAR gc_wszMaxResults[] = L"DAV:maxresults";
  305. DEC_CONST WCHAR gc_wszScope[] = L"Scope";
  306. DEC_CONST WCHAR gc_wszRange[] = L"DAV:range";
  307. DEC_CONST WCHAR gc_wszRangeType[] = L"DAV:type";
  308. DEC_CONST WCHAR gc_wszRangeRows[] = L"DAV:rows";
  309. DEC_CONST WCHAR gc_wszExpansion[] = L"DAV:expansion";
  310. DEC_CONST WCHAR gc_wszStatic[] = L"static";
  311. DEC_CONST WCHAR gc_wszDynamic[] = L"dynamic";
  312. // Batch method items --------------------------------------------------------
  313. //
  314. DEC_CONST WCHAR gc_wszTarget[] = L"DAV:target";
  315. DEC_CONST WCHAR gc_wszDelete[] = L"DAV:delete";
  316. DEC_CONST WCHAR gc_wszCopy[] = L"DAV:copy";
  317. DEC_CONST WCHAR gc_wszMove[] = L"DAV:move";
  318. DEC_CONST WCHAR gc_wszDest[] = L"DAV:dest";
  319. DEC_CONST WCHAR gc_wszLocation[] = L"DAV:location";
  320. // Property types ------------------------------------------------------------
  321. //
  322. DEC_CONST WCHAR gc_wszLexType[] = L"urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/dt";
  323. DEC_CONST INT gc_cchLexType = CchConstString (gc_wszLexType);
  324. DEC_CONST WCHAR gc_wszLexTypeOfficial[] = L"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882#dt";
  325. DEC_CONST WCHAR gc_wszDataTypes[] = L"urn:schemas-microsoft-com:datatypes#dt";
  326. DEC_CONST WCHAR gc_wszFlags[] = L"urn:schemas:httpmail:flags";
  327. DEC_CONST WCHAR gc_wszHrefAttribute[] = L"urn:schemas:href";
  328. DEC_CONST INT gc_cchHrefAttribute = CchConstString (gc_wszHrefAttribute);
  329. DEC_CONST WCHAR gc_wszDavType_String[] = L"string";
  330. DEC_CONST WCHAR gc_wszDavType_Date_ISO8601[]= L"dateTime.tz";
  331. DEC_CONST WCHAR gc_wszDavType_Date_Rfc1123[]= L"dateTime.rfc1123";
  332. DEC_CONST WCHAR gc_wszDavType_Float[] = L"float";
  333. DEC_CONST WCHAR gc_wszDavType_Boolean[] = L"boolean";
  334. DEC_CONST WCHAR gc_wszDavType_Int[] = L"int";
  335. DEC_CONST WCHAR gc_wszDavType_Mvstring[] = L"mv.string";
  336. DEC_CONST WCHAR gc_wszDavType_Bin_Base64[] = L"bin.base64";
  337. DEC_CONST WCHAR gc_wszDavType_Bin_Hex[] = L"bin.hex";
  338. DEC_CONST WCHAR gc_wszDavType_I2[] = L"i2";
  339. DEC_CONST WCHAR gc_wszDavType_I8[] = L"i8";
  340. DEC_CONST WCHAR gc_wszDavType_R4[] = L"r4";
  341. DEC_CONST WCHAR gc_wszDavType_Fixed_14_4[] = L"fixed.14.4";
  342. DEC_CONST WCHAR gc_wszDavType_Uuid[] = L"uuid";
  343. DEC_CONST WCHAR gc_wszDavType_MV[] = L"mv.";
  344. DEC_CONST WCHAR gc_wszUri[] = L"uri";
  345. // multivalue property -------------------------------------------------------
  346. //
  347. DEC_CONST WCHAR gc_wszXml_V[] = L"xml:v";
  348. // URI Construction ----------------------------------------------------------
  349. //
  350. DEC_CONST CHAR gc_szUrl_Prefix[] = "http://";
  351. DEC_CONST WCHAR gc_wszUrl_Prefix[] = L"http://";
  352. DEC_CONST INT gc_cchszUrl_Prefix = CchConstString(gc_szUrl_Prefix);
  353. DEC_CONST CHAR gc_szUrl_Prefix_Secure[] = "https://";
  354. DEC_CONST WCHAR gc_wszUrl_Prefix_Secure[] = L"https://";
  355. DEC_CONST INT gc_cchszUrl_Prefix_Secure = CchConstString(gc_szUrl_Prefix_Secure);
  356. DEC_CONST WCHAR gc_wszFileScheme[] = L"file://";
  357. DEC_CONST INT gc_strlenFileScheme = CchConstString(gc_wszFileScheme);
  358. DEC_CONST WCHAR gc_wszUrl_Port_80[] = L":80";
  359. DEC_CONST INT gc_cchUrl_Port_80 = CchConstString(gc_wszUrl_Port_80);
  360. DEC_CONST WCHAR gc_wszUrl_Port_443[] = L":443";
  361. DEC_CONST INT gc_cchUrl_Port_443 = CchConstString(gc_wszUrl_Port_443);
  362. // Special metaprops ---------------------------------------------------------
  363. //
  364. DEC_CONST WCHAR gc_wszProp_ContentType[] = L"ContentType";
  365. // Performance counters ------------------------------------------------------
  366. //
  367. DEC_CONST WCHAR gc_wsz_Total[] = L"_Total";
  368. // Metabase strings ----------------------------------------------------------
  369. //
  370. DEC_CONST WCHAR gc_wsz_Lm_MimeMap[] = L"/lm/MimeMap";
  371. DEC_CONST INT gc_cch_Lm_MimeMap = CchConstString(gc_wsz_Lm_MimeMap);
  372. DEC_CONST WCHAR gc_wsz_Lm_W3Svc[] = L"/lm/w3svc";
  373. DEC_CONST INT gc_cch_Lm_W3Svc = CchConstString(gc_wsz_Lm_W3Svc);
  374. DEC_CONST WCHAR gc_wsz_Root[] = L"/root";
  375. DEC_CONST INT gc_cch_Root = CchConstString(gc_wsz_Root);
  376. DEC_CONST WCHAR gc_wsz_Star[] = L"*";
  377. // Lock strings --------------------------------------------------------------
  378. //
  379. DEC_CONST WCHAR gc_wszOpaquelocktokenPrefix[] = L"opaquelocktoken:";
  380. DEC_CONST INT gc_cchOpaquelocktokenPrefix = CchConstString(gc_wszOpaquelocktokenPrefix);
  381. DEC_CONST WCHAR gc_wszLockTypeRead[] = L"DAV:read";
  382. DEC_CONST CHAR gc_szLockTokenHeader[] = "Lock-Token";
  383. DEC_CONST WCHAR gc_wszGuidFormat[] = L"%08lX-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X";
  384. // Size in characters required for an ascii string which contains
  385. // a GUID in the swprintf'ed gc_wszGuidFormat
  386. //
  387. DEC_CONST INT gc_cchMaxGuid = 37; // Not the size of format string: size of formatted guid
  388. // CRC'd strings -------------------------------------------------------------
  389. //
  390. // IMPORTANT: if you feel the need to change any of these strings, then you
  391. // really need to re-crc it and update the value. Failure to do so will cause
  392. // unpredicitible results and possible termination (of the app, not you).
  393. //
  394. // The CRC's are maintained in the impls' meta sources
  395. #define IanaItem(_sz) \
  396. DEC_CONST WCHAR gc_wszProp_iana_##_sz[] = \
  397. L"DAV:" L#_sz; \
  398. IanaItem(getcontentencoding);
  399. IanaItem(getcontentlanguage);
  400. IanaItem(getcontentlength);
  401. IanaItem(getcontenttype);
  402. IanaItem(creationdate);
  403. IanaItem(displayname);
  404. IanaItem(getetag);
  405. IanaItem(filename);
  406. IanaItem(getlastmodified);
  407. IanaItem(externalmembers);
  408. IanaItem(resourcetype);
  409. IanaItem(ishidden);
  410. IanaItem(iscollection);
  411. enum { MAX_LOCKTOKEN_LENGTH = 256 };
  412. #endif // !_EX_SZ_H_