]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
auth: Move auth_request_fields initialization code to auth_request_fields_init()
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Mon, 3 Aug 2020 14:16:12 +0000 (17:16 +0300)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Thu, 27 Aug 2020 06:20:17 +0000 (06:20 +0000)
src/auth/auth-request-fields.c
src/auth/auth-request.c
src/auth/auth-request.h

index 26c62077e883c5578a1637e273a739297c77b69b..53e01cd16b51b4a533c4b6908fd7c65731cf8079 100644 (file)
@@ -6,6 +6,15 @@
 #include "str-sanitize.h"
 #include "auth-request.h"
 
+void auth_request_fields_init(struct auth_request *request)
+{
+       request->fields.extra_fields = auth_fields_init(request->pool);
+       if (request->mech != NULL) {
+               request->fields.mech_name = request->mech->mech_name;
+               event_add_str(request->event, "mech", request->mech->mech_name);
+       }
+}
+
 static void
 auth_str_add_keyvalue(string_t *dest, const char *key, const char *value)
 {
index 7686f386cfe0c1bfc6fc464742abed1ad1769f88..08d34db009bda84f36a1e242ffb9369f35ac9cdd 100644 (file)
@@ -107,9 +107,9 @@ static void auth_request_post_alloc_init(struct auth_request *request, struct ev
        request->last_access = ioloop_time;
        request->session_pid = (pid_t)-1;
        request->set = global_auth_settings;
-       request->fields.extra_fields = auth_fields_init(request->pool);
        request->event = event_create(parent_event);
        request->mech_event = event_create(request->event);
+       auth_request_fields_init(request);
 
        level = request->set->verbose ? LOG_TYPE_INFO : LOG_TYPE_WARNING;
        event_set_min_log_level(request->event, level);
@@ -128,10 +128,8 @@ auth_request_new(const struct mech_module *mech, struct event *parent_event)
        struct auth_request *request;
 
        request = mech->auth_new();
-       auth_request_post_alloc_init(request, parent_event);
        request->mech = mech;
-       request->fields.mech_name = mech->mech_name;
-       event_add_str(request->event, "mech", request->mech->mech_name);
+       auth_request_post_alloc_init(request, parent_event);
 
        return request;
 }
index b02029e05a53da4c16188a70e64e072c65e44d07..2c91517e9f5e15e1db8566c8c84599cb7d7a3b72 100644 (file)
@@ -315,6 +315,7 @@ auth_request_finished_event(struct auth_request *request, struct event *event);
 void auth_request_log_finished(struct auth_request *request);
 void auth_request_master_user_login_finish(struct auth_request *request);
 const char *auth_request_get_log_prefix_db(struct auth_request *auth_request);
+void auth_request_fields_init(struct auth_request *request);
 
 void auth_request_passdb_lookup_begin(struct auth_request *request);
 void auth_request_passdb_lookup_end(struct auth_request *request,