OSDN Git Service

Wire up vmsplice, splice and tee for arm.
authorKhem Raj <kraj@mvista.com>
Sat, 3 May 2008 05:44:30 +0000 (05:44 -0000)
committerKhem Raj <kraj@mvista.com>
Sat, 3 May 2008 05:44:30 +0000 (05:44 -0000)
libc/sysdeps/linux/arm/bits/fcntl.h

index 1153d27..ad05b53 100644 (file)
@@ -1,5 +1,6 @@
 /* O_*, F_*, FD_* bit values for Linux.
-   Copyright (C) 1995-1998, 2000, 2004, 2006 Free Software Foundation, Inc.
+   Copyright (C) 1995-1998, 2000, 2004, 2006, 2007, 2008
+   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
@@ -49,6 +50,7 @@
 # define O_NOFOLLOW    0100000 /* Do not follow links.  */
 # define O_DIRECT      0200000 /* Direct disk access.  */
 # define O_NOATIME     01000000 /* Do not set atime.  */
+# define O_CLOEXEC     02000000 /* Set close_on_exec.  */
 #endif
 
 /* For now Linux has synchronisity options for data and read operations.
 # define F_SETLEASE    1024    /* Set a lease.  */
 # define F_GETLEASE    1025    /* Enquire what lease is active.  */
 # define F_NOTIFY      1026    /* Request notfications on a directory.  */
+# define F_DUPFD_CLOEXEC 1030  /* Duplicate file descriptor with
+                                  close-on-exit set.  */
 #endif
 
-/* For F_[GET|SET]FL.  */
+/* For F_[GET|SET]FD.  */
 #define FD_CLOEXEC     1       /* actually anything with low bit set goes */
 
 /* For posix fcntl() and `l_type' field of a `struct flock' for lockf().  */
@@ -212,25 +216,24 @@ __BEGIN_DECLS
 extern ssize_t readahead (int __fd, __off64_t __offset, size_t __count)
     __THROW;
 
-
 #if 0
 /* Selective file content synch'ing.  */
 extern int sync_file_range (int __fd, __off64_t __from, __off64_t __to,
                            unsigned int __flags);
-
+#endif
 
 /* Splice address range into a pipe.  */
-extern int vmsplice (int __fdout, const struct iovec *__iov, size_t __count,
-                    unsigned int __flags);
+extern ssize_t vmsplice (int __fdout, const struct iovec *__iov,
+                        size_t __count, unsigned int __flags);
 
 /* Splice two files together.  */
-extern int splice (int __fdin, int __fdout, size_t __len, unsigned int __flags)
-    __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.  */
-extern int tee (int __fdin, int __fdout, size_t __len, unsigned int __flags)
-    __THROW;
-#endif
+extern ssize_t tee (int __fdin, int __fdout, size_t __len,
+                   unsigned int __flags);
 
 #endif