diff options
author | Ulrich Drepper <drepper@gmail.com> | 2011-04-01 10:33:37 -0400 |
---|---|---|
committer | Ulrich Drepper <drepper@gmail.com> | 2011-04-01 10:33:37 -0400 |
commit | 158648c0bdda281e252a27c0200dd0ea6f4e0215 (patch) | |
tree | af62ea68c271feb58cd745679553803dc47687a3 /sysdeps/unix/sysv/linux/sh/bits | |
parent | 46998f745736b3c8df5901a27b6c2a19f5cc5e98 (diff) | |
download | glibc-158648c0bdda281e252a27c0200dd0ea6f4e0215.tar glibc-158648c0bdda281e252a27c0200dd0ea6f4e0215.tar.gz glibc-158648c0bdda281e252a27c0200dd0ea6f4e0215.tar.bz2 glibc-158648c0bdda281e252a27c0200dd0ea6f4e0215.zip |
Add support for name_to_handle_at and open_by_handle.
Diffstat (limited to 'sysdeps/unix/sysv/linux/sh/bits')
-rw-r--r-- | sysdeps/unix/sysv/linux/sh/bits/fcntl.h | 55 |
1 files changed, 48 insertions, 7 deletions
diff --git a/sysdeps/unix/sysv/linux/sh/bits/fcntl.h b/sysdeps/unix/sysv/linux/sh/bits/fcntl.h index df21f6af42..35f30f9e7b 100644 --- a/sysdeps/unix/sysv/linux/sh/bits/fcntl.h +++ b/sysdeps/unix/sysv/linux/sh/bits/fcntl.h @@ -1,5 +1,5 @@ -/* O_*, F_*, FD_* bit values for Linux. - Copyright (C) 1995, 1996, 1997, 1998, 2000, 2004, 2006, 2007, 2009, 2010 +/* O_*, F_*, FD_* bit values for Linux/SH. + Copyright (C) 1995-1998, 2000, 2004, 2006, 2007, 2009, 2010, 2011 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -233,6 +233,19 @@ struct f_owner_ex we splice from/to). */ # define SPLICE_F_MORE 4 /* Expect more data. */ # define SPLICE_F_GIFT 8 /* Pages passed in are a gift. */ + + +/* File handle structure. */ +struct file_handle +{ + unsigned int handle_bytes; + int handle_type; + /* File identifier. */ + unsigned char f_handle[0]; +}; + +/* Maximum handle size (for now). */ +# define MAX_HANDLE_SZ 128 #endif __BEGIN_DECLS @@ -244,25 +257,40 @@ extern ssize_t readahead (int __fd, __off64_t __offset, size_t __count) __THROW; -/* Selective file content synch'ing. */ +/* Selective file content synch'ing. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ extern int sync_file_range (int __fd, __off64_t __offset, __off64_t __count, unsigned int __flags); -/* Splice address range into a pipe. */ +/* Splice address range into a pipe. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ extern ssize_t vmsplice (int __fdout, const struct iovec *__iov, size_t __count, unsigned int __flags); -/* Splice two files together. */ +/* Splice two files together. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ extern ssize_t splice (int __fdin, __off64_t *__offin, int __fdout, __off64_t *__offout, size_t __len, unsigned int __flags); -/* In-kernel implementation of tee for pipe buffers. */ +/* In-kernel implementation of tee for pipe buffers. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ extern ssize_t tee (int __fdin, int __fdout, size_t __len, unsigned int __flags); -/* Reserve storage for the data of the file associated with FD. */ +/* Reserve storage for the data of the file associated with FD. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ # ifndef __USE_FILE_OFFSET64 extern int fallocate (int __fd, int __mode, __off_t __offset, __off_t __len); # else @@ -279,6 +307,19 @@ extern int fallocate64 (int __fd, int __mode, __off64_t __offset, __off64_t __len); # endif + +/* Map file name to file handle. */ +extern int name_to_handle_at (int __dfd, const char *__name, + struct file_handle *__handle, int *__mnt_id, + int __flags) __THROW; + +/* Open file using the file handle. + + This function is a possible cancellation point and therefore not + marked with __THROW. */ +extern int open_by_handle (int __mountdirfd, struct file_handle *__handle, + int __flags); + #endif __END_DECLS |