The next patch I am testing is to add a new flag to rmsexpand to tell it
that the input file is already in VMS format, so not to waste the cycles
to vmsify it.
And then also convert cando_by_name to be cando_by_name_int() where
cando_by_name_int accepts an additional parameter that tells it that the
name is already in VMS format.
The cached name that Perl_cando is testing is already in VMS format so
it will call cando_by_name_int with that parameter set.
Next will be to start updating unixify/vmsify to better handle EFS file
specifications.
It looks like I will need a feature switch/logical name to determine if
characters with the high bit set in UNIX format file specifications are
in DECMCS format or in UTF-8 format. That will require me to convert
VTF-7 to UTF-8 and back. VTF-7 is the ASCII-HEX representation of UCS-2
prefixed with a "^U" sequence. I still do not have the conversion right
in vms.c
It seems to me that VMS file specs in VTF-7 format should be converted
to UNIX file specifications in UTF-8 format.
It also appears that the interfaces to/from perl for filenames need to
return or set the byte length and if the string is in Unicode. I have
not yet figured out how to do that.
Of course the VMS C RTL can not handle UTF-8 filenames, so all calls to
the CRTL would need UTF-8 filenames converted through rmsexpand().
-John
[EMAIL PROTECTED]
Personal Opinion Only