From: Timo Sirainen Date: Tue, 26 Jan 2016 23:12:21 +0000 (+0200) Subject: *-login: Add all returned passdb fields to struct client_auth_reply.all_fields X-Git-Tag: 2.2.22.rc1~270 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=fd3d068169c6ec587c9c446f2ee45560a444334a;p=thirdparty%2Fdovecot%2Fcore.git *-login: Add all returned passdb fields to struct client_auth_reply.all_fields These will be mainly useful to plugins. --- diff --git a/src/login-common/client-common-auth.c b/src/login-common/client-common-auth.c index e0e9bb9010..801938a831 100644 --- a/src/login-common/client-common-auth.c +++ b/src/login-common/client-common-auth.c @@ -558,6 +558,7 @@ sasl_callback(struct client *client, enum sasl_server_reply sasl_reply, timeout_remove(&client->to_auth_waiting); if (args != NULL) { client_auth_parse_args(client, args, &reply); + reply.all_fields = args; if (client_auth_handle_reply(client, &reply, TRUE)) break; } @@ -572,6 +573,7 @@ sasl_callback(struct client *client, enum sasl_server_reply sasl_reply, if (args != NULL) { client_auth_parse_args(client, args, &reply); reply.nologin = TRUE; + reply.all_fields = args; if (client_auth_handle_reply(client, &reply, FALSE)) break; } diff --git a/src/login-common/client-common.h b/src/login-common/client-common.h index 18b885b1c5..ba511a44fe 100644 --- a/src/login-common/client-common.h +++ b/src/login-common/client-common.h @@ -65,6 +65,9 @@ struct client_auth_reply { unsigned int proxy_refresh_secs; enum login_proxy_ssl_flags ssl_flags; + /* all the key=value fields returned by passdb */ + const char *const *all_fields; + unsigned int proxy:1; unsigned int proxy_nopipelining:1; unsigned int temp:1;