From db2573eadfd9389391f6daf73432de7f73b46e81 Mon Sep 17 00:00:00 2001 From: Kai Blin Date: Fri, 16 Dec 2011 09:21:51 +0100 Subject: [PATCH] s4 dns: Implement dns name equality check --- source4/dns_server/dns_server.h | 1 + source4/dns_server/dns_utils.c | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/source4/dns_server/dns_server.h b/source4/dns_server/dns_server.h index d658b2a492..0339fff01f 100644 --- a/source4/dns_server/dns_server.h +++ b/source4/dns_server/dns_server.h @@ -55,6 +55,7 @@ WERROR dns_server_process_update(struct dns_server *dns, uint8_t werr_to_dns_err(WERROR werror); bool dns_name_match(const char *zone, const char *name, size_t *host_part_len); +bool dns_name_equal(const char *name1, const char *name2); WERROR dns_name2dn(struct dns_server *dns, TALLOC_CTX *mem_ctx, const char *name, diff --git a/source4/dns_server/dns_utils.c b/source4/dns_server/dns_utils.c index 68c0c979da..f179546849 100644 --- a/source4/dns_server/dns_utils.c +++ b/source4/dns_server/dns_utils.c @@ -100,6 +100,15 @@ bool dns_name_match(const char *zone, const char *name, size_t *host_part_len) return true; } +/* Names are equal if they match and there's nothing left over */ +bool dns_name_equal(const char *name1, const char *name2) +{ + size_t host_part_len; + bool ret = dns_name_match(name1, name2, &host_part_len); + + return ret && (host_part_len == 0); +} + WERROR dns_name2dn(struct dns_server *dns, TALLOC_CTX *mem_ctx, const char *name, -- 2.34.1