changeset 6465:da4867da38c2 HEAD

If we're connecting to client socket instead of a master socket, log an understandable error message.
author Timo Sirainen <tss@iki.fi>
date Sat, 22 Sep 2007 16:50:42 +0300
parents 90faec88598f
children eab04861f2fc
files src/deliver/auth-client.c
diffstat 1 files changed, 7 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/deliver/auth-client.c	Sat Sep 22 16:24:09 2007 +0300
+++ b/src/deliver/auth-client.c	Sat Sep 22 16:50:42 2007 +0300
@@ -29,6 +29,7 @@
 
 	struct ioloop *ioloop;
 	uid_t euid;
+	const char *auth_socket;
 	const char *user;
 	ARRAY_TYPE(string) *extra_fields;
 
@@ -164,7 +165,11 @@
 			return_value = EX_NOUSER;
 		else if (strncmp(line, "FAIL\t1", 6) == 0)
 			return_value = EX_TEMPFAIL;
-		else {
+		else if (strncmp(line, "CUID\t", 5) == 0) {
+			i_error("%s is an auth client socket. "
+				"It should be a master socket.",
+				conn->auth_socket);
+		} else {
 			i_error("BUG: Unexpected input from auth master: %s",
 				line);
 		}
@@ -214,6 +219,7 @@
 	conn->ioloop = ioloop;
 	conn->euid = euid;
 	conn->user = user;
+	conn->auth_socket = auth_socket;
 	conn->to = timeout_add(1000*AUTH_REQUEST_TIMEOUT,
 			       auth_client_timeout, conn);
 	conn->extra_fields = extra_fields_r;