14
14
* PERFORMANCE OF THIS SOFTWARE.
17
/* $Id: ipseckey_45.c,v 1.4.332.2 2009/01/18 23:47:41 tbox Exp $ */
17
/* $Id: ipseckey_45.c,v 1.9 2009/12/04 22:06:37 tbox Exp $ */
19
19
#ifndef RDATA_GENERIC_IPSECKEY_45_C
20
20
#define RDATA_GENERIC_IPSECKEY_45_C
243
243
isc_buffer_forward(source, 3);
244
244
RETERR(dns_name_fromwire(&name, source, dctx, options, target));
245
245
isc_buffer_activeregion(source, ®ion);
246
isc_buffer_forward(source, region.length);
246
247
return(mem_tobuffer(target, region.base, region.length));
459
460
return (ISC_TRUE);
464
casecompare_ipseckey(ARGS_COMPARE) {
465
isc_region_t region1;
466
isc_region_t region2;
471
REQUIRE(rdata1->type == rdata2->type);
472
REQUIRE(rdata1->rdclass == rdata2->rdclass);
473
REQUIRE(rdata1->type == 45);
474
REQUIRE(rdata1->length >= 3);
475
REQUIRE(rdata2->length >= 3);
477
dns_rdata_toregion(rdata1, ®ion1);
478
dns_rdata_toregion(rdata2, ®ion2);
480
if (memcmp(region1.base, region2.base, 3) != 0 || region1.base[1] != 3)
481
return (isc_region_compare(®ion1, ®ion2));
483
dns_name_init(&name1, NULL);
484
dns_name_init(&name2, NULL);
486
isc_region_consume(®ion1, 3);
487
isc_region_consume(®ion2, 3);
489
dns_name_fromregion(&name1, ®ion1);
490
dns_name_fromregion(&name2, ®ion2);
492
order = dns_name_rdatacompare(&name1, &name2);
496
isc_region_consume(®ion1, name_length(&name1));
497
isc_region_consume(®ion2, name_length(&name2));
499
return (isc_region_compare(®ion1, ®ion2));
462
502
#endif /* RDATA_GENERIC_IPSECKEY_45_C */