Projet

Général

Profil

Paste
Télécharger au format
Statistiques
| Branche: | Révision:

root / tools / munin-plugins-busybox / main.c @ df82b943

Historique | Voir | Annoter | Télécharger (2,12 ko)

1
#include <libgen.h>
2
#include <string.h>
3
#include <stdio.h>
4

    
5
int cpu(int argc, char **argv);
6
int entropy(int argc, char **argv);
7
int forks(int argc, char **argv);
8
int fw_packets(int argc, char **argv);
9
int if_err_(int argc, char **argv);
10
int interrupts(int argc, char **argv);
11
int load(int argc, char **argv);
12
int open_files(int argc, char **argv);
13
int open_inodes(int argc, char **argv);
14
int processes(int argc, char **argv);
15
int swap(int argc, char **argv);
16
int uptime(int argc, char **argv);
17

    
18
int busybox(int argc, char **argv) {
19
        if(argc < 2) {
20
                fprintf(stderr, "missing parameter\n");
21
                return 1;
22
        }
23
        if(0 != strcmp(argv[1], "listplugins")) {
24
                fprintf(stderr, "unknown parameter\n");
25
                return 1;
26
        }
27
        puts("cpu\nentropy\nforks\nfw_packets\ninterrupts\nload\n"
28
                "open_files\nopen_inodes\nprocesses\nswap\nuptime");
29
        return 0;
30
}
31

    
32
int main(int argc, char **argv) {
33
        char *progname;
34
        progname = basename(argv[0]);
35
        switch(*progname) {
36
                case 'c':
37
                        if(!strcmp(progname+1, "cpu"+1))
38
                                return cpu(argc, argv);
39
                        break;
40
                case 'e':
41
                        if(!strcmp(progname+1, "entropy"+1))
42
                                return entropy(argc, argv);
43
                        break;
44
                case 'f':
45
                        if(!strcmp(progname+1, "forks"+1))
46
                                return forks(argc, argv);
47
                        if(!strcmp(progname+1, "fw_packets"+1))
48
                                return fw_packets(argc, argv);
49
                        break;
50
                case 'i':
51
                        if(!strcmp(progname+1, "interrupts"+1))
52
                                return interrupts(argc, argv);
53
                        if(!strncmp(progname+1, "if_err_"+1, 6))
54
                                return if_err_(argc, argv);
55
                        break;
56
                case 'l':
57
                        if(!strcmp(progname+1, "load"+1))
58
                                return load(argc, argv);
59
                        break;
60
                case 'm':
61
                        if(!strcmp(progname+1, "munin-plugins-busybox"+1))
62
                                return busybox(argc, argv);
63
                        break;
64
                case 'o':
65
                        if(!strcmp(progname+1, "open_files"+1))
66
                                return open_files(argc, argv);
67
                        if(!strcmp(progname+1, "open_inodes"+1))
68
                                return open_inodes(argc, argv);
69
                        break;
70
                case 'p':
71
                        if(!strcmp(progname+1, "processes"+1))
72
                                return processes(argc, argv);
73
                        break;
74
                case 's':
75
                        if(!strcmp(progname+1, "swap"+1))
76
                                return swap(argc, argv);
77
                        break;
78
                case 'u':
79
                        if(!strcmp(progname+1, "uptime"+1))
80
                                return uptime(argc, argv);
81
                        break;
82
        }
83
        fprintf(stderr, "unknown basename\n");
84
        return 1;
85
}