Provided by: manpages-fr-dev_4.13-4_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);

   Exigences    de    macros    de   test   de   fonctionnalités   pour   la   glibc   (consulter
   feature_test_macros(7)) :

       lockf() :
           _XOPEN_SOURCE >= 500
               || /* Glibc since 2.19: */ _DEFAULT_SOURCE
               || /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

DESCRIPTION

       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.

       On Linux, lockf()  is just an interface on top of fcntl(2)  locking.  Many  other  systems
       implement  lockf()   in  this  way,  but note that POSIX.1 leaves the relationship between
       lockf()  and fcntl(2)  locks unspecified. A portable  application  should  probably  avoid
       mixing calls to these interfaces.

       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

       En  cas  de  succès, zéro est renvoyé. En cas d'erreur, -1 est renvoyé et errno reçoit une
       valeur adéquate.

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 de fichier ouvert, ou cmd vaut F_LOCK ou F_TLOCK et  fd
              n'est pas un descripteur de fichier en écriture.

       EDEADLK
              L'opération F_LOCK demandée amènerait à un cas d’interblocage.

       EINTR  Durant  l'attente  pour  acquérir le verrou, l'appel a été interrompu par un signal
              capturé par un gestionnaire ; consultez signal(7).

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

       ENOLCK La table des verrous est pleine.

ATTRIBUTS

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).

       ┌──────────┬──────────────────────┬─────────┐
       │InterfaceAttributValeur  │
       ├──────────┼──────────────────────┼─────────┤
       │lockf()   │ Sécurité des threads │ MT-Safe │
       └──────────┴──────────────────────┴─────────┘

CONFORMITÉ

       POSIX.1-2001, POSIX.1-2008, SVr4.

VOIR AUSSI

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

COLOPHON

       Cette page fait partie de la publication 5.10 du projet man-pages Linux.  Une  description
       du  projet et des instructions pour signaler des anomalies et la dernière version de cette
       page peuvent être trouvées à l'adresse https://www.kernel.org/doc/man-pages/.

TRADUCTION

       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  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   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 ⟨⟩.