diff options
author | Svante Signell <svante.signell@gmail.com> | 2019-10-29 23:52:55 +0100 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2019-10-29 23:54:03 +0100 |
commit | 916f1569078e9da233898694c62cd3ad039e803c (patch) | |
tree | 6a27a6249f7a49b137119bc420227ebed77400a1 /hurd/fs.defs | |
parent | 56079039e9e304a1f2ef4e61949b6ebea230bee1 (diff) |
fs: Support for file record locking
2019-02-01 Svante Signell <svante.signell@gmail.com>
* Update copyright years.
2018-01-05 Svante Signell <svante.signell@gmail.com>
* Update copyright years.
* fs.defs: Add new argument rendezvous: mach_port_send_t to RPC
file_record_lock.
2017-01-05 Svante Signell <svante.signell@gmail.com>
* Update copyright years and headers.
2016-05-23 Svante Signell <svante.signell@gmail.com>
* fs.defs: Added description.
* hurd_types.defs: Make struct flock_t seven integers long since
l_start and l_len are 64bit.
* hurd_types.h: typedef flock_t as flock64.
2001-04-10 Neal H Walfield <neal@cs.uml.edu>
* fs.defs: New RPC file_record_lock.
* hurd_types.defs: Import <fcntl.h>.
Diffstat (limited to 'hurd/fs.defs')
-rw-r--r-- | hurd/fs.defs | 39 |
1 files changed, 25 insertions, 14 deletions
diff --git a/hurd/fs.defs b/hurd/fs.defs index 1460131a..52f9cd37 100644 --- a/hurd/fs.defs +++ b/hurd/fs.defs @@ -1,23 +1,22 @@ /* Definitions for the filesystem interface. - Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2002, 2010 - Free Software Foundation, Inc. -This file is part of the GNU Hurd. + Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2002, 2010, 2014-2019 + Free Software Foundation, Inc. -The GNU Hurd is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. + This file is part of the GNU Hurd. -The GNU Hurd is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. + The GNU Hurd is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. -You should have received a copy of the GNU General Public License -along with the GNU Hurd; see the file COPYING. If not, write to -the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ + The GNU Hurd is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + You should have received a copy of the GNU General Public License + along with the GNU Hurd. If not, see <http://www.gnu.org/licenses/>. */ /* All these objects also implement the generic IO facilities. */ @@ -358,6 +357,7 @@ routine file_reparent ( skip; /* Was: file_get_children. */ skip; /* Was: file_get_source. */ + /* Overlay a task with a file. Necessary initialization, including authentication changes associated with set[ug]id execution must be handled by the filesystem. Filesystems normally implement this by @@ -386,3 +386,14 @@ routine file_utimens ( RPT new_atime: timespec_t; new_mtime: timespec_t); + +/* Do fcntl type locking on FILE. CMD is from the set F_GETLK64, + F_SETLK64, F_SETLKW64. FLOCK64 is passed by the user and is as + defined by <fcntl.h>. RENDEZVOUS is MACH_PORT_NULL for per opened + file locking and !MACH_PORT_NULL for per process file locking */ +routine file_record_lock ( + file: file_t; + RPT + cmd: int; + inout flock64: flock_t; + rendezvous: mach_port_send_t); |