From: Timo Sirainen Date: Tue, 4 Aug 2020 11:26:08 +0000 (+0300) Subject: auth: Use auth_request_init_userdb_reply() always for initializing userdb_reply X-Git-Tag: 2.3.13~315 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c5a72becc676e3102687848921f41ce0f1c766f9;p=thirdparty%2Fdovecot%2Fcore.git auth: Use auth_request_init_userdb_reply() always for initializing userdb_reply --- diff --git a/src/auth/auth-request-fields.c b/src/auth/auth-request-fields.c index 5be1a1211d..a183b8e176 100644 --- a/src/auth/auth-request-fields.c +++ b/src/auth/auth-request-fields.c @@ -246,7 +246,7 @@ bool auth_request_import(struct auth_request *request, auth_fields_add(fields->extra_fields, key+7, value, 0); else if (str_begins(key, "userdb_")) { if (fields->userdb_reply == NULL) - fields->userdb_reply = auth_fields_init(request->pool); + auth_request_init_userdb_reply(request, FALSE); auth_fields_add(fields->userdb_reply, key+7, value, 0); } else return FALSE; diff --git a/src/auth/auth-request.c b/src/auth/auth-request.c index 755def330e..0310a8540a 100644 --- a/src/auth/auth-request.c +++ b/src/auth/auth-request.c @@ -1408,17 +1408,16 @@ static bool auth_request_lookup_user_cache(struct auth_request *request, if (*value == '\0') { /* negative cache entry */ *result_r = USERDB_RESULT_USER_UNKNOWN; - request->fields.userdb_reply = auth_fields_init(request->pool); + auth_request_init_userdb_reply(request, FALSE); return TRUE; } /* We want to preserve any userdb fields set by the earlier passdb lookup, so initialize userdb_reply only if it doesn't exist. - Don't use auth_request_init_userdb_reply(), because the entire - userdb part of the result comes from the cache so we don't want to - initialize it with default_fields. */ + Don't add userdb's default_fields, because the entire userdb part of + the result comes from the cache. */ if (request->fields.userdb_reply == NULL) - request->fields.userdb_reply = auth_fields_init(request->pool); + auth_request_init_userdb_reply(request, FALSE); auth_request_userdb_import(request, value); *result_r = USERDB_RESULT_OK; return TRUE;