#ifndef RDATA_GENERIC_CSYNC_62_C
#define RDATA_GENERIC_CSYNC_62_C
static inline isc_result_t
totext_csync(ARGS_TOTEXT) {
unsigned long num;
char buf[sizeof("0123456789")];
isc_region_t sr;
REQUIRE(rdata->type == dns_rdatatype_csync);
REQUIRE(rdata->length >= 6);
UNUSED(tctx);
dns_rdata_toregion(rdata, &sr);
num = uint32_fromregion(&sr);
isc_region_consume(&sr, 4);
snprintf(buf, sizeof(buf), "%lu", num);
RETERR(isc_str_tobuffer(buf, target));
RETERR(isc_str_tobuffer(" ", target));
num = uint16_fromregion(&sr);
isc_region_consume(&sr, 2);
snprintf(buf, sizeof(buf), "%lu", num);
RETERR(isc_str_tobuffer(buf, target));
if (sr.length > 0) {
RETERR(isc_str_tobuffer(" ", target));
}
return (typemap_totext(&sr, NULL, target));
}
static isc_result_t
fromwire_csync(ARGS_FROMWIRE) {
isc_region_t sr;
REQUIRE(type == dns_rdatatype_csync);
UNUSED(type);
UNUSED(rdclass);
UNUSED(options);
UNUSED(dctx);
isc_buffer_activeregion(source, &sr);
if (sr.length < 6)
return (ISC_R_UNEXPECTEDEND);
RETERR(isc_mem_tobuffer(target, sr.base, 6));
isc_buffer_forward(source, 6);
isc_region_consume(&sr, 6);
RETERR(typemap_test(&sr, 1));
RETERR(isc_mem_tobuffer(target, sr.base, sr.length));
isc_buffer_forward(source, sr.length);
return (ISC_R_SUCCESS);
}
static inline isc_result_t
towire_csync(ARGS_TOWIRE) {
REQUIRE(rdata->type == dns_rdatatype_csync);
REQUIRE(rdata->length >= 6);
UNUSED(cctx);
return (isc_mem_tobuffer(target, rdata->data, rdata->length));
}
#endif