Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/include/uapi/linux/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 3 kB image not shown  

Quelle  inotify.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
/*
 * Inode based directory notification for Linux
 *
 * Copyright (C) 2005 John McCutchan
 */


#ifndef _UAPI_LINUX_INOTIFY_H
#define _UAPI_LINUX_INOTIFY_H

/* For O_CLOEXEC and O_NONBLOCK */
#include <linux/fcntl.h>
#include <linux/types.h>

/*
 * struct inotify_event - structure read from the inotify device for each event
 *
 * When you are watching a directory, you will receive the filename for events
 * such as IN_CREATE, IN_DELETE, IN_OPEN, IN_CLOSE, ..., relative to the wd.
 */

struct inotify_event {
 __s32  wd;  /* watch descriptor */
 __u32  mask;  /* watch mask */
 __u32  cookie;  /* cookie to synchronize two events */
 __u32  len;  /* length (including nulls) of name */
 char  name[]; /* stub for possible name */
};

/* the following are legal, implemented events that user-space can watch for */
#define IN_ACCESS  0x00000001 /* File was accessed */
#define IN_MODIFY  0x00000002 /* File was modified */
#define IN_ATTRIB  0x00000004 /* Metadata changed */
#define IN_CLOSE_WRITE  0x00000008 /* Writable file was closed */
#define IN_CLOSE_NOWRITE 0x00000010 /* Unwritable file closed */
#define IN_OPEN   0x00000020 /* File was opened */
#define IN_MOVED_FROM  0x00000040 /* File was moved from X */
#define IN_MOVED_TO  0x00000080 /* File was moved to Y */
#define IN_CREATE  0x00000100 /* Subfile was created */
#define IN_DELETE  0x00000200 /* Subfile was deleted */
#define IN_DELETE_SELF  0x00000400 /* Self was deleted */
#define IN_MOVE_SELF  0x00000800 /* Self was moved */

/* the following are legal events.  they are sent as needed to any watch */
#define IN_UNMOUNT  0x00002000 /* Backing fs was unmounted */
#define IN_Q_OVERFLOW  0x00004000 /* Event queued overflowed */
#define IN_IGNORED  0x00008000 /* File was ignored */

/* helper events */
#define IN_CLOSE  (IN_CLOSE_WRITE | IN_CLOSE_NOWRITE) /* close */
#define IN_MOVE   (IN_MOVED_FROM | IN_MOVED_TO) /* moves */

/* special flags */
#define IN_ONLYDIR  0x01000000 /* only watch the path if it is a directory */
#define IN_DONT_FOLLOW  0x02000000 /* don't follow a sym link */
#define IN_EXCL_UNLINK  0x04000000 /* exclude events on unlinked objects */
#define IN_MASK_CREATE  0x10000000 /* only create watches */
#define IN_MASK_ADD  0x20000000 /* add to the mask of an already existing watch */
#define IN_ISDIR  0x40000000 /* event occurred against dir */
#define IN_ONESHOT  0x80000000 /* only send event once */

/*
 * All of the events - we build the list by hand so that we can add flags in
 * the future and not break backward compatibility.  Apps will get only the
 * events that they originally wanted.  Be sure to add new events here!
 */

#define IN_ALL_EVENTS (IN_ACCESS | IN_MODIFY | IN_ATTRIB | IN_CLOSE_WRITE | \
    IN_CLOSE_NOWRITE | IN_OPEN | IN_MOVED_FROM | \
    IN_MOVED_TO | IN_DELETE | IN_CREATE | IN_DELETE_SELF | \
    IN_MOVE_SELF)

/* Flags for sys_inotify_init1.  */
#define IN_CLOEXEC O_CLOEXEC
#define IN_NONBLOCK O_NONBLOCK

/*
 * ioctl numbers: inotify uses 'I' prefix for all ioctls,
 * except historical FIONREAD, which is based on 'T'.
 *
 * INOTIFY_IOC_SETNEXTWD: set desired number of next created
 * watch descriptor.
 */

#define INOTIFY_IOC_SETNEXTWD _IOW('I', 0, __s32)

#endif /* _UAPI_LINUX_INOTIFY_H */

94%


¤ Dauer der Verarbeitung: 0.13 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.