libinotifytools: inotifytools/inotifytools.h Source File

libinotifytools

inotifytools.h
Go to the documentation of this file.
1#ifndef _inotifytools_H
2#define _inotifytools_H
3
4#ifdef __FreeBSD__
5#define stat64 stat
6#define lstat64 lstat
7#endif
8
9#ifdef __cplusplus
10extern "C"
11{
12#endif
13
14#include <stdio.h>
15
16#define MAX_STRLEN 4096
17
25 struct nstring {
26 char buf[MAX_STRLEN];
27 unsigned int len;
28};
29
30int inotifytools_str_to_event(char const * event);
31int inotifytools_str_to_event_sep(char const * event, char sep);
32char * inotifytools_event_to_str(int events);
33char * inotifytools_event_to_str_sep(int events, char sep);
34void inotifytools_set_filename_by_wd( int wd, char const * filename );
35void inotifytools_set_filename_by_filename( char const * oldname,
36 char const * newname );
37void inotifytools_replace_filename( char const * oldname,
38 char const * newname );
39struct inotify_event;
40const char* inotifytools_dirname_from_event(struct inotify_event* event,
41 size_t* dirnamelen);
42const char* inotifytools_filename_from_event(struct inotify_event* event,
43 char const** eventname,
44 size_t* dirnamelen);
45char* inotifytools_dirpath_from_event(struct inotify_event* event);
46struct watch;
47const char* inotifytools_filename_from_watch(struct watch* w);
48const char* inotifytools_filename_from_wd(int wd);
49int inotifytools_wd_from_filename( char const * filename );
50int inotifytools_remove_watch_by_filename( char const * filename );
51int inotifytools_remove_watch_by_wd( int wd );
52int inotifytools_watch_file(char const* filename, int events);
53int inotifytools_watch_files(char const* filenames[], int events);
54int inotifytools_watch_recursively(char const* path, int events);
55int inotifytools_watch_recursively_with_exclude(char const* path,
56 int events,
57 char const** exclude_list);
58// [UH]
59int inotifytools_ignore_events_by_regex( char const *pattern, int flags );
60int inotifytools_ignore_events_by_inverted_regex( char const *pattern, int flags );
61struct inotify_event * inotifytools_next_event( long int timeout );
62struct inotify_event * inotifytools_next_events( long int timeout, int num_events );
63int inotifytools_error();
64int inotifytools_get_stat_by_wd( int wd, int event );
65int inotifytools_get_stat_total( int event );
66int inotifytools_get_stat_by_filename( char const * filename,
67 int event );
68void inotifytools_initialize_stats();
69int inotifytools_initialize();
70int inotifytools_init(int fanotify, int watch_filesystem, int verbose);
71void inotifytools_cleanup();
72int inotifytools_get_num_watches();
73
74int inotifytools_printf( struct inotify_event* event, char* fmt );
75int inotifytools_fprintf( FILE* file, struct inotify_event* event, char* fmt );
76int inotifytools_sprintf( struct nstring * out, struct inotify_event* event, char* fmt );
77int inotifytools_snprintf( struct nstring * out, int size, struct inotify_event* event,
78 char* fmt );
79void inotifytools_set_printf_timefmt( char * fmt );
80
81int inotifytools_get_max_user_watches();
82int inotifytools_get_max_user_instances();
83int inotifytools_get_max_queued_events();
84
85#ifdef __cplusplus
86}
87#endif
88
89#endif // _inotifytools_H
inotifytools_init
int inotifytools_init(int fanotify, int watch_filesystem, int verbose)
Definition: inotifytools.c:301
inotifytools_filename_from_wd
const char * inotifytools_filename_from_wd(int wd)
Definition: inotifytools.c:877
inotifytools_ignore_events_by_regex
int inotifytools_ignore_events_by_regex(char const *pattern, int flags)
Definition: inotifytools.c:2303
inotifytools_get_max_queued_events
int inotifytools_get_max_queued_events()
Definition: inotifytools.c:2219
inotifytools_watch_recursively_with_exclude
int inotifytools_watch_recursively_with_exclude(char const *path, int events, char const **exclude_list)
Definition: inotifytools.c:1718
inotifytools_remove_watch_by_filename
int inotifytools_remove_watch_by_filename(char const *filename)
Definition: inotifytools.c:1152
inotifytools_error
int inotifytools_error()
Definition: inotifytools.c:1829
inotifytools_watch_recursively
int inotifytools_watch_recursively(char const *path, int events)
Definition: inotifytools.c:1682
inotifytools_wd_from_filename
int inotifytools_wd_from_filename(char const *filename)
Definition: inotifytools.c:982
inotifytools_filename_from_event
const char * inotifytools_filename_from_event(struct inotify_event *event, char const **eventname, size_t *dirnamelen)
Definition: inotifytools.c:925
inotifytools_fprintf
int inotifytools_fprintf(FILE *file, struct inotify_event *event, char *fmt)
Definition: inotifytools.c:1954
inotifytools_ignore_events_by_inverted_regex
int inotifytools_ignore_events_by_inverted_regex(char const *pattern, int flags)
Definition: inotifytools.c:2318
inotifytools_set_filename_by_filename
void inotifytools_set_filename_by_filename(char const *oldname, char const *newname)
Definition: inotifytools.c:1027
inotifytools_remove_watch_by_wd
int inotifytools_remove_watch_by_wd(int wd)
Definition: inotifytools.c:1127
inotifytools_event_to_str_sep
char * inotifytools_event_to_str_sep(int events, char sep)
Definition: inotifytools.c:656
inotifytools_dirname_from_event
const char * inotifytools_dirname_from_event(struct inotify_event *event, size_t *dirnamelen)
Definition: inotifytools.c:896
inotifytools_str_to_event_sep
int inotifytools_str_to_event_sep(char const *event, char sep)
Definition: inotifytools.c:466
inotifytools_cleanup
void inotifytools_cleanup()
Definition: inotifytools.c:368
inotifytools_watch_files
int inotifytools_watch_files(char const *filenames[], int events)
Definition: inotifytools.c:1199
inotifytools_snprintf
int inotifytools_snprintf(struct nstring *out, int size, struct inotify_event *event, char *fmt)
Definition: inotifytools.c:2069
inotifytools_dirpath_from_event
char * inotifytools_dirpath_from_event(struct inotify_event *event)
Definition: inotifytools.c:951
inotifytools_get_max_user_instances
int inotifytools_get_max_user_instances()
Definition: inotifytools.c:2234
inotifytools_next_event
struct inotify_event * inotifytools_next_event(long int timeout)
Definition: inotifytools.c:1368
inotifytools_get_num_watches
int inotifytools_get_num_watches()
Definition: inotifytools.c:1855
inotifytools_event_to_str
char * inotifytools_event_to_str(int events)
Definition: inotifytools.c:628
inotifytools_printf
int inotifytools_printf(struct inotify_event *event, char *fmt)
Definition: inotifytools.c:1905
inotifytools_str_to_event
int inotifytools_str_to_event(char const *event)
Definition: inotifytools.c:541
inotifytools_replace_filename
void inotifytools_replace_filename(char const *oldname, char const *newname)
Definition: inotifytools.c:1057
inotifytools_filename_from_watch
const char * inotifytools_filename_from_watch(struct watch *w)
Definition: inotifytools.c:848
inotifytools_get_max_user_watches
int inotifytools_get_max_user_watches()
Definition: inotifytools.c:2249
inotifytools_next_events
struct inotify_event * inotifytools_next_events(long int timeout, int num_events)
Definition: inotifytools.c:1425
inotifytools_set_printf_timefmt
void inotifytools_set_printf_timefmt(char *fmt)
Definition: inotifytools.c:2207
inotifytools_sprintf
int inotifytools_sprintf(struct nstring *out, struct inotify_event *event, char *fmt)
Definition: inotifytools.c:2014
inotifytools_set_filename_by_wd
void inotifytools_set_filename_by_wd(int wd, char const *filename)
Definition: inotifytools.c:1005
inotifytools_watch_file
int inotifytools_watch_file(char const *filename, int events)
Definition: inotifytools.c:1177
nstring
This structure holds string that can contain any character including NULL.
Definition: inotifytools.h:25
nstring::len
unsigned int len
Definition: inotifytools.h:27
nstring::buf
char buf[MAX_STRLEN]
Definition: inotifytools.h:26