Linux

CentOS 5.3

inotify_add_watch(2)


INOTIFY_ADD_WATCH

NOM

inotify_add_watch − Ajouter un surveillant sur une instance inotify initialisée.

SYNOPSIS

#include <sys/inotify.h>

int inotify_add_watch(int fd, const char *pathname, uint32_t mask);

DESCRIPTION

inotify_add_watch() ajoute un surveillant, ou en modifie un existant, sur le fichier dont le chemin est fournit 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 spécifiés dans l’argument masque de bits mask. Voir inotify(7) pour une description des bits qui peuvent être positionnés dans mask.

Un appel réussi à inotify_add_watch() renvoie le descripteur de surveillant unique associé à pathname pour cette instance inotify. Si pathname n’était pas précédemment surveillé par cette instance inotify, le descripteur de surveillant est nouvellement alloué. Si pathname était déjà surveillé, l’appel renvoie alors le descripteur du surveillant existant.

Le descripteur de surveillant est renvoyé par des lectures (read(2)) ultérieures du descripteur de fichier inotify. Ces lectures extraient les structures inotify_event indiquant les événements du système de fichiers ; le descripteur de surveillant renvoyé identifie l’objet pour lequel l’événement est survenu.

VALEUR RENVOYÃE

S’il réussit, inotify_add_watch() renvoie un descripteur de surveillant non négatif. S’il échoue, il renvoie −1 et remplit errno en conséquence.

ERREURS

EACCESS

L’accès en lecture pour le fichier fourni n’est pas autorisé.

EBADF

Le descripteur de fichier fourni n’est pas valide.

EFAULT

pathname pointe en dehors de l’espace d’adressage accessible du processus.

EINVAL

Le masque d’événement fourni ne contient aucun événement valide ; ou fd n’est pas un descripteur de fichier inotify.

ENOMEM

Mémoire insuffisante pour le noyau.

ENOSPC

La limite utilisateur sur le nombre total de surveillants inotify a été franchie ou le noyau n’a pas pu allouer une ressource nécessaire.

HISTORIQUE

Inotify a été fusionné au noyau Linux 2.6.13.

CONFORMITÃ

Cet appel système est spécifique à Linux.

VOIR AUSSI

inotify_init(2), inotify_rm_watch(2), inotify(7).

TRADUCTION

Ce document est une traduction réalisée par Alain Portal <aportal AT univ-montp2 DOT fr> le 21 juillet 2006 et révisée le 12 août 2006.

L’équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=en man 2 inotify_add_watch ». N’hésitez pas à signaler à l’auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.


inotify_add_watch(2)