opening symlinks with O_CREAT under latest 2.5.74

From: Petr Vandrovec (vandrove@vc.cvut.cz)
Date: Mon Jul 07 2003 - 10:46:28 EST


Hi,
  couple of things stopped working on my box
where I have /dev/vc/XX as symlinks to /dev/ttyXX, and some
things use /dev/vc/XX and some /dev/ttyXX. After last update
hour ago things which use /dev/vc/XX stopped working for
non-root - they now fail with EACCES error if they attempt
to redirect its input or output through '>' or '<>' bash
redirection operators:

$ touch /tmp/xx
$ ln -s /tmp/xx yy
$ cat > yy
-bash: yy: Permission denied

Strace says:

[pid 3268] open("yy", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = -1 EACCES (Permission denied)

This command succeeds on kernel from thursday. Simillar problem is
that

$ rm /tmp/xx
$ ln -s /tmp/xx yy
$ cat > yy
-bash: yy: No such file or directory

while it creates /tmp/xx file on older kernels.

  Currently I suspect Trond's LOOKUP_CONTINUE change in
'[PATCH] Add open intent information to the 'struct nameidata', but I
did not tried reverting it yet to find whether it is culprit or no. But
other changes than these four from Trond looks completely innocent.
                                        Thanks,
                                                Petr Vandrovec
                                                vandrove@vc.cvut.cz

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Jul 07 2003 - 22:00:29 EST