Provided by: manpages-fr-dev_4.15.0-9_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 <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

DESCRIPTION

       Apply, test, or remove a POSIX lock on a section of an open file. The file is specified by
       fd,  a  file  descriptor  open for writing, the action by cmd, and the section consists of
       byte positions pos..pos+len-1 if len is positive, and pos-len..pos-1 if len  is  negative,
       where  pos  is the current file position, and if len is zero, the section extends from the
       current file position  to  infinity,  encompassing  the  present  and  future  end-of-file
       positions. In all cases, the section may extend past current end-of-file.

       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  est  définie
       pour préciser l'erreur.

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.13 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⟩.