]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
2002-05-08 Roland McGrath <roland@frob.com>
authorRoland McGrath <roland@gnu.org>
Wed, 8 May 2002 22:01:27 +0000 (22:01 +0000)
committerRoland McGrath <roland@gnu.org>
Wed, 8 May 2002 22:01:27 +0000 (22:01 +0000)
* hurd/hurdfchdir.c (_hurd_change_directory_port_from_fd): Use
O_NOTRANS flag in "." lookup.

hurd/hurdfchdir.c

index 47ff55b9c1849b7d6c96882a1799ab2d02ff6c1e..2e6a120c536b828b276edd08f9ae840471d1b5ec 100644 (file)
@@ -1,5 +1,5 @@
 /* Change a port cell to a directory in an open file descriptor.
-   Copyright (C) 1999 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -38,8 +38,11 @@ _hurd_change_directory_port_from_fd (struct hurd_port *portcell, int fd)
   ret = HURD_PORT_USE (&d->port,
                       ({
                         int ret;
+                        /* We look up "." to force ENOTDIR if it's not a
+                           directory and EACCES if we don't have search
+                           permission.  */
                         file_t dir = __file_name_lookup_under (port, ".",
-                                                               0, 0);
+                                                               O_NOTRANS, 0);
                         if (dir == MACH_PORT_NULL)
                           ret = -1;
                         else