root / tools / munin-plugins-busybox / common.c @ cbfa6b45
Historique | Voir | Annoter | Télécharger (1,19 ko)
| 1 | 20993707 | Helmut Grohne | #include <stdio.h> |
|---|---|---|---|
| 2 | c01ddbb0 | Helmut Grohne | #include <stdlib.h> |
| 3 | cbfa6b45 | Helmut Grohne | #include <string.h> |
| 4 | #include <unistd.h> |
||
| 5 | |||
| 6 | extern char **environ; |
||
| 7 | 20993707 | Helmut Grohne | |
| 8 | int writeyes(void) { |
||
| 9 | puts("yes");
|
||
| 10 | return 0; |
||
| 11 | } |
||
| 12 | |||
| 13 | int writeno(const char *s) { |
||
| 14 | if(s)
|
||
| 15 | printf("no (%s)\n", s);
|
||
| 16 | else
|
||
| 17 | puts("no");
|
||
| 18 | return 1; |
||
| 19 | } |
||
| 20 | c01ddbb0 | Helmut Grohne | |
| 21 | int getenvint(const char *name, int defvalue) { |
||
| 22 | const char *value; |
||
| 23 | value = getenv(name); |
||
| 24 | if(value == NULL) |
||
| 25 | return defvalue;
|
||
| 26 | return atoi(value);
|
||
| 27 | } |
||
| 28 | cbfa6b45 | Helmut Grohne | |
| 29 | const char *getenv_composed(const char *name1, const char *name2) { |
||
| 30 | char **p;
|
||
| 31 | size_t len1 = strlen(name1), len2 = strlen(name2); |
||
| 32 | for(p = environ; *p; ++p) {
|
||
| 33 | if(0 == strncmp(*p, name1, len1) && |
||
| 34 | 0 == strncmp(len1 + *p, name2, len2) &&
|
||
| 35 | (*p)[len1 + len2] == '=')
|
||
| 36 | return len1 + len2 + 1 + *p; |
||
| 37 | } |
||
| 38 | return NULL; |
||
| 39 | } |
||
| 40 | |||
| 41 | void print_warning(const char *name) { |
||
| 42 | const char *p; |
||
| 43 | p = getenv_composed(name, "_warning");
|
||
| 44 | if(p == NULL) |
||
| 45 | p = getenv("warning");
|
||
| 46 | if(p == NULL) |
||
| 47 | return;
|
||
| 48 | |||
| 49 | printf("%s.warning %s\n", name, p);
|
||
| 50 | } |
||
| 51 | |||
| 52 | void print_critical(const char *name) { |
||
| 53 | const char *p; |
||
| 54 | p = getenv_composed(name, "_critical");
|
||
| 55 | if(p == NULL) |
||
| 56 | p = getenv("critical");
|
||
| 57 | if(p == NULL) |
||
| 58 | return;
|
||
| 59 | |||
| 60 | printf("%s.critial %s\n", name, p);
|
||
| 61 | } |
||
| 62 | |||
| 63 | void print_warncrit(const char *name) { |
||
| 64 | print_warning(name); |
||
| 65 | print_critical(name); |
||
| 66 | } |
