lockf(3) | Library Functions Manual | lockf(3) |
lockf - Poser, examiner ou supprimer un verrou POSIX sur un fichier ouvert
Bibliothèque C standard (libc, -lc)
#include <unistd.h>
int lockf(int fd, int cmd, off_t len);
lockf() :
_XOPEN_SOURCE >= 500 || /* glibc >= 2.19 : */ _DEFAULT_SOURCE || /* glibc <= 2.19 : */ _BSD_SOURCE || _SVID_SOURCE
Cette fonction pose, examine ou supprime un verrou POSIX sur un fichier ouvert. Le fichier est indiqué par fd, un descripteur ouvert en écriture, l'action par cmd, et la section par les octets aux positions pos..pos+len-1 si len est positive et pos-len..pos-1 si len est négative, où pos est la position actuelle dans le fichier. Si len vaut zéro, la section s'étend de la position courant à l'infini, englobant la fin de fichier et les extensions ultérieures. Dans tous les cas, la section peut s'étendre au delà de la fin du fichier.
Sous Linux, lockf() est une interface de vérrou au dessus de fcntl(2). Beaucoup d'autres systèmes implémentent lockf() de cette façon, cependant POSIX.1 ne spécifie pas la relation de vérrou entre lockf() et fcntl(2). Une application portable ne devrait pas mixer des appels à ces deux interfaces.
Les opérations valides sont les suivantes :
En cas de succès, zéro est renvoyé. En cas d'erreur, -1 est renvoyé et errno est définie pour préciser l'erreur.
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface | Attribut | Valeur |
lockf() | Sécurité des threads | MT-Safe |
POSIX.1-2001, POSIX.1-2008, SVr4.
fcntl(2), flock(2)
locks.txt et mandatory-locking.txt dans le répertoire Documentation/filesystems des sources du noyau Linux. (Sur d'anciens noyaux, ces fichiers se trouvent dans le répertoire Documentation et mandatory-locking.txt est appelé mandatory.txt.)
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org> et David Prévot <david@tilapin.org>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.
5 février 2023 | Pages du manuel de Linux 6.03 |