[Info-vax] Looking into C-include files on VMS
John E. Malmberg
wb8tyw at qsl.network
Fri Oct 30 09:43:47 EDT 2009
Joerg Schilling wrote:
> In article <fb6670fc-aac0-4d28-abf1-e7c3c51fcddc at n35g2000yqm.googlegroups.com>,
> Steven Schweda <sms.antinode at gmail.com> wrote:
>> John E. Malmberg wrote:
>>
>>> [...]
>>> As long as you are doing an update:
>>>
>>> mkiosf is assuming that the host system has the "." and ".." special
>>> directories and exits with an error if they are not present.
>>> [...]
>> As usual, a _useful_ problem report would include data like
>> the program version, its origin, and how it was used. The
>> notes in my latest kit, for example, say:
>
> It seems that he misinterprets the POSIX standard.
>
> - POSIX does not require that a readdir() operation will return
> entries for "." and "..".
I was referring to the X/Open documentation, not POSIX. VMS does not
return entries for "." and ".." from readdir().
But that does not conflict with what I originally posted.
> - POSIX however requires that "." and ".." are "understood" by the
> filesystem in case that there are no explicit entries for "." and
> ".." in the directories of that filesystem.
The VMS CRTL will accept "." and ".." as expected when calling a routine
that knows it is dealing with a directory specification.
If it is dealing with a file specification that could not be a directory
it will treat them as files named "." and "..". So it is possible on
VMS to create files and directories that in UNIX syntax have the same name.
Again, this does not conflict with what I originally posted.
> - The ISO 9660 standard definitely does require directory entries
> for "." and "..". ISO 9660 defines the name to be used internally
> for "." to be the NULL character with the file name length set to 1.
> ISO 9660 defines the name to be used internally for ".." to be
> the character '\001' (CONTROL-A) with the file name length set to 1.
When I looked at the ISO 9660 standard, I did not see that. I was
paying more attention to what was needed for making a dual format ISO
9660 / ODS-2 volume.
> Cleanly written software usually skips the entries for "." and ".." in case
> they apear as a return from readdir(). Mkisofs was not clean in former times
> but has been fixed for this problem a long time ago (IIRC in August 2006).
It was about 2005 that I needed a more current port of mkiosf for
Alpha/VMS for an internal project.
-John
wb8tyw at qsl.network
Personal Opinion Only
More information about the Info-vax
mailing list