diff options
Diffstat (limited to 'src/config/defaults.c')
-rw-r--r-- | src/config/defaults.c | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/src/config/defaults.c b/src/config/defaults.c new file mode 100644 index 0000000..14fce76 --- /dev/null +++ b/src/config/defaults.c @@ -0,0 +1,70 @@ +/* ISC license. */ + +#include <stddef.h> + +#include "shibari-cache-config-internal.h" + +struct defaults_s +{ + char const *key ; + char const *value ; + size_t vlen ; +} ; + +#define REC(k, v, n) { .key = (k), .value = (v), .vlen = (n) } +#define RECS(k, v) REC(k, v, sizeof(v)) +#define RECU32(k, u) { .key = (k), .value = (char const [4]){ (u) >> 24 & 0xffu, (u) >> 16 & 0xffu, (u) >> 8 & 0xffu, (u) & 0xffu }, .vlen = 4 } + +static struct defaults_s const defaults[] = +{ + RECU32("G:logv", 1), + REC("G:listen4", "\0\0\0\0\0\35", 6), + REC("G:listen6", "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\35", 18), + + REC("R4:", + "\0\306\51\0\4" + "\0\252\367\252\2" + "\0\300\41\4\14" + "\0\307\7\133\15" + "\0\300\313\346\12" + "\0\300\5\5\361" + "\0\300\160\44\4" + "\0\306\141\276\65" + "\0\300\44\224\21" + "\0\300\72\200\36" + "\0\301\0\16\201" + "\0\307\7\123\52" + "\0\312\14\33\41" + , 65), + + REC("R6:", + "\0\40\1\5\3\272\76\0\0\0\0\0\0\0\2\0\60" + "\0\50\1\1\270\0\20\0\0\0\0\0\0\0\0\0\13" + "\0\40\1\5\0\0\2\0\0\0\0\0\0\0\0\0\14" + "\0\40\1\5\0\0\55\0\0\0\0\0\0\0\0\0\15" + "\0\40\1\5\0\0\250\0\0\0\0\0\0\0\0\0\16" + "\0\40\1\5\0\0\57\0\0\0\0\0\0\0\0\0\17" + "\0\40\1\5\0\0\22\0\0\0\0\0\0\0\0\15\15" + "\0\40\1\5\0\0\1\0\0\0\0\0\0\0\0\0\123" + "\0\40\1\7\376\0\0\0\0\0\0\0\0\0\0\0\123" + "\0\40\1\5\3\14\47\0\0\0\0\0\0\0\2\0\60" + "\0\40\1\7\375\0\0\0\0\0\0\0\0\0\0\0\1" + "\0\40\1\5\0\0\237\0\0\0\0\0\0\0\0\0\102" + "\0\40\1\15\303\0\0\0\0\0\0\0\0\0\0\0\65" + , 221), + REC(0, 0, 0) +} ; + +void conf_defaults (void) +{ + for (struct defaults_s const *p = defaults ; p->key ; p++) + { + if (!conftree_search(p->key)) + { + node node ; + confnode_start(&node, p->key, 0, 0) ; + confnode_add(&node, p->value, p->vlen) ; + conftree_add(&node) ; + } + } +} |