3.27. Filename Character Sets

This section describes functionality and concerns related to pre-1.5.50 releases of OpenAFS for Windows. This release stores all file names on the file servers as Unicode encoded using UTF-8.

OpenAFS for Windows implements an SMB server which is used as a gateway to the AFS filesystem. Because of limitations of the SMB implementation in pre-1.5.50 releases, Windows stored all files into AFS using OEM code pages such as CP437 (United States) or CP850 (Western Europe). These code pages are incompatible with the ISO Latin-1 or Unicode (UTF-8) character sets typically used as the default on UNIX systems in both the United States and Western Europe. Filenames stored by OpenAFS for Windows were therefore unreadable on UNIX systems if they include any of the following characters:

[] 128 08/00 200 80 C cedilla

[] 129 08/01 201 81 u diaeresis

[] 130 08/02 202 82 e acute

[] 131 08/03 203 83 a circumflex

[] 132 08/04 204 84 a diaeresis

[] 133 08/05 205 85 a grave

[] 134 08/06 206 86 a ring

[] 135 08/07 207 87 c cedilla

[] 136 08/08 210 88 e circumflex

[] 137 08/09 211 89 e diaeresis

[] 138 08/10 212 8A e grave

[] 139 08/11 213 8B i diaeresis

[] 140 08/12 214 8C i circumflex

[] 141 08/13 215 8D i grave

[] 142 08/14 216 8E A diaeresis

[] 143 08/15 217 8F A ring

[] 144 09/00 220 90 E acute

[] 145 09/01 221 91 ae diphthong

[] 146 09/02 222 92 AE diphthong

[] 147 09/03 223 93 o circumflex

[] 148 09/04 224 94 o diaeresis

[] 149 09/05 225 95 o grave

[] 150 09/06 226 96 u circumflex

[] 151 09/07 227 97 u grave

[] 152 09/08 230 98 y diaeresis

[] 153 09/09 231 99 O diaeresis

[] 154 09/10 232 9A U diaeresis

[] 155 09/11 233 9B o slash

[] 156 09/12 234 9C Pound sterling sign

[] 157 09/13 235 9D O slash

[] 158 09/14 236 9E Multiplication sign

[ƒ] 159 09/15 237 9F Florin sign

The pre-1.5.50 OpenAFS Client provided an optional registry value, StoreAnsiFilenames, that could be set to instruct OpenAFS to store filenames using the ANSI Code Page instead of the OEM Code Page. The ANSI Code Page is a compatible superset of Latin-1. This setting is not the default setting because making this change would prevent OpenAFS for Windows from being able to access filenames containing the above characters which were created without this setting.

All versions of OpenAFS for Windows 1.5.50 and above exchange file names with Microsoft Windows using the Unicode character set. All file names are read from and stored to AFS file servers using the UTF-8 encoding of Unicode. As a result the StoreAnsiFilenames option is no longer supported.