[an error occurred while processing this directive]

HP OpenVMS Systems

ask the wizard
Content starts here

C translation of UNIX file names?

» close window

The Question is:

 
The various file opening functions in the C runtime library very helpfully
accept both VMS and Unix style filenames. This is a good thing. However,
there's one quirk to the filename translation that's terribly annoying.
 
When passed a filespec of the form /foo/bar.dat, the C RTL will translate
that to foo:bar.dat. Fair enough. And when passed a filespec of the form
foo/bar.dat, it'll translate that to [.foo]bar.dat. Also fair enough.
Except... If there's a logical foo def
ined, foo/bar.dat will turn into foo:bar.dat even if there's a foo
subdirectory at hand.
 
Is there any way to convince the RTL that foo/bar.dat should *always* be
turned to [.foo]bar.dat? Some magic logical or compile time option or
something? I'd hate to have to change the code to unconditionally prepend ./
in front of all the relative Unix f
ilespecs, as this'll make the affected code (perl :) a bit bigger and
slower.
 
 


The Answer is :

 
  A mechanism to provide this capability will be available in an ECO kit
  for the C RTL, and will be included in future OpenVMS releases.
 

answer written or last revised on ( 17-AUG-1999 )

» close window