annotate src/imap-urlauth/imap-urlauth-worker-settings.c @ 17130:add8c00fb3cc

Updated copyright notices to include year 2014.
author Timo Sirainen <tss@iki.fi>
date Tue, 04 Feb 2014 16:23:22 -0500
parents 36ef72481934
children f373df52082a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
17130
add8c00fb3cc Updated copyright notices to include year 2014.
Timo Sirainen <tss@iki.fi>
parents: 15715
diff changeset
1 /* Copyright (c) 2013-2014 Dovecot authors, see the included COPYING file */
15066
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
2
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
3 #include "lib.h"
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
4 #include "buffer.h"
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
5 #include "settings-parser.h"
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
6 #include "service-settings.h"
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
7 #include "mail-storage-settings.h"
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
8 #include "imap-urlauth-worker-settings.h"
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
9
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
10 #include <stddef.h>
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
11 #include <stdlib.h>
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
12 #include <unistd.h>
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
13
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
14 /* <settings checks> */
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
15 static struct file_listener_settings imap_urlauth_worker_unix_listeners_array[] = {
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
16 { "imap-urlauth-worker", 0600, "$default_internal_user", "" }
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
17 };
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
18 static struct file_listener_settings *imap_urlauth_worker_unix_listeners[] = {
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
19 &imap_urlauth_worker_unix_listeners_array[0]
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
20 };
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
21 static buffer_t imap_urlauth_worker_unix_listeners_buf = {
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
22 imap_urlauth_worker_unix_listeners, sizeof(imap_urlauth_worker_unix_listeners), { 0, }
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
23 };
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
24 /* </settings checks> */
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
25
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
26 struct service_settings imap_urlauth_worker_service_settings = {
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
27 .name = "imap-urlauth-worker",
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
28 .protocol = "imap",
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
29 .type = "",
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
30 .executable = "imap-urlauth-worker",
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
31 .user = "",
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
32 .group = "",
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
33 .privileged_group = "",
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
34 .extra_groups = "",
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
35 .chroot = "",
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
36
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
37 .drop_priv_before_exec = FALSE,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
38
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
39 .process_min_avail = 0,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
40 .process_limit = 1024,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
41 .client_limit = 1,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
42 .service_count = 1,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
43 .idle_kill = 0,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
44 .vsz_limit = (uoff_t)-1,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
45
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
46 .unix_listeners = { { &imap_urlauth_worker_unix_listeners_buf,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
47 sizeof(imap_urlauth_worker_unix_listeners[0]) } },
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
48 .fifo_listeners = ARRAY_INIT,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
49 .inet_listeners = ARRAY_INIT
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
50 };
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
51
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
52 #undef DEF
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
53 #define DEF(type, name) \
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
54 { type, #name, offsetof(struct imap_urlauth_worker_settings, name), NULL }
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
55
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
56 static const struct setting_define imap_urlauth_worker_setting_defines[] = {
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
57 DEF(SET_BOOL, verbose_proctitle),
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
58
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
59 DEF(SET_STR, imap_urlauth_host),
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
60 DEF(SET_UINT, imap_urlauth_port),
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
61
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
62 SETTING_DEFINE_LIST_END
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
63 };
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
64
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
65 const struct imap_urlauth_worker_settings imap_urlauth_worker_default_settings = {
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
66 .verbose_proctitle = FALSE,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
67
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
68 .imap_urlauth_host = "",
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
69 .imap_urlauth_port = 143
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
70 };
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
71
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
72 static const struct setting_parser_info *imap_urlauth_worker_setting_dependencies[] = {
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
73 &mail_user_setting_parser_info,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
74 NULL
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
75 };
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
76
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
77 const struct setting_parser_info imap_urlauth_worker_setting_parser_info = {
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
78 .module_name = "imap-urlauth-worker",
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
79 .defines = imap_urlauth_worker_setting_defines,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
80 .defaults = &imap_urlauth_worker_default_settings,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
81
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
82 .type_offset = (size_t)-1,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
83 .struct_size = sizeof(struct imap_urlauth_worker_settings),
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
84
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
85 .parent_offset = (size_t)-1,
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
86
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
87 .dependencies = imap_urlauth_worker_setting_dependencies
d419aac7ab31 Added support for IMAP URLAUTH and URLAUTH=BINARY extensions
Stephan Bosch <stephan@rename-it.nl>
parents:
diff changeset
88 };