There may be some confusion here over info arguments. My understanding
of info arguments comes from their use in the dynamic chapter. It it's
wrong, we need to reconcile dynamic and io. The way they are used
in dynamic is that MPI reserves the key and any implementation
that recognizes the key must implement it exactly as defined by
MPI. In that sense implementations are "guaranteed to honor
it". I assume that even in the perm argument proposal,
an implementation is allowed to ignore argument, right? Otherwise
you could not have an MPI implementation in a non-posix environment.
> 2) Since the vast majority of implementations will likely be
> in environments with a POSIX-like interface (at least in the
> near term), it provides a familiar and easy to use interface
> for the common case.
>
> Ease of use is also important.
Two comments on the ease of use argument. One is that in the short
term the POSIX interface may be likely, but I hope that in the long
term something more robust (like AFS or DFS ACLs) becomes common.
My experience, which may be different from yours, is that I have
never seen a scientific program that opened opened a file with
specific permissions. Of course most of the programs we have around
here are Fortran (possibly also the most commonly used language
for MPI programs) and setting permissions isn't an option.
I am hard pressed to think of an example where a umask wouldn't
be sufficient - i.e., where you'd want to create different files
with different permissions - at least in the realm of scientific
programming. Of course MPI isn't only for scientific computing...
For the following motivation:
> For example, the following program on my Sun
> workstation does not create a file with the permissions that
> correspond to my umask. It creates something entirely different;
> doesn't even give me read permission.
This can be considered a quality of implementation issue. Perhaps
an advice to implementors that MPI_Open should not ignore the umask?
And of course I fully support a reserved info key.
Bill