Provided by:
manpages-fr-dev_3.32d0.2p4-1_all 
NOM
lockf - Poser, examiner ou supprimer un verrou POSIX sur un fichier
ouvert
SYNOPSIS
#include <unistd.h>
int lockf(int fd, int cmd, off_t len);
Exigences de macros de test de fonctionnalites pour la glibc (consultez
feature_test_macros(7)) :
lockf() :
_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 500 ||
_XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED
DESCRIPTION
Cette fonction pose, examine, ou supprime un verrou POSIX sur un
fichier ouvert. Le fichier est specifie par fd, un descripteur ouvert
en ecriture, 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 negative, ou pos est la position actuelle dans le fichier. Si len
vaut zero, la section s'etend de la position courant a l'infini,
englobant la fin de fichier et les extensions ulterieures. Dans tous
les cas, la section peut s'etendre au dela de la fin du fichier.
Sous Linux, lockf() est une interface de verrou au dessus de fcntl(2).
Beaucoup d'autres systemes implementent lockf() de cette facon,
cependant POSIX.1-2001 ne specifie pas la relation de verrou entre
lockf() et fcntl(2). Une application portable ne devrait pas mixer des
appels a ces deux interfaces.
Les operations valides sont les suivantes :
F_LOCK Poser un verrou exclusif sur la section indiquee du fichier. Si
(une partie de) la section est deja verrouillee, l'appel bloque
jusqu'a la suppression du verrou precedent. Si la section
recouvre un verrou existant (du meme processus), les deux sont
regroupes. Les verrouillages sont liberes lorsque le processus
ferme un descripteur du fichier. Un processus fils n'herite pas
du verrou.
F_TLOCK
Comme F_LOCK mais l'appel n'est pas bloquant, il renvoie une
erreur si le fichier est deja verrouille.
F_ULOCK
Deverrouiller la section indiquee du fichier. Ceci peut conduire
une section verrouillee a etre decoupee en deux sections.
F_TEST Verifier s'il y a un verrou : l'appel renvoie 0 si la section
indiquee est libre ou verrouillee par le processus appelant, et
-1 avec EAGAIN (EACCES sur d'autres systemes) dans errno si un
autre processus possede le verrou.
VALEUR RENVOY'EE
S'il reussit, cet appel systeme renvoie 0. S'il echoue, il renvoie -1
et remplit errno en consequence.
ERREURS
EACCES ou EAGAIN
Le fichier est verrouille et F_TLOCK ou F_TEST etaient indiques,
ou encore l'operation est impossible car le fichier est projetee
dans la memoire d'un autre processus.
EBADF fd n'est pas un descripteur de fichier ouvert.
EDEADLK
L'operation T_LOCK demandee amenerait a un cas de blocage.
EINVAL Une operation invalide a ete reclamee sur fd.
ENOLCK La table des verrous est pleine.
CONFORMIT'E
SVr4, POSIX.1-2001.
VOIR AUSSI
fcntl(2), flock(2)
Il existe aussi locks.txt et mandatory-locking.txt dans le repertoire
Documentation/filesystems des sources du noyau (sur d'anciens noyaux,
ces fichiers se trouvent dans le repertoire Documentation/ et
mandatory-locking.txt est appele mandatory.txt).
COLOPHON
Cette page fait partie de la publication 3.32 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent etre trouvees a l'adresse
<URL:http://www.kernel.org/doc/man-pages/>.
TRADUCTION
Depuis 2010, cette traduction est maintenue a l'aide de l'outil po4a
<URL:http://po4a.alioth.debian.org/> par l'equipe de traduction
francophone au sein du projet perkamon
<URL:http://perkamon.alioth.debian.org/>.
Christophe Blaess <URL:http://www.blaess.fr/christophe/> (1996-2003),
Alain Portal <URL:http://manpagesfr.free.fr/> (2003-2006). Florentin
Duneau et l'equipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en ecrivant a
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir acces a la version anglaise de ce document
en utilisant la commande << man -L C <section> <page_de_man> >>.