INOTIFY_ADD_WATCH(2)

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

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

VERSIONS
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 10 décembre 2007.

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=C 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.