dovecot-2.0: *-login: Login binaries can now set up their own pr...
dovecot at dovecot.org
dovecot at dovecot.org
Mon Oct 12 19:51:14 EEST 2009
details: http://hg.dovecot.org/dovecot-2.0/rev/45cdc5539c93
changeset: 10037:45cdc5539c93
user: Timo Sirainen <tss at iki.fi>
date: Mon Oct 12 12:51:06 2009 -0400
description:
*-login: Login binaries can now set up their own private settings.
diffstat:
6 files changed, 19 insertions(+), 5 deletions(-)
src/imap-login/client.c | 4 ++++
src/login-common/common.h | 2 ++
src/login-common/login-settings.c | 11 ++++++-----
src/login-common/login-settings.h | 2 ++
src/login-common/main.c | 1 +
src/pop3-login/client.c | 4 ++++
diffs (95 lines):
diff -r e8fc7ee87410 -r 45cdc5539c93 src/imap-login/client.c
--- a/src/imap-login/client.c Mon Oct 12 12:37:35 2009 -0400
+++ b/src/imap-login/client.c Mon Oct 12 12:51:06 2009 -0400
@@ -32,6 +32,10 @@ const char *login_process_name = "imap-l
const char *login_process_name = "imap-login";
unsigned int login_default_port = 143;
+void login_process_preinit(void)
+{
+}
+
/* Skip incoming data until newline is found,
returns TRUE if newline was found. */
bool client_skip_line(struct imap_client *client)
diff -r e8fc7ee87410 -r 45cdc5539c93 src/login-common/common.h
--- a/src/login-common/common.h Mon Oct 12 12:37:35 2009 -0400
+++ b/src/login-common/common.h Mon Oct 12 12:51:06 2009 -0400
@@ -21,4 +21,6 @@ extern int anvil_fd;
extern const struct login_settings *global_login_settings;
+void login_process_preinit(void);
+
#endif
diff -r e8fc7ee87410 -r 45cdc5539c93 src/login-common/login-settings.c
--- a/src/login-common/login-settings.c Mon Oct 12 12:37:35 2009 -0400
+++ b/src/login-common/login-settings.c Mon Oct 12 12:51:06 2009 -0400
@@ -83,6 +83,11 @@ struct setting_parser_info login_setting
MEMBER(check_func) login_settings_check
};
+const struct setting_parser_info *login_set_roots[] = {
+ &login_setting_parser_info,
+ NULL
+};
+
/* <settings checks> */
static int ssl_settings_check(void *_set ATTR_UNUSED, const char **error_r)
{
@@ -152,17 +157,13 @@ login_settings_read(struct master_servic
const struct ip_addr *local_ip,
const struct ip_addr *remote_ip)
{
- static const struct setting_parser_info *set_roots[] = {
- &login_setting_parser_info,
- NULL
- };
struct master_service_settings_input input;
const char *error;
void **sets;
struct login_settings *set;
memset(&input, 0, sizeof(input));
- input.roots = set_roots;
+ input.roots = login_set_roots;
input.module = "login";
input.service = login_protocol;
diff -r e8fc7ee87410 -r 45cdc5539c93 src/login-common/login-settings.h
--- a/src/login-common/login-settings.h Mon Oct 12 12:37:35 2009 -0400
+++ b/src/login-common/login-settings.h Mon Oct 12 12:51:06 2009 -0400
@@ -32,6 +32,8 @@ struct login_settings {
char *const *log_format_elements_split;
};
+extern const struct setting_parser_info *login_set_roots[];
+
struct login_settings *
login_settings_read(struct master_service *service, pool_t pool,
const struct ip_addr *local_ip,
diff -r e8fc7ee87410 -r 45cdc5539c93 src/login-common/main.c
--- a/src/login-common/main.c Mon Oct 12 12:37:35 2009 -0400
+++ b/src/login-common/main.c Mon Oct 12 12:51:06 2009 -0400
@@ -199,6 +199,7 @@ int main(int argc, char *argv[], char *e
master_fd = master_connect(t_strcut(login_process_name, '-'));
}
#endif
+ login_process_preinit();
process_title_init(argv, envp);
set_pool = pool_alloconly_create("global login settings", 4096);
diff -r e8fc7ee87410 -r 45cdc5539c93 src/pop3-login/client.c
--- a/src/pop3-login/client.c Mon Oct 12 12:37:35 2009 -0400
+++ b/src/pop3-login/client.c Mon Oct 12 12:51:06 2009 -0400
@@ -24,6 +24,10 @@ const char *login_process_name = "pop3-l
const char *login_process_name = "pop3-login";
unsigned int login_default_port = 110;
+void login_process_preinit(void)
+{
+}
+
static bool cmd_stls(struct pop3_client *client)
{
client_cmd_starttls(&client->common);
More information about the dovecot-cvs
mailing list