Provided by: manpages-fr-dev_4.27.0-1_all bug

NOM

       lockf - Poser, examiner ou supprimer un verrou POSIX sur un fichier ouvert

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <unistd.h>

       int lockf(int fd, int op, off_t len);

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

       lockf() :
           _XOPEN_SOURCE >= 500
               || /* glibc >= 2.19 : */ _DEFAULT_SOURCE
               || /* glibc <= 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 op, 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 :

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

       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 │
       └──────────────────────────────────────────────────────────────────────┴──────────────────────┴─────────┘

STANDARDS

       POSIX.1-2008.

HISTORIQUE

       POSIX.1-2001, 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.)

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>,    David    Prévot
       <david@tilapin.org> et Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>

       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.

Pages du manuel de Linux 6.9.1                     2 mai 2024                                           lockf(3)