Mercurial > dovecot > core-2.2
changeset 21473:1797e9ead19b
auth: Code cleanup - Move userdb extra fields exporting to its own function
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Mon, 06 Feb 2017 00:46:55 +0200 |
parents | 1d4c93fafa9f |
children | 6318f9e9b737 |
files | src/auth/auth-request.c |
diffstat | 1 files changed, 18 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/src/auth/auth-request.c Wed Jan 25 23:26:35 2017 +0200 +++ b/src/auth/auth-request.c Mon Feb 06 00:46:55 2017 +0200 @@ -277,6 +277,22 @@ } } +static void +auth_request_export_fields(string_t *dest, struct auth_fields *auth_fields, + const char *prefix) +{ + const ARRAY_TYPE(auth_field) *fields = auth_fields_export(auth_fields); + const struct auth_field *field; + + array_foreach(fields, field) { + str_printfa(dest, "\t%s%s", prefix, field->key); + if (field->value != NULL) { + str_append_c(dest, '='); + str_append_tabescaped(dest, field->value); + } + } +} + void auth_request_export(struct auth_request *request, string_t *dest) { str_append(dest, "user="); @@ -340,17 +356,8 @@ if (request->mech_name != NULL) auth_str_add_keyvalue(dest, "mech", request->mech_name); /* export any userdb fields */ - if (request->userdb_reply != NULL) { - const ARRAY_TYPE(auth_field) *fields = auth_fields_export(request->userdb_reply); - const struct auth_field *field; - array_foreach(fields, field) { - str_printfa(dest, "\tuserdb_%s", field->key); - if (field->value != NULL) { - str_append_c(dest, '='); - str_append_tabescaped(dest, field->value); - } - } - } + if (request->userdb_reply != NULL) + auth_request_export_fields(dest, request->userdb_reply, "userdb_"); } bool auth_request_import_info(struct auth_request *request,