2006-03-05 Roland McGrath <roland@frob.com>
authorroland <roland>
Mon, 6 Mar 2006 07:58:55 +0000 (07:58 +0000)
committerroland <roland>
Mon, 6 Mar 2006 07:58:55 +0000 (07:58 +0000)
* hurd/hurd/lookup.h: Declare {,__}hurd_directory_name_split.

hurd/hurd/lookup.h

index faa35e0..1d013d9 100644 (file)
@@ -1,5 +1,5 @@
 /* Declarations of file name translation functions for the GNU Hurd.
-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 2006 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
@@ -76,8 +76,8 @@ error_t __hurd_file_name_split (error_t (*use_init_port)
                                  (int which,
                                   error_t (*operate) (mach_port_t)),
                                file_t (*get_dtable_port) (int fd),
-                               error_t (*lookup)
-                                 (file_t dir, char *name, int flags, mode_t mode,
+                               error_t (*lookup) (file_t dir, char *name,
+                                                  int flags, mode_t mode,
                                   retry_type *do_retry, string_t retry_name,
                                   mach_port_t *result),
                                const char *file_name,
@@ -86,13 +86,37 @@ error_t hurd_file_name_split (error_t (*use_init_port)
                                (int which,
                                 error_t (*operate) (mach_port_t)),
                              file_t (*get_dtable_port) (int fd),
-                             error_t (*lookup)
-                               (file_t dir, char *name, int flags, mode_t mode,
+                             error_t (*lookup) (file_t dir, char *name,
+                                                int flags, mode_t mode,
                                 retry_type *do_retry, string_t retry_name,
                                 mach_port_t *result),
                              const char *file_name,
                              file_t *dir, char **name);
 
+/* Split DIRECTORY into a parent directory and a name within the directory.
+   This is the same as hurd_file_name_split, but ignores trailing slashes.  */
+
+error_t __hurd_directory_name_split (error_t (*use_init_port)
+                                 (int which,
+                                  error_t (*operate) (mach_port_t)),
+                               file_t (*get_dtable_port) (int fd),
+                               error_t (*lookup) (file_t dir, char *name,
+                                                  int flags, mode_t mode,
+                                  retry_type *do_retry, string_t retry_name,
+                                  mach_port_t *result),
+                               const char *directory_name,
+                               file_t *dir, char **name);
+error_t hurd_directory_name_split (error_t (*use_init_port)
+                                  (int which,
+                                   error_t (*operate) (mach_port_t)),
+                                  file_t (*get_dtable_port) (int fd),
+                                  error_t (*lookup) (file_t dir, char *name,
+                                                     int flags, mode_t mode,
+                                   retry_type *do_retry, string_t retry_name,
+                                   mach_port_t *result),
+                                  const char *directory_name,
+                                  file_t *dir, char **name);
+
 
 /* Process the values returned by `dir_lookup' et al, and loop doing
    `dir_lookup' calls until one returns FS_RETRY_NONE.  The arguments