Module Name: src Committed By: christos Date: Sun Jun 21 01:13:21 UTC 2015
Modified Files: src/external/bsd/blacklist/bin: blacklistd.c Log Message: Restart the loop each time we delete an entry because the hash code does not handle it well. Is that a db bug? To generate a diff of this commit: cvs rdiff -u -r1.32 -r1.33 src/external/bsd/blacklist/bin/blacklistd.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/external/bsd/blacklist/bin/blacklistd.c diff -u src/external/bsd/blacklist/bin/blacklistd.c:1.32 src/external/bsd/blacklist/bin/blacklistd.c:1.33 --- src/external/bsd/blacklist/bin/blacklistd.c:1.32 Wed Jan 28 17:30:42 2015 +++ src/external/bsd/blacklist/bin/blacklistd.c Sat Jun 20 21:13:21 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: blacklistd.c,v 1.32 2015/01/28 22:30:42 christos Exp $ */ +/* $NetBSD: blacklistd.c,v 1.33 2015/06/21 01:13:21 christos Exp $ */ /*- * Copyright (c) 2015 The NetBSD Foundation, Inc. @@ -32,7 +32,7 @@ #include "config.h" #endif #include <sys/cdefs.h> -__RCSID("$NetBSD: blacklistd.c,v 1.32 2015/01/28 22:30:42 christos Exp $"); +__RCSID("$NetBSD: blacklistd.c,v 1.33 2015/06/21 01:13:21 christos Exp $"); #include <sys/types.h> #include <sys/socket.h> @@ -284,6 +284,7 @@ update(void) return; } +again: for (n = 0, f = 1; state_iterate(state, &c, &dbi, f) == 1; f = 0, n++) { @@ -305,6 +306,7 @@ update(void) buf, c.c_lmask, c.c_port, c.c_duration); } state_del(state, &c); + goto again; } }