Mercurial > dovecot > core-2.2
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 |
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; |