Mercurial > dovecot > core-2.2
annotate src/dict/dict-settings.c @ 17397:f373df52082a
treewide - mass cleanup of 0 used to end a settings list
This also includes a change to the perl script which generates the
all-settings.c file.
Signed-off-by: Phil Carmody <phil@dovecot.fi>
author | Phil Carmody <phil@dovecot.fi> |
---|---|
date | Tue, 27 May 2014 21:17:34 +0300 |
parents | add8c00fb3cc |
children | d91b43496e72 |
rev | line source |
---|---|
17130
add8c00fb3cc
Updated copyright notices to include year 2014.
Timo Sirainen <tss@iki.fi>
parents:
15715
diff
changeset
|
1 /* Copyright (c) 2009-2014 Dovecot authors, see the included COPYING file */ |
9149
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 = { |
17397
f373df52082a
treewide - mass cleanup of 0 used to end a settings list
Phil Carmody <phil@dovecot.fi>
parents:
17130
diff
changeset
|
17 dict_unix_listeners, sizeof(dict_unix_listeners), { NULL, } |
10179
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 = { |
10410
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
22 .name = "dict", |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
23 .protocol = "", |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
24 .type = "", |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
25 .executable = "dict", |
10705
bf84cb98bd04
Added default_internal_user and default_login_user settings, which services use as default users.
Timo Sirainen <tss@iki.fi>
parents:
10582
diff
changeset
|
26 .user = "$default_internal_user", |
10410
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
27 .group = "", |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
28 .privileged_group = "", |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
29 .extra_groups = "", |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
30 .chroot = "", |
10179
afe52d60989c
Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents:
10177
diff
changeset
|
31 |
10410
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
32 .drop_priv_before_exec = FALSE, |
10179
afe52d60989c
Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents:
10177
diff
changeset
|
33 |
10410
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
34 .process_min_avail = 0, |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
35 .process_limit = 0, |
11161
69894aaab23c
dict: Changed default client_limit to 1.
Timo Sirainen <tss@iki.fi>
parents:
10705
diff
changeset
|
36 .client_limit = 1, |
10410
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
37 .service_count = 0, |
11631
d41694c931d0
Added support for per-service idle kill timeout.
Timo Sirainen <tss@iki.fi>
parents:
11161
diff
changeset
|
38 .idle_kill = 0, |
12432
8793036f6de8
Services' default vsz_limit wasn't actually using default_vsz_limit but rather 4 GB.
Timo Sirainen <tss@iki.fi>
parents:
11631
diff
changeset
|
39 .vsz_limit = (uoff_t)-1, |
10179
afe52d60989c
Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents:
10177
diff
changeset
|
40 |
10410
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
41 .unix_listeners = { { &dict_unix_listeners_buf, |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
42 sizeof(dict_unix_listeners[0]) } }, |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
43 .fifo_listeners = ARRAY_INIT, |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
44 .inet_listeners = ARRAY_INIT |
10179
afe52d60989c
Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents:
10177
diff
changeset
|
45 }; |
afe52d60989c
Moved default service settings from master.conf to source code.
Timo Sirainen <tss@iki.fi>
parents:
10177
diff
changeset
|
46 |
9149
6d374fc3ae1d
Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
47 #undef DEF |
6d374fc3ae1d
Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
48 #define DEF(type, name) \ |
6d374fc3ae1d
Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
49 { 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
|
50 |
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
|
51 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
|
52 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
|
53 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
|
54 { 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
|
55 |
6d374fc3ae1d
Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
56 SETTING_DEFINE_LIST_END |
6d374fc3ae1d
Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
57 }; |
6d374fc3ae1d
Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
58 |
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
|
59 const struct dict_settings dict_default_settings = { |
10410
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
60 .base_dir = PKG_RUNDIR, |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
61 .dict_db_config = "", |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
62 .dicts = ARRAY_INIT |
9149
6d374fc3ae1d
Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
63 }; |
6d374fc3ae1d
Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
64 |
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
|
65 const struct setting_parser_info dict_setting_parser_info = { |
10410
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
66 .module_name = "dict", |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
67 .defines = dict_setting_defines, |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
68 .defaults = &dict_default_settings, |
9149
6d374fc3ae1d
Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
69 |
10410
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
70 .type_offset = (size_t)-1, |
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
71 .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
|
72 |
10410
b757dab45756
Removed MEMBER() macro. Require C99 style struct initializer.
Timo Sirainen <tss@iki.fi>
parents:
10179
diff
changeset
|
73 .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
|
74 }; |
6d374fc3ae1d
Moved most of the dict settings handling to dict binary.
Timo Sirainen <tss@iki.fi>
parents:
diff
changeset
|
75 |
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
|
76 const struct dict_settings *dict_settings; |