Provided by: manpages-fr-dev_2.64.1-1_all bug

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);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       lockf(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 500

DESCRIPTION

       Cette fonction pose, examine,  ou  supprime  un  verrou  POSIX  sur  un
       fichier  ouvert.  Le fichier est spécifié 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, cette fonction est juste une interface pour l’appel système
       fcntl(2) (en général, les relations  entre  lockf()  et  fcntl(2)  sont
       indéterminées).

       Les opérations valides sont les suivantes :

       F_LOCK Poser  un verrou exclusif sur la section indiquée du fichier. Si
              (une partie de) la section est déjà verrouillée, l’appel  bloque
              jusqu’à  la  suppression  du  verrou  précédent.  Si  la section
              recouvre un verrou existant (du même processus), les  deux  sont
              regroupés.  Les  verrouillages sont libérés lorsque le processus
              ferme un descripteur du fichier. Un processus fils n’hérite  pas
              du verrou.

       F_TLOCK
              Comme  F_LOCK  mais  l’appel  n’est pas bloquant, il renvoie une
              erreur si le fichier est déjà verrouillé.

       F_ULOCK
              Déverrouiller la section indiquée du fichier. Ceci peut conduire
              une section verrouillée à être découpée en deux sections.

       F_TEST Vérifier  s’il  y  a un verrou : l’appel renvoie 0 si la section
              indiquée est libre ou verrouillée par le processus appelant,  et
              -1  avec  EAGAIN (EACCES sur d’autres systèmes) dans errno si un
              autre processus possède le verrou.

VALEUR RENVOYÉE

       Si elle réussit, cette  fonction  renvoie  0.  En  cas  d’erreur,  elle
       renvoie -1 et remplit errno en conséquence.

ERREURS

       EACCES ou EAGAIN
              Le fichier est verrouillé et F_TLOCK ou F_TEST étaient indiqués,
              ou encore l’opération est impossible car le fichier est projetée
              dans la mémoire d’un autre processus.

       EBADF  fd n’est pas un descripteur valide.

       EDEADLK
              L’opération T_LOCK demandée amènerait à un cas de blocage.

       EINVAL Une opération invalide a été réclamée sur fd.

       ENOLCK La table des verrous est pleine.

CONFORMITÉ À

       SVr4, POSIX.1-2001

VOIR AUSSI

       fcntl(2), flock(2)
       On peut aussi examiner locks.txt et mandatory.txt dans la documentation
       Linux /usr/src/linux/Documentation.

TRADUCTION

       Cette page de manuel a été traduite  et  mise  à  jour  par  Christophe
       Blaess  <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
       Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et  mise  à
       disposition sur http://manpagesfr.free.fr/.

       Les mises à jour et corrections de la version présente dans Debian sont
       directement gérées par Florentin Duneau <fduneau@gmail.com> et l’équipe
       francophone de traduction de Debian.

       Veuillez   signaler   toute   erreur   de   traduction  en  écrivant  à
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

       Vous  pouvez  toujours avoir accès à la version anglaise de ce document
       en utilisant la commande « man -L C <section> <page_de_man> ».