summaryrefslogtreecommitdiff
path: root/inotail.h
blob: 226c1ca2c804ad281c8ef2977e34b710b3d370eb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#ifndef _INOTAIL_H
#define _INOTAIL_H

#include <limits.h>
#include <getopt.h>
#include <stdlib.h>

/* Number of items to tail. */
#define DEFAULT_N_LINES 10

/* Every tailed file is represented as a file_struct */
struct file_struct {
	char	*name;		/* Name of file (or '-' for stdin) */
	int 	fd;		/* File descriptor (or -1 if file is not open */
	int 	ignore:1;	/* Ignore file? */
	off_t	st_size;	/* File size */

	int i_watch;	/* Inotify watch associated with file_struct */
};

struct option const long_options[] = {
	{"lines", required_argument, NULL, 'n'},
	{"quiet", no_argument, NULL, 'q'},
	{"silent", no_argument, NULL, 'q'},
	{"verbose", no_argument, NULL, 'v'},
	{"help", no_argument, NULL, 'h'},
	{"version", no_argument, NULL, 'V'},
	{NULL, 0, NULL, 0}
};

#ifdef DEBUG
#define dprintf(fmt, args...) fprintf(stderr, fmt, ##args)
#else
#define dprintf(fmt, args...)
#endif /* DEBUG */

#endif /* _INOTAIL_H */