'\" te .\" Copyright (c) 2014, Joyent, Inc. All Rights Reserved. .\" This file and its contents are supplied under the terms of the .\" Common Development and Distribution License ("CDDL"), version 1.0. .\" You may only use this file in accordance with the terms of version .\" 1.0 of the CDDL. .\" .\" A full copy of the text of the CDDL should have accompanied this .\" source. A copy of the CDDL is also available via the Internet at .\" http://www.illumos.org/license/CDDL. .TH INOTIFY_ADD_WATCH 3C "Sep 17, 2014" .SH NAME inotify_add_watch \- add a watch to an inotify instance .SH SYNOPSIS .LP .nf #include \fBint\fR \fBinotify_add_watch\fR(\fBint\fR \fIfd\fR, \fBconst char *\fR\fIpathname\fR, \fBuint32_t\fR \fImask\fR); .fi .SH DESCRIPTION .sp .LP The \fBinotify_add_watch()\fR function adds a watch for the file or directory specified by \fIpathname\fR to the inotify instance specified by \fIfd\fR for the events specified by \fImask\fR. See \fBinotify\fR(5) for details on the meaning of \fImask\fR, how it affects the interpretation of \fIpathname\fR, and how events for the watched file or directory are subsequently retrieved via \fBread\fR(2). .SH RETURN VALUES .sp .LP Upon succesful completion, \fBinotify_add_watch()\fR returns the watch descriptor associated with the new watch. If an error occurs, -1 is returned and errno is set to indicate the error. .SH ERRORS .sp .LP \fBinotify_add_watch()\fR will fail if: .sp .ne 2 .na \fB\fBEACCES\fR\fR .ad .RS 10n \fIpathname\fR could not be opened for reading. .RE .sp .ne 2 .na \fB\fBEBADF\fR\fR .ad .RS 10n The \fIfd\fR argument is not a valid open file descriptor. .RE .sp .ne 2 .na \fB\fBEFAULT\fR\fR .ad .RS 10n The memory associated with \fIpathname\fR was not mapped. .RE .sp .ne 2 .na \fB\fBEINVAL\fR\fR .ad .RS 10n The \fIfd\fR argument does not correspond to an \fBinotify\fR(5) instance as initialized with \fBinotify_init\fR(3C) or \fBinotify_init1\fR(3C). .RE .sp .ne 2 .na \fB\fBENOSPC\fR\fR .ad .RS 10n The number of watches on the specified instance would exceed the maximum number of watches per \fBinotify\fR(5) instance. .RE .sp .ne 2 .na \fB\fBENOTDIR\fR\fR .ad .RS 10n \fIpathname\fR does not correspond to a directory and \fBIN_ONLYDIR\fR was specified in \fImask\fR. .RE .sp .SH NOTES .sp .LP While the \fBinotify\fR(5) facility is implemented for purposes of offering compatibility for Linux-borne applications, native applications may opt to use it instead of (or in addition to) the \fBPORT_SOURCE_FILE\fR capability of event ports. See \fBinotify\fR(5) for details and restrictions. .SH SEE ALSO .sp .LP \fBinotify_init\fR(3C), \fBinotify_init1\fR(3C), \fBport_create\fR(3C), \fBport_associate\fR(3C), \fBport_get\fR(3C), \fBinotify\fR(5)