annotate src/dict/dict-settings.c @ 10179:afe52d60989c HEAD

Moved default service settings from master.conf to source code.
author Timo Sirainen <tss@iki.fi>
date Fri, 23 Oct 2009 21:47:30 -0400
parents d589d568a19d
children b757dab45756
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9149
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
1 /* Copyright (c) 2009 Dovecot authors, see the included COPYING file */
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
3 #include "lib.h"
10179
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
4 #include "buffer.h"
9149
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
5 #include "settings-parser.h"
10179
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
6 #include "service-settings.h"
9149
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
7 #include "dict-settings.h"
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
8
10179
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
9 /* <settings checks> */
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
10 static struct file_listener_settings dict_unix_listeners_array[] = {
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
11 { "dict", 0600, "", "" }
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
12 };
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
13 static struct file_listener_settings *dict_unix_listeners[] = {
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
14 &dict_unix_listeners_array[0]
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
15 };
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
16 static buffer_t dict_unix_listeners_buf = {
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
17 dict_unix_listeners, sizeof(dict_unix_listeners), { 0, }
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
18 };
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
19 /* </settings checks> */
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
20
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
21 struct service_settings dict_service_settings = {
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
22 MEMBER(name) "dict",
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
23 MEMBER(protocol) "",
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
24 MEMBER(type) "",
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
25 MEMBER(executable) "dict",
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
26 MEMBER(user) "dovecot",
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
27 MEMBER(group) "",
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
28 MEMBER(privileged_group) "",
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
29 MEMBER(extra_groups) "",
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
30 MEMBER(chroot) "",
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
31
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
32 MEMBER(drop_priv_before_exec) FALSE,
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
33
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
34 MEMBER(process_min_avail) 0,
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
35 MEMBER(process_limit) 0,
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
36 MEMBER(client_limit) 0,
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
37 MEMBER(service_count) 0,
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
38 MEMBER(vsz_limit) -1U,
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
39
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
40 MEMBER(unix_listeners) { { &dict_unix_listeners_buf,
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
41 sizeof(dict_unix_listeners[0]) } },
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
42 MEMBER(fifo_listeners) ARRAY_INIT,
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
43 MEMBER(inet_listeners) ARRAY_INIT
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
44 };
afe52d60989c Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents: 10177
diff changeset
45
9149
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
46 #undef DEF
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
47 #define DEF(type, name) \
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
48 { type, #name, offsetof(struct dict_settings, name), NULL }
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
49
10177
d589d568a19d Changed all settings related structs to const and changed APIs to make it work.
Timo Sirainen <tss@iki.fi>
parents: 10107
diff changeset
50 static const struct setting_define dict_setting_defines[] = {
9545
ee99bb70b05f dict proxy: Use base_dir as the default dict-server location.
Timo Sirainen <tss@iki.fi>
parents: 9405
diff changeset
51 DEF(SET_STR, base_dir),
9149
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
52 DEF(SET_STR, dict_db_config),
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
53 { SET_STRLIST, "dict", offsetof(struct dict_settings, dicts), NULL },
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
54
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
55 SETTING_DEFINE_LIST_END
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
56 };
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
57
10177
d589d568a19d Changed all settings related structs to const and changed APIs to make it work.
Timo Sirainen <tss@iki.fi>
parents: 10107
diff changeset
58 const struct dict_settings dict_default_settings = {
9545
ee99bb70b05f dict proxy: Use base_dir as the default dict-server location.
Timo Sirainen <tss@iki.fi>
parents: 9405
diff changeset
59 MEMBER(base_dir) PKG_RUNDIR,
9149
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
60 MEMBER(dict_db_config) "",
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
61 MEMBER(dicts) ARRAY_INIT
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
62 };
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
63
10177
d589d568a19d Changed all settings related structs to const and changed APIs to make it work.
Timo Sirainen <tss@iki.fi>
parents: 10107
diff changeset
64 const struct setting_parser_info dict_setting_parser_info = {
10107
dcda7c495eb6 struct setting_parser_info now specifies the module name.
Timo Sirainen <tss@iki.fi>
parents: 10106
diff changeset
65 MEMBER(module_name) "dict",
9149
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
66 MEMBER(defines) dict_setting_defines,
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
67 MEMBER(defaults) &dict_default_settings,
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
68
10106
5a25b4ec5694 Reordered struct setting_parser_info fields to make using them easier.
Timo Sirainen <tss@iki.fi>
parents: 9545
diff changeset
69 MEMBER(type_offset) (size_t)-1,
5a25b4ec5694 Reordered struct setting_parser_info fields to make using them easier.
Timo Sirainen <tss@iki.fi>
parents: 9545
diff changeset
70 MEMBER(struct_size) sizeof(struct dict_settings),
9149
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
71
10106
5a25b4ec5694 Reordered struct setting_parser_info fields to make using them easier.
Timo Sirainen <tss@iki.fi>
parents: 9545
diff changeset
72 MEMBER(parent_offset) (size_t)-1
9149
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
73 };
6d374fc3ae1d Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
74
10177
d589d568a19d Changed all settings related structs to const and changed APIs to make it work.
Timo Sirainen <tss@iki.fi>
parents: 10107
diff changeset
75 const struct dict_settings *dict_settings;