changeset 19650:44b26f969840

*-login: Add all returned passdb fields to struct client_auth_reply.all_fields These will be mainly useful to plugins.
author Timo Sirainen <timo.sirainen@dovecot.fi>
date Wed, 27 Jan 2016 01:12:21 +0200
parents 096ae156e688
children b77fff55d62c
files src/login-common/client-common-auth.c src/login-common/client-common.h
diffstat 2 files changed, 5 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/login-common/client-common-auth.c	Wed Jan 27 00:35:34 2016 +0200
+++ b/src/login-common/client-common-auth.c	Wed Jan 27 01:12:21 2016 +0200
@@ -558,6 +558,7 @@
 			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 @@
 		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;
 		}
--- a/src/login-common/client-common.h	Wed Jan 27 00:35:34 2016 +0200
+++ b/src/login-common/client-common.h	Wed Jan 27 01:12:21 2016 +0200
@@ -65,6 +65,9 @@
 	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;