From b9d0cc0595e8f3cf5f6d28c6873291fc98bfc8c7 Mon Sep 17 00:00:00 2001 From: David Hankins Date: Thu, 28 Jun 2007 17:19:55 +0000 Subject: [PATCH] - The parse warning that 'deny dyanmic bootp;' must be configured for failover protected subnets was removed. [ISC-Bugs #16975] --- RELNOTES | 5 +++++ server/confpars.c | 56 +---------------------------------------------- 2 files changed, 6 insertions(+), 55 deletions(-) diff --git a/RELNOTES b/RELNOTES index 57e691595..88a00946e 100644 --- a/RELNOTES +++ b/RELNOTES @@ -167,6 +167,11 @@ suggested fixes to . were transmitted to it, and what frames are being carried through it which it should not intercept. + Changes since 3.1.0rc1 + +- The parse warning that 'deny dyanmic bootp;' must be configured for + failover protected subnets was removed. + Changes since 3.1.0b2 - Failover rebalance events no longer play ping pong with round errors diff --git a/server/confpars.c b/server/confpars.c index 90eb546ce..d0a377e76 100644 --- a/server/confpars.c +++ b/server/confpars.c @@ -34,7 +34,7 @@ #ifndef lint static char copyright[] = -"$Id: confpars.c,v 1.169 2007/06/27 18:25:15 each Exp $ Copyright (c) 2004-2007 Internet Systems Consortium. All rights reserved.\n"; +"$Id: confpars.c,v 1.170 2007/06/28 17:19:55 dhankins Exp $ Copyright (c) 2004-2007 Internet Systems Consortium. All rights reserved.\n"; #endif /* not lint */ #include "dhcpd.h" @@ -1558,60 +1558,6 @@ void parse_pool_statement (cfile, group, type) } } while (!done); -#if defined (FAILOVER_PROTOCOL) - /* We can't do failover on a pool that supports dynamic bootp, - because BOOTP doesn't support leases, and failover absolutely - depends on lease timing. */ - if (pool -> failover_peer) { - /* This search order matches the search orders later in - * execution - deny first, if not denied, check permit - * list. A dynamic bootp client may be known or unknown, - * it may belong to a member of a class, but it definitely - * will not be authenticated since that requires DHCP - * to work. So a dynamic bootp client is definitely not - * an authenticated client, and we can't say for sure about - * anything else. - * - * So we nag the user. - */ - for (permit = pool -> prohibit_list; permit; - permit = permit -> next) { - if (permit -> type == permit_dynamic_bootp_clients || - permit -> type == permit_unauthenticated_clients || - permit -> type == permit_all_clients) - break; - } - if (!permit) { - permit = pool -> permit_list; - do { - if (!permit || - permit -> type != - permit_authenticated_clients) { - parse_warn (cfile, - "pools with failover peers %s", - "may not permit dynamic bootp."); - log_error ("Either write a \"%s\" %s", - "no failover", - "statement and use disjoint"); - log_error ("pools, or%s (%s) %s", - " don't permit dynamic bootp", - "\"deny dynamic bootp clients;\"", - "in this pool."); - log_error ("This is a protocol,%s %s", - " limitation, not an ISC DHCP", - "limitation, so"); - log_error ("please don't request an %s", - "enhancement or ask why this is."); - - break; - } - - permit = permit -> next; - } while (permit); - } - } -#endif /* FAILOVER_PROTOCOL */ - /* See if there's already a pool into which we can merge this one. */ for (pp = pool -> shared_network -> pools; pp; pp = pp -> next) { struct lease *l; -- 2.39.2