[dovecot-cvs] dovecot/src/auth auth-master-connection.c,1.3,1.4 mech-digest-md5.c,1.14,1.15 mech-plain.c,1.15,1.16 mech.c,1.14,1.15 passdb-pam.c,1.11,1.12

cras at procontrol.fi cras at procontrol.fi
Sun Sep 21 20:21:39 EEST 2003


Update of /home/cvs/dovecot/src/auth
In directory danu:/tmp/cvs-serv17131/auth

Modified Files:
	auth-master-connection.c mech-digest-md5.c mech-plain.c mech.c 
	passdb-pam.c 
Log Message:
data_stack_pool split into two: unsafe_data_stack_pool which works like
before, and a new one which verifies that stack frame stays the same
whenever the pool is accessed.



Index: auth-master-connection.c
===================================================================
RCS file: /home/cvs/dovecot/src/auth/auth-master-connection.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- auth-master-connection.c	22 Aug 2003 06:51:15 -0000	1.3
+++ auth-master-connection.c	21 Sep 2003 16:21:36 -0000	1.4
@@ -42,7 +42,7 @@
 	buffer_t *buf;
 	char *p;
 
-	buf = buffer_create_dynamic(data_stack_pool,
+	buf = buffer_create_dynamic(pool_datastack_create(),
 				    sizeof(reply) + 256, (size_t)-1);
 	memset(&reply, 0, sizeof(reply));
 	buffer_append(buf, &reply, sizeof(reply));

Index: mech-digest-md5.c
===================================================================
RCS file: /home/cvs/dovecot/src/auth/mech-digest-md5.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -d -r1.14 -r1.15
--- mech-digest-md5.c	22 Aug 2003 04:57:49 -0000	1.14
+++ mech-digest-md5.c	21 Sep 2003 16:21:36 -0000	1.15
@@ -76,7 +76,7 @@
 	random_fill(nonce, sizeof(nonce));
 
 	t_push();
-	buf = buffer_create_static(data_stack_pool,
+	buf = buffer_create_static(pool_datastack_create(),
 				   MAX_BASE64_ENCODED_SIZE(sizeof(nonce))+1);
 
 	base64_encode(nonce, sizeof(nonce), buf);
@@ -123,7 +123,7 @@
 	if (credentials == NULL || strlen(credentials) != sizeof(digest)*2)
 		return FALSE;
 
-	digest_buf = buffer_create_data(data_stack_pool,
+	digest_buf = buffer_create_data(pool_datastack_create(),
 					digest, sizeof(digest));
 	if (hex_to_binary(credentials, digest_buf) <= 0)
 		return FALSE;

Index: mech-plain.c
===================================================================
RCS file: /home/cvs/dovecot/src/auth/mech-plain.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -d -r1.15 -r1.16
--- mech-plain.c	22 Aug 2003 04:57:49 -0000	1.15
+++ mech-plain.c	21 Sep 2003 16:21:36 -0000	1.16
@@ -35,7 +35,8 @@
 			else {
 				i++;
 				len = request->data_size - i;
-				pass = p_strndup(data_stack_pool, data+i, len);
+				pass = p_strndup(unsafe_data_stack_pool,
+						 data+i, len);
 				break;
 			}
 		}

Index: mech.c
===================================================================
RCS file: /home/cvs/dovecot/src/auth/mech.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -d -r1.14 -r1.15
--- mech.c	22 Aug 2003 06:51:15 -0000	1.14
+++ mech.c	21 Sep 2003 16:21:36 -0000	1.15
@@ -147,7 +147,7 @@
 {
 	buffer_t *buf;
 
-	buf = buffer_create_dynamic(data_stack_pool, 256, (size_t)-1);
+	buf = buffer_create_dynamic(pool_datastack_create(), 256, (size_t)-1);
 
 	reply->username_idx = 0;
 	buffer_append(buf, auth_request->user, strlen(auth_request->user)+1);

Index: passdb-pam.c
===================================================================
RCS file: /home/cvs/dovecot/src/auth/passdb-pam.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- passdb-pam.c	7 Sep 2003 13:35:35 -0000	1.11
+++ passdb-pam.c	21 Sep 2003 16:21:36 -0000	1.12
@@ -243,7 +243,8 @@
 		}
 	}
 
-	buf = buffer_create_data(data_stack_pool, buf_data, sizeof(buf_data));
+	buf = buffer_create_data(pool_datastack_create(),
+				 buf_data, sizeof(buf_data));
 	buffer_append(buf, &result, sizeof(result));
 
 	if (str != NULL) {



More information about the dovecot-cvs mailing list