From 2002be4f65776451676df6ee21a2e28f52bcad6d Mon Sep 17 00:00:00 2001 From: Mark Andrews Date: Tue, 2 May 2000 05:19:47 +0000 Subject: [PATCH] Add name_duporclone() and mem_maybedup(). --- lib/dns/rdata.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/lib/dns/rdata.c b/lib/dns/rdata.c index 8fb9e93508..0ad1831506 100644 --- a/lib/dns/rdata.c +++ b/lib/dns/rdata.c @@ -15,7 +15,7 @@ * SOFTWARE. */ -/* $Id: rdata.c,v 1.81 2000/04/29 01:48:11 gson Exp $ */ +/* $Id: rdata.c,v 1.82 2000/05/02 05:19:47 marka Exp $ */ #include @@ -110,6 +110,28 @@ static isc_result_t rdata_totext(dns_rdata_t *rdata, dns_rdata_textctx_t *tctx, isc_buffer_t *target); +static inline isc_result_t +name_duporclone(dns_name_t *source, isc_mem_t *mctx, dns_name_t *target) { + + if (mctx != NULL) + return (dns_name_dup(source, mctx, target)); + dns_name_clone(source, target); + return (ISC_R_SUCCESS); +} + +static inline void * +mem_maybedup(isc_mem_t *mctx, void *source, size_t length) { + void *new; + + if (mctx == NULL) + return (source); + new = isc_mem_allocate(mctx, length); + if (new != NULL) + memcpy(new, source, length); + + return (new); +} + static const char hexdigits[] = "0123456789abcdef"; static const char decdigits[] = "0123456789"; static const char octdigits[] = "01234567";