diff -Nru chrony-1.21.orig/addrfilt.c chrony-1.21/addrfilt.c --- chrony-1.21.orig/addrfilt.c 2006-02-20 15:54:23.000000000 +0100 +++ chrony-1.21/addrfilt.c 2006-02-20 16:03:59.000000000 +0100 @@ -43,17 +43,15 @@ /* Define the table size */ #define TABLE_SIZE (1UL<extended != NULL) { for (i=0; iextended))[i]); + child_node = node->extended + i; close_node(child_node); } Free(node->extended); @@ -124,10 +122,10 @@ if (node->extended == NULL) { - node->extended = MallocNew(ExtendedTable); + node->extended = (TableNode *) MallocArray(ExtendedTable, TABLE_SIZE); for (i=0; iextended))[i]); + child_node = node->extended + i; child_node->state = AS_PARENT; child_node->extended = NULL; } @@ -168,7 +166,7 @@ if (!(node->extended)) { open_node(node); } - node = &((*(node->extended))[subnet]); + node = node->extended + subnet; bits_to_go -= NBITS; } @@ -187,7 +185,7 @@ if (!(node->extended)) { open_node(node); } - node = &((*(node->extended))[subnet]); + node = node->extended + subnet; bits_to_go -= NBITS; } @@ -199,7 +197,7 @@ } for (i=subnet, j=0; jextended))[i]); + this_node = node->extended + i; if (delete_children) { close_node(this_node); } @@ -283,7 +281,7 @@ if (node->extended) { subnet = get_subnet(residual); residual = get_residual(residual); - node = &((*(node->extended))[subnet]); + node = node->extended + subnet; } else { /* Make decision on this node */ finished = 1;