PATCH: splay_tree fix

From: Robert Collins <robert.collins@dont-contact.us>
Date: Mon, 8 Jan 2001 17:38:44 +1100

Hi y'all. This fixes the splay_tree crash on reconfigure, and also
updates the logging to be 'user' not 'proxy-auth' in line with Henrik's
function name changes.

Rob

Index: acl.c
===================================================================
RCS file: /cvsroot/squid/squid/src/acl.c,v
retrieving revision 1.1.1.3.12.26.2.28
diff -u -r1.1.1.3.12.26.2.28 acl.c
--- acl.c 2001/01/08 00:14:56 1.1.1.3.12.26.2.28
+++ acl.c 2001/01/08 06:40:55
@@ -641,12 +641,17 @@
     acl_user_data *data;
     splayNode *Top = NULL;

- debug(28, 2) ("aclParseUserList: parsing authlist\n");
+ debug(28, 2) ("aclParseUserList: parsing user list\n");
     if (*current == NULL) {
        debug(28, 3) ("aclParseUserList: current is null. Creating\n");
- *current = memAllocate(MEM_ACL_USER_DATA); /*we rely on mA.
zeroing */
+ *current = memAllocate(MEM_ACL_USER_DATA);
+ data = *current;
+ data->names=NULL;
+ data->flags.case_insensitive=0;
+ data->flags.required=0;
     }
     data = *current;
+ Top = data->names;
     if ((t = strtokFile())) {
        debug(28, 5) ("aclParseUserList: First token is %s\n", t);
        if (strcmp("-i", t) == 0) {
@@ -665,7 +670,7 @@
        data->flags.case_insensitive);
     /* we might inherit from a previous declaration */

- debug(28, 4) ("aclParseUserList: parsing proxy-auth list\n");
+ debug(28, 4) ("aclParseUserList: parsing user list\n");
     while ((t = strtokFile())) {
        debug(28, 6) ("aclParseUserList: Got token: %s\n", t);
        if (data->flags.case_insensitive)
@@ -2040,7 +2045,8 @@
 aclFreeUserData(void *data)
 {
     acl_user_data *d = data;
- splay_destroy(d->names, xfree);
+ if (d->names)
+ splay_destroy(d->names, xfree);
     memFree(d, MEM_ACL_USER_DATA);
 }
Received on Sun Jan 07 2001 - 23:42:29 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:13:13 MST