1 /* Copyright (c) 2013-2018 Dovecot authors, see the included COPYING file */ 2 3 #include "lib.h" 4 #include "buffer.h" 5 #include "settings-parser.h" 6 #include "service-settings.h" 7 #include "login-settings.h" 8 #include "imap-urlauth-login-settings.h" 9 10 #include <stddef.h> 11 12 /* <settings checks> */ 13 static struct file_listener_settings 14 imap_urlauth_login_unix_listeners_array[] = { 15 { "imap-urlauth", 0666, "", "" } 16 }; 17 static struct file_listener_settings *imap_urlauth_login_unix_listeners[] = { 18 &imap_urlauth_login_unix_listeners_array[0] 19 }; 20 static buffer_t imap_urlauth_login_unix_listeners_buf = { 21 { { imap_urlauth_login_unix_listeners, 22 sizeof(imap_urlauth_login_unix_listeners) } } 23 }; 24 /* </settings checks> */ 25 26 struct service_settings imap_urlauth_login_service_settings = { 27 .name = "imap-urlauth-login", 28 .protocol = "imap", 29 .type = "login", 30 .executable = "imap-urlauth-login", 31 .user = "$default_login_user", 32 .group = "", 33 .privileged_group = "", 34 .extra_groups = "", 35 .chroot = "token-login", 36 37 .drop_priv_before_exec = FALSE, 38 39 .process_min_avail = 0, 40 .process_limit = 0, 41 .client_limit = 0, 42 .service_count = 1, 43 .idle_kill = 0, 44 .vsz_limit = UOFF_T_MAX, 45 46 .unix_listeners = { { &imap_urlauth_login_unix_listeners_buf, 47 sizeof(imap_urlauth_login_unix_listeners[0]) } }, 48 .fifo_listeners = ARRAY_INIT, 49 .inet_listeners = ARRAY_INIT 50 }; 51 52 static const struct setting_define imap_urlauth_login_setting_defines[] = { 53 SETTING_DEFINE_LIST_END 54 }; 55 56 static const struct setting_parser_info *imap_urlauth_login_setting_dependencies[] = { 57 &login_setting_parser_info, 58 NULL 59 }; 60 61 const struct setting_parser_info imap_urlauth_login_setting_parser_info = { 62 .module_name = "imap-urlauth-login", 63 .defines = imap_urlauth_login_setting_defines, 64 65 .type_offset = SIZE_MAX, 66 .parent_offset = SIZE_MAX, 67 68 .dependencies = imap_urlauth_login_setting_dependencies 69 }; 70 71 const struct setting_parser_info *imap_urlauth_login_setting_roots[] = { 72 &login_setting_parser_info, 73 &imap_urlauth_login_setting_parser_info, 74 NULL 75 }; 76