As a follow up, Unicode builds of OpenAFS for Windows are now available
for private testing on all 32-bit and 64-bit Windows operating systems.
I am seeking individuals and organizations that wish they could use
non-ascii characters in their file and directory names to perform testing. Sites making use of roaming profiles and folder redirection
to AFS volumes are especially desired.

We would also like to hear from users that make use of Hebrew, Arabic,
and any of the CJK languages.  File and directory names making use of
any Unicode included characters should work.

Please contact me off list to obtain access to the builds.  I believe
they are ready for production use but want to obtain confirmation
before we start to issue official releases.

On a technical note, the OAFW cache manager now stores file names
as UTF-16 strings within the SMB, DNLC, and Btree modules. Normalization is only used for lookup in the DNLC and Btree modules.
Normalized names are never sent to the file server nor displayed
to the end user.

Note 1: There is no Unicode normalization support for Windows 2000.
As a result it is possible for a name in the directory to be visible
and yet be impossible to access.  In fact, attempts to create a file
of the same name will in fact result in a second file being created
with a different combination of Unicode code points.

Note 2: The fonts that ship with U.S. versions of Windows prior to
Vista are quite poorly populated.   The result is that many valid
Unicode names cannot be displayed as anything but substitution
characters.

Thanks to Asanka Herath for much of the hard work that has gone into
making this transition.

Jeffrey Altman


Jeffrey Altman wrote:
Secure Endpoints has been working on adding Unicode support to the
Windows cache manager.

What we have done is updated the SMB Server to process Unicode names in
UTF-16.  All UTF-16 strings are then converted to UTF-8 for storage
within the cache manager and when storing to the AFS file server.  This
will be interoperable with all UNIX/Linux platforms that use UTF-8 as
the locale.

We are going to update fs.exe and the explorer shell extension to send
tagged UTF-8 file names over the pioctl interface.  This way the cache
manager can distinguish between UTF-8 and ANSI character strings in case
a system has applications on the system other than those that ship with
OpenAFS that make use of the pioctl() interface.  Such as JPSoftware's
4NT or Take Command.

We also plan to add an "fs smbunicode" function to permit the SMB Server
to be transitioned between Unicode and OEM modes.  This might be
necessary to assist in accessing file names that are currently 8-bit OEM
that will no longer be accessible via Unicode.  I don't have a good way
for end users to translate names from OEM to UTF-8.

I have private builds available for 32-bit Windows that now speak
Unicode.  If you are in an organization that makes use of Unicode object
names and can help in testing.  Please contact me privately.

Thanks.

Jeffrey Altman

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to