about summary refs log tree commit diff
path: root/hurd/hurd/lookup.h
diff options
context:
space:
mode:
Diffstat (limited to 'hurd/hurd/lookup.h')
-rw-r--r--hurd/hurd/lookup.h34
1 files changed, 29 insertions, 5 deletions
diff --git a/hurd/hurd/lookup.h b/hurd/hurd/lookup.h
index faa35e0bf6..1d013d9537 100644
--- a/hurd/hurd/lookup.h
+++ b/hurd/hurd/lookup.h
@@ -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