summaryrefslogtreecommitdiffstats
path: root/contrib/bind9/lib/dns/rdata.c
diff options
context:
space:
mode:
authorerwin <erwin@FreeBSD.org>2013-08-22 08:15:03 +0000
committererwin <erwin@FreeBSD.org>2013-08-22 08:15:03 +0000
commit6a288ef517fece2ca5a21d081efd7b4a81da0053 (patch)
tree37271fd86c9be9a6bab12a7aebd85ccfbb8a7b62 /contrib/bind9/lib/dns/rdata.c
parent0b46e38a09fbccfdfd7bca0f387c66b2c64fa5b6 (diff)
parentf32b4abce98c97ee6e51b7aa8f8fde6e4cab7f28 (diff)
downloadFreeBSD-src-6a288ef517fece2ca5a21d081efd7b4a81da0053.zip
FreeBSD-src-6a288ef517fece2ca5a21d081efd7b4a81da0053.tar.gz
Update Bind to 9.9.3-P2
Notable new features: * Elliptic Curve Digital Signature Algorithm keys and signatures in DNSSEC are now supported per RFC 6605. [RT #21918] * Introduces a new tool "dnssec-verify" that validates a signed zone, checking for the correctness of signatures and NSEC/NSEC3 chains. [RT #23673] * BIND now recognizes the TLSA resource record type, created to support IETF DANE (DNS-based Authentication of Named Entities) [RT #28989] * The new "inline-signing" option, in combination with the "auto-dnssec" option that was introduced in BIND 9.7, allows named to sign zones completely transparently. Approved by: delphij (mentor) MFC after: 3 days Sponsored by: DK Hostmaster A/S
Diffstat (limited to 'contrib/bind9/lib/dns/rdata.c')
-rw-r--r--contrib/bind9/lib/dns/rdata.c19
1 files changed, 14 insertions, 5 deletions
diff --git a/contrib/bind9/lib/dns/rdata.c b/contrib/bind9/lib/dns/rdata.c
index 3865f42..a83dab4 100644
--- a/contrib/bind9/lib/dns/rdata.c
+++ b/contrib/bind9/lib/dns/rdata.c
@@ -15,6 +15,8 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
+/* $Id$ */
+
/*! \file */
#include <config.h>
@@ -878,7 +880,8 @@ dns_rdata_totext(dns_rdata_t *rdata, dns_name_t *origin, isc_buffer_t *target)
isc_result_t
dns_rdata_tofmttext(dns_rdata_t *rdata, dns_name_t *origin,
unsigned int flags, unsigned int width,
- const char *linebreak, isc_buffer_t *target)
+ unsigned int split_width, const char *linebreak,
+ isc_buffer_t *target)
{
dns_rdata_textctx_t tctx;
@@ -889,11 +892,16 @@ dns_rdata_tofmttext(dns_rdata_t *rdata, dns_name_t *origin,
*/
tctx.origin = origin;
tctx.flags = flags;
- if ((flags & DNS_STYLEFLAG_MULTILINE) != 0) {
+ if (split_width == 0xffffffff)
tctx.width = width;
+ else
+ tctx.width = split_width;
+
+ if ((flags & DNS_STYLEFLAG_MULTILINE) != 0)
tctx.linebreak = linebreak;
- } else {
- tctx.width = 60; /* Used for hex word length only. */
+ else {
+ if (split_width == 0xffffffff)
+ tctx.width = 60; /* Used for hex word length only. */
tctx.linebreak = " ";
}
return (rdata_totext(rdata, &tctx, target));
@@ -1409,7 +1417,8 @@ multitxt_fromwire(isc_buffer_t *source, isc_buffer_t *target) {
if (n > tregion.length)
return (ISC_R_NOSPACE);
- memcpy(tregion.base, sregion.base, n);
+ if (tregion.base != sregion.base)
+ memcpy(tregion.base, sregion.base, n);
isc_buffer_forward(source, n);
isc_buffer_add(target, n);
isc_buffer_activeregion(source, &sregion);
OpenPOWER on IntegriCloud