From: Ted Lemon Date: Fri, 19 Jan 2001 10:59:10 +0000 (+0000) Subject: - Work around clients that say they'll update their own A record when they X-Git-Tag: V3-BETA-2-PATCH-14~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e9d45f83a40ca2088ed7eb4095408f11afa23f8f;p=thirdparty%2Fdhcp.git - Work around clients that say they'll update their own A record when they don't actually have an FQDN with which to do the update. --- diff --git a/server/ddns.c b/server/ddns.c index f0c7c958b..31fb16d65 100644 --- a/server/ddns.c +++ b/server/ddns.c @@ -43,7 +43,7 @@ #ifndef lint static char copyright[] = -"$Id: ddns.c,v 1.10 2001/01/16 23:48:30 mellon Exp $ Copyright (c) 2000-2001 The Internet Software Consortium. All rights reserved.\n"; +"$Id: ddns.c,v 1.11 2001/01/19 10:59:10 mellon Exp $ Copyright (c) 2000-2001 The Internet Software Consortium. All rights reserved.\n"; #endif /* not lint */ #include "dhcpd.h" @@ -667,6 +667,11 @@ int ddns_updates (struct packet *packet, state -> options, &lease -> scope, oc, MDL)) goto noclient; + /* Win98 and Win2k will happily claim to be willing to + update an unqualified domain name. */ + if (!(oc = lookup_option (&fqdn_universe, packet -> options, + FQDN_DOMAINNAME))) + goto noclient; if (!(oc = lookup_option (&fqdn_universe, packet -> options, FQDN_FQDN)) || !evaluate_option_cache (&ddns_fwd_name, packet, lease,