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.

148 lines
2.4 KiB

  1. /*
  2. Copyright (c) 1992 Microsoft Corporation
  3. Module Name:
  4. macansi.h
  5. Abstract:
  6. This module contains prototypes for ANSI to UNICODE conversion routines.
  7. Author:
  8. Jameel Hyder (microsoft!jameelh)
  9. Revision History:
  10. 10 Jul 1992 Initial Version
  11. Notes: Tab stop: 4
  12. --*/
  13. #ifndef _MACANSI_
  14. #define _MACANSI_
  15. extern
  16. NTSTATUS FASTCALL
  17. AfpGetMacCodePage(
  18. IN LPWSTR PathCP
  19. );
  20. extern
  21. NTSTATUS
  22. AfpMacAnsiInit(
  23. VOID
  24. );
  25. extern
  26. VOID
  27. AfpMacAnsiDeInit(
  28. VOID
  29. );
  30. extern
  31. NTSTATUS FASTCALL
  32. AfpConvertStringToUnicode(
  33. IN PANSI_STRING pAnsiString,
  34. OUT PUNICODE_STRING pUnicodeString
  35. );
  36. extern
  37. NTSTATUS FASTCALL
  38. AfpConvertStringToAnsi(
  39. IN PUNICODE_STRING pUnicodeString,
  40. OUT PANSI_STRING pAnsiString
  41. );
  42. extern
  43. NTSTATUS FASTCALL
  44. AfpConvertStringToMungedUnicode(
  45. IN PANSI_STRING pAnsiString,
  46. OUT PUNICODE_STRING pUnicodeString
  47. );
  48. extern
  49. NTSTATUS FASTCALL
  50. AfpConvertMungedUnicodeToAnsi(
  51. IN PUNICODE_STRING pUnicodeString,
  52. OUT PANSI_STRING pAnsiString
  53. );
  54. extern
  55. AFPSTATUS FASTCALL
  56. AfpConvertMacAnsiToHostAnsi(
  57. IN OUT PANSI_STRING pAnsiString
  58. );
  59. extern
  60. VOID FASTCALL
  61. AfpConvertHostAnsiToMacAnsi(
  62. IN OUT PANSI_STRING pAnsiString
  63. );
  64. extern
  65. BOOLEAN FASTCALL
  66. AfpEqualUnicodeString(
  67. IN PUNICODE_STRING String1,
  68. IN PUNICODE_STRING String2
  69. );
  70. extern
  71. BOOLEAN FASTCALL
  72. AfpPrefixUnicodeString(
  73. IN PUNICODE_STRING String1,
  74. IN PUNICODE_STRING String2
  75. );
  76. extern
  77. BOOLEAN FASTCALL
  78. AfpIsProperSubstring(
  79. IN PUNICODE_STRING pString,
  80. IN PUNICODE_STRING pSubString
  81. );
  82. extern
  83. BOOLEAN FASTCALL
  84. AfpIsLegalShortname(
  85. IN PANSI_STRING pShortName
  86. );
  87. extern
  88. PCHAR
  89. AfpStrChr(
  90. IN PBYTE String,
  91. IN DWORD StringLen,
  92. IN BYTE Char
  93. );
  94. // HACK: Space and Period are also mapped BUT ONLY if they occur at end
  95. #define ANSI_SPACE ' '
  96. #define ANSI_PERIOD '.'
  97. #define ANSI_APPLE_CHAR 0xF0
  98. #define UNICODE_SPACE L' '
  99. #define UNICODE_PERIOD L'.'
  100. GLOBAL WCHAR AfpMungedUnicodeSpace EQU 0;
  101. GLOBAL WCHAR AfpMungedUnicodePeriod EQU 0;
  102. #ifdef _MACANSI_LOCALS
  103. // Invalid NtFs characters are mapped starting at this value
  104. #define AFP_INITIAL_INVALID_HIGH 0x20
  105. #define AFP_INVALID_HIGH 0x7F
  106. #define AFP_ALT_UNICODE_BASE 0xF000
  107. LOCAL PWCHAR afpAltUnicodeTable = NULL;
  108. LOCAL PBYTE afpAltAnsiTable = NULL;
  109. LOCAL WCHAR afpLastAltChar = AFP_ALT_UNICODE_BASE + AFP_INITIAL_INVALID_HIGH;
  110. LOCAL WCHAR afpAppleUnicodeChar = 0;
  111. #endif // _MACANSI_LOCALS
  112. #endif // _MACANSI_
  113.