]>
Commit | Line | Data |
---|---|---|
4d2b74dd MK |
1 | .\" man2/inotify_add_watch.2 - inotify_add_watch man page |
2 | .\" | |
efa25b17 MK |
3 | .\" Copyright (C) 2005 Robert Love |
4 | .\" and Copyright, 2006 Michael Kerrisk | |
4d2b74dd MK |
5 | .\" |
6 | .\" This is free documentation; you can redistribute it and/or | |
7 | .\" modify it under the terms of the GNU General Public License as | |
8 | .\" published by the Free Software Foundation; either version 2 of | |
9 | .\" the License, or (at your option) any later version. | |
10 | .\" | |
11 | .\" The GNU General Public License's references to "object code" | |
12 | .\" and "executables" are to be interpreted as the output of any | |
13 | .\" document formatting or typesetting system, including | |
14 | .\" intermediate and printed output. | |
15 | .\" | |
16 | .\" This manual is distributed in the hope that it will be useful, | |
17 | .\" but WITHOUT ANY WARRANTY; without even the implied warranty of | |
18 | .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
19 | .\" GNU General Public License for more details. | |
20 | .\" | |
21 | .\" You should have received a copy of the GNU General Public | |
22 | .\" License along with this manual; if not, write to the Free | |
23 | .\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, | |
24 | .\" USA. | |
25 | .\" | |
26 | .\" 2005-07-19 Robert Love <rlove@rlove.org> - initial version | |
27 | .\" 2006-02-07 mtk, various changes | |
28 | .\" | |
29 | .TH INOTIFY_ADD_WATCH 2 2006-02-07 "Linux" "Linux Programmer's Manual" | |
30 | .SH NAME | |
31 | inotify_add_watch \- add a watch to an initialized inotify instance | |
32 | .SH SYNOPSIS | |
6e969f22 | 33 | .B #include <sys/inotify.h> |
4d2b74dd | 34 | .sp |
93440c02 | 35 | .BI "int inotify_add_watch(int " fd ", const char *" pathname ", uint32_t " mask ); |
4d2b74dd MK |
36 | .SH DESCRIPTION |
37 | .BR inotify_add_watch () | |
c13182ef | 38 | adds a new watch, or modifies an existing watch, |
dd28cb72 MK |
39 | for the file whose location is specified in |
40 | .IR pathname ; | |
41 | the caller must have read permission for this file. | |
c13182ef | 42 | The |
4d2b74dd | 43 | .I fd |
dd28cb72 MK |
44 | argument is a file descriptor referring to the |
45 | inotify instance whose watch list is to be modified. | |
46 | The events to be monitored for | |
47 | .I pathname | |
48 | are specified in the | |
49 | .I mask | |
50 | bit-mask argument. | |
4d2b74dd MK |
51 | See |
52 | .BR inotify (7) | |
53 | for a description of the bits that can be set in | |
54 | .IR mask . | |
55 | ||
56 | A successful call to | |
57 | .BR inotify_add_watch () | |
c13182ef | 58 | returns the unique watch descriptor associated with |
93440c02 | 59 | .I pathname |
4d2b74dd | 60 | for this inotify instance. |
c13182ef | 61 | If |
93440c02 | 62 | .I pathname |
4d2b74dd | 63 | was not previously being watched by this inotify instance, |
c13182ef | 64 | then the watch descriptor is newly allocated. |
4d2b74dd | 65 | If |
93440c02 | 66 | .I pathname |
4d2b74dd MK |
67 | was already being watched, then the descriptor |
68 | for the existing watch is returned. | |
69 | ||
70 | The watch descriptor is returned by later | |
71 | .BR read (2)s | |
c13182ef | 72 | from the inotify file descriptor. |
4d2b74dd MK |
73 | These reads fetch |
74 | .I inotify_event | |
c13182ef | 75 | structures indicating file system events; |
4d2b74dd MK |
76 | the returned watch descriptor identifies |
77 | the object for which the event occurred. | |
78 | .SH "RETURN VALUE" | |
79 | On success, | |
80 | .BR inotify_add_watch () | |
81 | returns a non-negative watch descriptor. | |
82 | On error \-1 is returned and | |
83 | .I errno | |
84 | is set appropriately. | |
85 | .SH ERRORS | |
86 | .TP | |
1b3fc756 | 87 | .B EACCES |
4d2b74dd MK |
88 | Read access to the given file is not permitted. |
89 | .TP | |
90 | .B EBADF | |
91 | The given file descriptor is not valid. | |
92 | .TP | |
93 | .B EFAULT | |
93440c02 | 94 | .I pathname |
4d2b74dd MK |
95 | points outside of the process's accessible address space. |
96 | .TP | |
97 | .B EINVAL | |
9f5774a9 MK |
98 | The given event mask contains no legal events; or |
99 | .I fd | |
100 | is not an inotify file descriptor. | |
4d2b74dd MK |
101 | .TP |
102 | .B ENOMEM | |
103 | Insufficient kernel memory was available. | |
104 | .TP | |
105 | .B ENOSPC | |
106 | The user limit on the total number of inotify watches was reached or the | |
107 | kernel failed to allocate a needed resource. | |
108 | .SH "HISTORY" | |
109 | Inotify was merged into the 2.6.13 Linux kernel. | |
110 | .SH "CONFORMING TO" | |
111 | This system call is Linux specific. | |
4d2b74dd MK |
112 | .SH "SEE ALSO" |
113 | .BR inotify_init (2), | |
c13182ef | 114 | .BR inotify_rm_watch (2), |
4d2b74dd | 115 | .BR inotify (7). |