libinotifytools

inotifytools.h
Go to the documentation of this file.
1#ifndef _inotifytools_H
2#define _inotifytools_H
3
4#ifdef __cplusplus
5 extern "C"
6{
7#endif
8
9#include <stdio.h>
10
11#define MAX_STRLEN 4096
12
20 struct nstring {
21 char buf[MAX_STRLEN];
22 unsigned int len;
23};
24
25 int inotifytools_str_to_event(char const * event);
26 int inotifytools_str_to_event_sep(char const * event, char sep);
27 char * inotifytools_event_to_str(int events);
28 char * inotifytools_event_to_str_sep(int events, char sep);
29 void inotifytools_set_filename_by_wd( int wd, char const * filename );
30 void inotifytools_set_filename_by_filename( char const * oldname,
31 char const * newname );
32 void inotifytools_replace_filename( char const * oldname,
33 char const * newname );
34 struct inotify_event;
35 const char* inotifytools_dirname_from_event(struct inotify_event* event,
36 size_t* dirnamelen);
37 const char* inotifytools_filename_from_event(struct inotify_event* event,
38 char const** eventname,
39 size_t* dirnamelen);
40 char* inotifytools_dirpath_from_event(struct inotify_event* event);
41 struct watch;
42 const char* inotifytools_filename_from_watch(struct watch* w);
43 const char* inotifytools_filename_from_wd(int wd);
44 int inotifytools_wd_from_filename( char const * filename );
45 int inotifytools_remove_watch_by_filename( char const * filename );
46 int inotifytools_remove_watch_by_wd( int wd );
47 int inotifytools_watch_file(char const* filename, int events);
48 int inotifytools_watch_files(char const* filenames[], int events);
49 int inotifytools_watch_recursively(char const* path, int events);
50 int inotifytools_watch_recursively_with_exclude(char const* path,
51 int events,
52 char const** exclude_list);
53// [UH]
54 int inotifytools_ignore_events_by_regex( char const *pattern, int flags );
55 int inotifytools_ignore_events_by_inverted_regex( char const *pattern, int flags );
56 struct inotify_event * inotifytools_next_event( long int timeout );
57 struct inotify_event * inotifytools_next_events( long int timeout, int num_events );
58 int inotifytools_error();
59 int inotifytools_get_stat_by_wd( int wd, int event );
60 int inotifytools_get_stat_total( int event );
61 int inotifytools_get_stat_by_filename( char const * filename,
62 int event );
63 void inotifytools_initialize_stats();
64 int inotifytools_initialize();
65 int inotifytools_init(int fanotify, int watch_filesystem, int verbose);
66 void inotifytools_cleanup();
67 int inotifytools_get_num_watches();
68
69 int inotifytools_printf(struct inotify_event* event, const char* fmt);
70 int inotifytools_fprintf(FILE* file,
71 struct inotify_event* event,
72 const char* fmt);
73 int inotifytools_sprintf(struct nstring* out,
74 struct inotify_event* event,
75 const char* fmt);
76 int inotifytools_snprintf(struct nstring* out,
77 int size,
78 struct inotify_event* event,
79 const char* fmt);
80 void inotifytools_set_printf_timefmt(const char* fmt);
81 void inotifytools_clear_timefmt();
82
83 int inotifytools_get_max_user_watches();
84 int inotifytools_get_max_user_instances();
85 int inotifytools_get_max_queued_events();
86
87#ifdef __cplusplus
88}
89#endif
90
91#endif // _inotifytools_H
inotifytools_init
int inotifytools_init(int fanotify, int watch_filesystem, int verbose)
Definition inotifytools.cpp:344
inotifytools_filename_from_wd
const char * inotifytools_filename_from_wd(int wd)
Definition inotifytools.cpp:936
inotifytools_ignore_events_by_regex
int inotifytools_ignore_events_by_regex(char const *pattern, int flags)
Definition inotifytools.cpp:2408
inotifytools_set_printf_timefmt
void inotifytools_set_printf_timefmt(const char *fmt)
Definition inotifytools.cpp:2299
inotifytools_get_max_queued_events
int inotifytools_get_max_queued_events()
Definition inotifytools.cpp:2315
inotifytools_watch_recursively_with_exclude
int inotifytools_watch_recursively_with_exclude(char const *path, int events, char const **exclude_list)
Definition inotifytools.cpp:1792
inotifytools_remove_watch_by_filename
int inotifytools_remove_watch_by_filename(char const *filename)
Definition inotifytools.cpp:1217
inotifytools_error
int inotifytools_error()
Definition inotifytools.cpp:1911
inotifytools_fprintf
int inotifytools_fprintf(FILE *file, struct inotify_event *event, const char *fmt)
Definition inotifytools.cpp:2037
inotifytools_watch_recursively
int inotifytools_watch_recursively(char const *path, int events)
Definition inotifytools.cpp:1756
inotifytools_wd_from_filename
int inotifytools_wd_from_filename(char const *filename)
Definition inotifytools.cpp:1041
inotifytools_filename_from_event
const char * inotifytools_filename_from_event(struct inotify_event *event, char const **eventname, size_t *dirnamelen)
Definition inotifytools.cpp:984
inotifytools_ignore_events_by_inverted_regex
int inotifytools_ignore_events_by_inverted_regex(char const *pattern, int flags)
Definition inotifytools.cpp:2423
inotifytools_set_filename_by_filename
void inotifytools_set_filename_by_filename(char const *oldname, char const *newname)
Definition inotifytools.cpp:1089
inotifytools_remove_watch_by_wd
int inotifytools_remove_watch_by_wd(int wd)
Definition inotifytools.cpp:1190
inotifytools_event_to_str_sep
char * inotifytools_event_to_str_sep(int events, char sep)
Definition inotifytools.cpp:716
inotifytools_dirname_from_event
const char * inotifytools_dirname_from_event(struct inotify_event *event, size_t *dirnamelen)
Definition inotifytools.cpp:955
inotifytools_str_to_event_sep
int inotifytools_str_to_event_sep(char const *event, char sep)
Definition inotifytools.cpp:524
inotifytools_cleanup
void inotifytools_cleanup()
Definition inotifytools.cpp:415
inotifytools_watch_files
int inotifytools_watch_files(char const *filenames[], int events)
Definition inotifytools.cpp:1266
inotifytools_dirpath_from_event
char * inotifytools_dirpath_from_event(struct inotify_event *event)
Definition inotifytools.cpp:1010
inotifytools_get_max_user_instances
int inotifytools_get_max_user_instances()
Definition inotifytools.cpp:2331
inotifytools_next_event
struct inotify_event * inotifytools_next_event(long int timeout)
Definition inotifytools.cpp:1440
inotifytools_get_num_watches
int inotifytools_get_num_watches()
Definition inotifytools.cpp:1938
inotifytools_event_to_str
char * inotifytools_event_to_str(int events)
Definition inotifytools.cpp:688
inotifytools_str_to_event
int inotifytools_str_to_event(char const *event)
Definition inotifytools.cpp:602
inotifytools_replace_filename
void inotifytools_replace_filename(char const *oldname, char const *newname)
Definition inotifytools.cpp:1121
inotifytools_filename_from_watch
const char * inotifytools_filename_from_watch(struct watch *w)
Definition inotifytools.cpp:907
inotifytools_get_max_user_watches
int inotifytools_get_max_user_watches()
Definition inotifytools.cpp:2347
inotifytools_snprintf
int inotifytools_snprintf(struct nstring *out, int size, struct inotify_event *event, const char *fmt)
Definition inotifytools.cpp:2156
inotifytools_next_events
struct inotify_event * inotifytools_next_events(long int timeout, int num_events)
Definition inotifytools.cpp:1496
inotifytools_printf
int inotifytools_printf(struct inotify_event *event, const char *fmt)
Definition inotifytools.cpp:1988
inotifytools_sprintf
int inotifytools_sprintf(struct nstring *out, struct inotify_event *event, const char *fmt)
Definition inotifytools.cpp:2100
inotifytools_set_filename_by_wd
void inotifytools_set_filename_by_wd(int wd, char const *filename)
Definition inotifytools.cpp:1065
inotifytools_watch_file
int inotifytools_watch_file(char const *filename, int events)
Definition inotifytools.cpp:1244
nstring
This structure holds string that can contain any character including NULL.
Definition inotifytools.h:20
nstring::len
unsigned int len
Definition inotifytools.h:22
nstring::buf
char buf[MAX_STRLEN]
Definition inotifytools.h:21