.\" -*- coding: UTF-8 -*- .\" Copyright 1997 Nicolás Lichtmaier .\" Created Thu Aug 7 00:44:00 ART 1997 .\" .\" %%%LICENSE_START(GPLv2+_DOC_FULL) .\" This is free documentation; you can redistribute it and/or .\" modify it under the terms of the GNU General Public License as .\" published by the Free Software Foundation; either version 2 of .\" the License, or (at your option) any later version. .\" .\" The GNU General Public License's references to "object code" .\" and "executables" are to be interpreted as the output of any .\" document formatting or typesetting system, including .\" intermediate and printed output. .\" .\" This manual is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public .\" License along with this manual; if not, see .\" . .\" %%%LICENSE_END .\" .\" Added section stuff, aeb, 2002-04-22. .\" Corrected include file, drepper, 2003-06-15. .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH LOCKF 3 "6 mars 2019" GNU "Manuel du programmeur Linux" .SH NOM lockf \- Poser, examiner ou supprimer un verrou POSIX sur un fichier ouvert .SH SYNOPSIS \fB#include \fP .PP \fBint lockf(int \fP\fIfd\fP\fB, int \fP\fIcmd\fP\fB, off_t \fP\fIlen\fP\fB);\fP .PP .in -4n Exigences de macros de test de fonctionnalités pour la glibc (consulter \fBfeature_test_macros\fP(7))\ : .in .PP \fBlockf\fP()\ : .ad l .RS 4 .\" || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED _XOPEN_SOURCE\ >=\ 500 || /* Glibc since 2.19: */ _DEFAULT_SOURCE || /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE .RE .ad .SH DESCRIPTION Cette fonction pose, examine, ou supprime un verrou POSIX sur un fichier ouvert. Le fichier est indiqué par \fIfd\fP, un descripteur ouvert en écriture, l'action par \fIcmd\fP, et la section par les octets aux positions \fIpos\fP..\fIpos\fP+\fIlen\fP\-1 si \fIlen\fP est positive et \fIpos\fP\-\fIlen\fP..\fIpos\fP\-1 si \fIlen\fP est négative, où \fIpos\fP est la position actuelle dans le fichier. Si \fIlen\fP 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. .PP On Linux, \fBlockf\fP() is just an interface on top of \fBfcntl\fP(2) locking. Many other systems implement \fBlockf\fP() in this way, but note that POSIX.1 leaves the relationship between \fBlockf\fP() and \fBfcntl\fP(2) locks unspecified. A portable application should probably avoid mixing calls to these interfaces. .PP Les opérations valides sont les suivantes\ : .TP \fBF_LOCK\fP 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. .TP \fBF_TLOCK\fP Comme \fBF_LOCK\fP mais l'appel n'est pas bloquant, il renvoie une erreur si le fichier est déjà verrouillé. .TP \fBF_ULOCK\fP Déverrouiller la section indiquée du fichier. Ceci peut conduire une section verrouillée à être découpée en deux sections. .TP \fBF_TEST\fP 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 \fBEAGAIN\fP (\fBEACCES\fP sur d'autres systèmes) dans \fIerrno\fP si un autre processus possède le verrou. .SH "VALEUR RENVOYÉE" En cas de succès, zéro est renvoyé. En cas d'erreur, \fB\-1\fP est renvoyé et \fIerrno\fP reçoit une valeur adéquate. .SH ERREURS .TP \fBEACCES\fP ou \fBEAGAIN\fP Le fichier est verrouillé et \fBF_TLOCK\fP ou \fBF_TEST\fP étaient indiqués, ou encore l'opération est impossible car le fichier est projetée dans la mémoire d'un autre processus. .TP \fBEBADF\fP \fIfd\fP n'est pas un descripteur de fichier ouvert, ou \fIcmd\fP vaut \fBF_LOCK\fP ou \fBF_TLOCK\fP et \fIfd\fP n'est pas un descripteur de fichier en écriture. .TP \fBEDEADLK\fP L'opération \fBF_LOCK\fP demandée amènerait à un cas d’interblocage. .TP \fBEINTR\fP Durant l'attente pour acquérir le verrou, l'appel a été interrompu par un signal capturé par un gestionnaire\ ; consultez \fBsignal\fP(7). .TP \fBEINVAL\fP Une opération invalide a été réclamée sur \fIcmd\fP. .TP \fBENOLCK\fP La table des verrous est pleine. .SH ATTRIBUTS Pour une explication des termes utilisés dans cette section, consulter \fBattributes\fP(7). .TS allbox; lb lb lb l l l. Interface Attribut Valeur T{ \fBlockf\fP() T} Sécurité des threads MT\-Safe .TE .SH CONFORMITÉ POSIX.1\-2001, POSIX.1\-2008, SVr4. .SH "VOIR AUSSI" \fBfcntl\fP(2), \fBflock\fP(2) .PP \fIlocks.txt\fP et \fImandatory\-locking.txt\fP dans le répertoire \fIDocumentation/filesystems\fP des sources du noyau Linux. (Sur d'anciens noyaux, ces fichiers se trouvent dans le répertoire \fIDocumentation\fP et \fImandatory\-locking.txt\fP est appelé \fImandatory.txt\fP.) .SH COLOPHON Cette page fait partie de la publication\ 5.04 du projet \fIman\-pages\fP 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/. .SH TRADUCTION La traduction française de cette page de manuel a été créée par Christophe Blaess , Stéphan Rafin , Thierry Vignaud , François Micaux, Alain Portal , Jean-Philippe Guérard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas François , Florentin Duneau , Simon Paillard , Denis Barbier et David Prévot . Cette traduction est une documentation libre ; veuillez vous reporter à la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License version 3 .UE 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 à .MT debian-l10n-french@lists.debian.org .ME .