blob: 6ecb9f0a48d3fb1304dbe6468c95dbeb9e087188 (
plain) (
blame)
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
#ifndef DUSER_H
#define DUSER_H
#include <limits.h>
#define REGEX_MAX 60
#define CMD_FLAG_NOOPT 0x00
#define CMD_FLAG_DEL 0x02
#define CMD_FLAG_MOD 0x04
#define CMD_FLAG_ADD 0x08
#define CMD_FLAG_LIST 0x16
#define CMD_FLAG_HELP 0x32
#define CMD_FLAG_LOOK 0x64
#define CMD_FLAG_NULL 0x254
#define regex_fmt "\%s$"
#define LOGFILE "/var/log/duser"
#define list_path "/internal/1/domotest/opt/majordomo/majordomo-1.94.3/lists/"
typedef struct stats_t
{
int lines;
int files;
int matches;
int added;
int deleted;
int modified;
} stats_t;
//Global statistics struct
stats_t processed;
typedef struct record_t
{
int index;
int match;
int pad1;
char name[REGEX_MAX];
int pad2;
char file[PATH_MAX];
int pad3;
} record_t;
char* basename(const char* path);
record_t* find_in_file(const char* filename, const char* needle);
int get_file_count(const char* path);
char** get_file_list(const char* path, int count);
void stats_init(stats_t *s);
int user_list(const char* needle);
int find_in_file_ex(record_t* rec);
int user_del(record_t* rec);
int user_cmd(const char* arg);
int user_choice(char c);
#endif
|