Print

Print


On Thu, Sep 6, 2012 at 1:40 PM, Neil Millar <[log in to unmask]> wrote:
> I forgot to mention, the nfs server is solaris. clients are linux.
>
> nfs4 and ro doesn't work on RH5 or 6. All other combinations of nfs and
> ro/rw work.
>

I think you need to test a simple open of that file from C with
O_RDONLY|O_CREAT. ENOTDIR is not something that we should be getting
when opening a file. It suggests that the OS can't walk up the path
and validate that it is looking at directories.

> The dev version and 2 previous release versions give this error.

I'm not convinced it's a Starlink error.

We use g95 for our centos 5 builds as the gfortran that comes by
default is too old. On Centos6 we will switch to gfortran.

A quick test OPEN with STATUS='OLD' shows me that

 1. gfortran first tries open with O_RDWR and then uses O_RDONLY when
it can't open RDWR.
 2. g95 first uses access() to see if it can read the file and then
uses O_RDONLY|O_CREAT

I think #1 is technically more correct as access doesn't always tell
you whether you really can write to a file. Adding ACTION='READ' [1]
to the OPEN command simply shortcircuits the access/RDWR tests above
and goes straight to O_RDONLY. The main difference is that gfortran
doesn't add the (very odd) O_CREAT flag.

So we really really need a simple C program to test your system.

[1] I hadn't seen the ACTION='READ' option so now I clearly need to
add a configure test for it so that all the VMS READONLY extensions in
the code can open the files readonly.

-- 
Tim Jenness

----
Starlink User Support list
For list configuration, including subscribing to and unsubscribing from the list, see
https://www.jiscmail.ac.uk/cgi-bin/webadmin?A0=STARLINK