summaryrefslogtreecommitdiffstats
path: root/contrib/bind/bin/named/db_update.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/bind/bin/named/db_update.c')
-rw-r--r--contrib/bind/bin/named/db_update.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/contrib/bind/bin/named/db_update.c b/contrib/bind/bin/named/db_update.c
index 3bd9838..b765c4d 100644
--- a/contrib/bind/bin/named/db_update.c
+++ b/contrib/bind/bin/named/db_update.c
@@ -1,6 +1,6 @@
#if !defined(lint) && !defined(SABER)
static const char sccsid[] = "@(#)db_update.c 4.28 (Berkeley) 3/21/91";
-static const char rcsid[] = "$Id: db_update.c,v 8.42 2000/04/21 06:54:04 vixie Exp $";
+static const char rcsid[] = "$Id: db_update.c,v 8.45 2000/12/23 08:14:36 vixie Exp $";
#endif /* not lint */
/*
@@ -583,7 +583,7 @@ db_update(const char *name,
goto delete;
if (dp->d_type == T_CNAME &&
!NS_OPTION_P(OPTION_MULTIPLE_CNAMES) &&
- db_cmp(dp, odp) != 0)
+ db_cmp(dp, odp) != 0) {
if ((flags & DB_REPLACE) == 0 &&
zones[dp->d_zone].z_type ==
Z_PRIMARY) {
@@ -593,6 +593,7 @@ db_update(const char *name,
return (CNAMEANDOTHER);
} else
goto delete;
+ }
#if 0
/* BEW - this _seriously_ breaks DNSSEC. Is it necessary for dynamic update? */
#ifdef BIND_UPDATE
@@ -751,10 +752,9 @@ db_update(const char *name,
ns_debug(ns_log_db, 3, "db_update: adding%s %#x",
(newdp->d_flags&DB_F_HINT) ? " hint":"", newdp);
- if (NS_OPTION_P(OPTION_HOSTSTATS) &&
- newdp->d_zone == DB_Z_CACHE &&
+ if (newdp->d_zone == DB_Z_CACHE &&
(newdp->d_flags & DB_F_HINT) == 0)
- newdp->d_ns = nameserFind(from.sin_addr, NS_F_INSERT);
+ newdp->d_addr = from.sin_addr;
/* Add to end of list, generally preserving order */
newdp->d_next = NULL;
@@ -937,10 +937,8 @@ db_cmp(const struct databuf *dp1, const struct databuf *dp2) {
cp1 += t1; cp2 += t2;
/* Replacement */
- t1 = strlen((char *)cp1); t2 = strlen((char *)cp2);
- if (t1 != t2 || memcmp(cp1, cp2, t1))
+ if (ns_samename((char *)cp1, (char *)cp2) != 1)
return (1);
- cp1 += t1 + 1; cp2 += t2 + 1;
/* they all checked out! */
return (0);
OpenPOWER on IntegriCloud