inotify_add_watch
Section: System Calls (2)
Updated: 30 octobre 2022
Index
Return to Main Contents
NOM
inotify_add_watch - Ajouter une surveillance à une instance inotify déjà
initialisée
BIBLIOTHÈQUE
Bibliothèque C standard (libc, -lc)
SYNOPSIS
#include <sys/inotify.h>
int inotify_add_watch(int fd, const char *pathname, uint32_t mask);
DESCRIPTION
inotify_add_watch() ajoute une surveillance, ou en modifie une existante,
sur le fichier dont le chemin est fourni dans pathname ; l'appelant doit
avoir la permission de lecture sur ce fichier. L'argument fd est un
descripteur de fichier référençant l'instance inotify dont la liste de
surveillance doit être modifiée. Les événements à surveiller sur pathname
sont indiqués dans l'argument de masque de bits mask. Consultez
inotify(7) pour une description des bits qui peuvent être positionnés
dans mask.
Un appel réussi à inotify_add_watch() renvoie un descripteur de
surveillance unique pour cette instance inotify, pour l’objet (inode) de
système de fichiers qui correspond à pathname. Si l’objet de système de
fichiers n'était pas déjà surveillé par cette instance inotify, le
descripteur de surveillance est alloué par le noyau. Si l’objet de système
de fichiers était déjà surveillé (peut-être à l’aide d’un lien différent
vers le même objet), alors le descripteur pour la surveillance existante est
renvoyé.
Le descripteur de surveillance est renvoyé par des appels ultérieurs à
read(2) sur le descripteur de fichier inotify. Ces lectures renvoient des
structures inotify_event (consultez inotify(7)) indiquant des
événements sur le système de fichiers ; le descripteur de surveillance de
cette structure identifie l'objet pour lequel un événement a eu lieu.
VALEUR RENVOYÉE
S'il réussit, inotify_add_watch() renvoie un descripteur de surveillance
(un entier positif). En cas d'erreur, il renvoie -1 et positionne
errno pour indiquer l'erreur.
ERREURS
- EACCES
-
L'accès en lecture au fichier indiqué est interdit.
- EBADF
-
Le descripteur de fichier n’est pas valable.
- EEXIST
-
mask contient IN_MASK_CREATE et pathname se rapporte à un fichier
déjà surveillé par le même fd.
- EFAULT
-
pathname pointe en dehors de l'espace d'adressage accessible.
- EINVAL
-
Le masque d'événements indiqué ne contient aucun événement valable ; ou
mask contient à la fois IN_MASK_ADD et IN_MASK_CREATE ; ou fd
n'est pas un descripteur de fichier inotify.
- ENAMETOOLONG
-
nom_chemin est trop long.
- ENOENT
-
Un des répertoires du chemin d'accès nom_chemin n'existe pas ou est un
lien symbolique pointant nulle part.
- ENOMEM
-
La mémoire disponible du noyau n'était pas suffisante.
- ENOSPC
-
La limite sur le nombre total de surveillances inotify pour l'utilisateur
est atteinte, ou le noyau n'a pas pu allouer une ressource système
nécessaire.
- ENOTDIR
-
mask contient IN_ONLYDIR et pathname n’est pas un répertoire.
VERSIONS
Inotify a été intégré dans Linux 2.6.13.
STANDARDS
Cet appel système est spécifique à Linux.
EXEMPLES
Consultez inotify(7).
VOIR AUSSI
inotify_init(2), inotify_rm_watch(2), inotify(7)
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-Philippe MENGUAL <jpmengual@debian.org>
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 à
Index
- NOM
-
- BIBLIOTHÈQUE
-
- SYNOPSIS
-
- DESCRIPTION
-
- VALEUR RENVOYÉE
-
- ERREURS
-
- VERSIONS
-
- STANDARDS
-
- EXEMPLES
-
- VOIR AUSSI
-
- TRADUCTION
-
This document was created by
man2html,
using the manual pages.
Time: 05:03:18 GMT, May 18, 2024