From e59c5fc23fd1914f7ae1c43dc4890e47874a4ebb Mon Sep 17 00:00:00 2001 From: Mark Andrews Date: Wed, 3 Feb 1999 06:00:51 +0000 Subject: [PATCH] UNSPEC Initial Implementation --- lib/dns/rdata/generic/unspec_103.c | 113 +++++++++++++++++++++++++++++ lib/dns/rdata/generic/unspec_103.h | 113 +++++++++++++++++++++++++++++ 2 files changed, 226 insertions(+) create mode 100644 lib/dns/rdata/generic/unspec_103.c create mode 100644 lib/dns/rdata/generic/unspec_103.h diff --git a/lib/dns/rdata/generic/unspec_103.c b/lib/dns/rdata/generic/unspec_103.c new file mode 100644 index 0000000000..40b6444286 --- /dev/null +++ b/lib/dns/rdata/generic/unspec_103.c @@ -0,0 +1,113 @@ +/* + * Copyright (C) 1999 Internet Software Consortium. + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS + * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE + * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL + * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR + * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS + * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + * SOFTWARE. + */ + + /* $Id: unspec_103.c,v 1.1 1999/02/03 06:00:51 marka Exp $ */ + +#ifndef RDATA_GENERIC_UNSPEC_103_H +#define RDATA_GENERIC_UNSPEC_103_H + +static dns_result_t +fromtext_unspec(dns_rdataclass_t class, dns_rdatatype_t type, + isc_lex_t *lexer, dns_name_t *origin, + isc_boolean_t downcase, isc_buffer_t *target) +{ + + REQUIRE(type == 103); + + class = class; /*unused*/ + origin = origin; /*unused*/ + downcase = downcase; /*unused*/ + + return (atob_tobuffer(lexer, target)); +} + +static dns_result_t +totext_unspec(dns_rdata_t *rdata, dns_name_t *origin, isc_buffer_t *target) { + + + REQUIRE(rdata->type == 103); + + origin = origin; /*unused*/ + + return (btoa_totext(rdata->data, rdata->length, target)); +} + +static dns_result_t +fromwire_unspec(dns_rdataclass_t class, dns_rdatatype_t type, + isc_buffer_t *source, dns_decompress_t *dctx, + isc_boolean_t downcase, isc_buffer_t *target) +{ + isc_region_t sr; + + REQUIRE(type == 103); + + class = class; /*unused*/ + dctx = dctx; /*unused*/ + downcase = downcase; /*unused*/ + isc_buffer_active(source, &sr); + isc_buffer_forward(source, sr.length); + return (mem_tobuffer(target, sr.base, sr.length)); +} + +static dns_result_t +towire_unspec(dns_rdata_t *rdata, dns_compress_t *cctx, isc_buffer_t *target) { + + REQUIRE(rdata->type == 103); + + cctx = cctx; /*unused*/ + + return (mem_tobuffer(target, rdata->data, rdata->length)); +} + +static int +compare_unspec(dns_rdata_t *rdata1, dns_rdata_t *rdata2) { + isc_region_t r1; + isc_region_t r2; + + REQUIRE(rdata1->type == rdata1->type); + REQUIRE(rdata1->class == rdata2->class); + REQUIRE(rdata1->type == 103); + + dns_rdata_toregion(rdata1, &r1); + dns_rdata_toregion(rdata2, &r2); + return (compare_region(&r1, &r2)); +} + +static dns_result_t +fromstruct_unspec(dns_rdataclass_t class, dns_rdatatype_t type, void *source, + isc_buffer_t *target) { + + REQUIRE(type == 103); + + class = class; /*unused*/ + + source = source; + target = target; + + return (DNS_R_NOTIMPLEMENTED); +} + +static dns_result_t +tostruct_unspec(dns_rdata_t *rdata, void *target) { + + REQUIRE(rdata->type == 103); + + target = target; + + return (DNS_R_NOTIMPLEMENTED); +} +#endif /* RDATA_GENERIC_UNSPEC_103_H */ diff --git a/lib/dns/rdata/generic/unspec_103.h b/lib/dns/rdata/generic/unspec_103.h new file mode 100644 index 0000000000..01a73226bd --- /dev/null +++ b/lib/dns/rdata/generic/unspec_103.h @@ -0,0 +1,113 @@ +/* + * Copyright (C) 1999 Internet Software Consortium. + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS + * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE + * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL + * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR + * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS + * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + * SOFTWARE. + */ + + /* $Id: unspec_103.h,v 1.1 1999/02/03 06:00:51 marka Exp $ */ + +#ifndef RDATA_GENERIC_UNSPEC_103_H +#define RDATA_GENERIC_UNSPEC_103_H + +static dns_result_t +fromtext_unspec(dns_rdataclass_t class, dns_rdatatype_t type, + isc_lex_t *lexer, dns_name_t *origin, + isc_boolean_t downcase, isc_buffer_t *target) +{ + + REQUIRE(type == 103); + + class = class; /*unused*/ + origin = origin; /*unused*/ + downcase = downcase; /*unused*/ + + return (atob_tobuffer(lexer, target)); +} + +static dns_result_t +totext_unspec(dns_rdata_t *rdata, dns_name_t *origin, isc_buffer_t *target) { + + + REQUIRE(rdata->type == 103); + + origin = origin; /*unused*/ + + return (btoa_totext(rdata->data, rdata->length, target)); +} + +static dns_result_t +fromwire_unspec(dns_rdataclass_t class, dns_rdatatype_t type, + isc_buffer_t *source, dns_decompress_t *dctx, + isc_boolean_t downcase, isc_buffer_t *target) +{ + isc_region_t sr; + + REQUIRE(type == 103); + + class = class; /*unused*/ + dctx = dctx; /*unused*/ + downcase = downcase; /*unused*/ + isc_buffer_active(source, &sr); + isc_buffer_forward(source, sr.length); + return (mem_tobuffer(target, sr.base, sr.length)); +} + +static dns_result_t +towire_unspec(dns_rdata_t *rdata, dns_compress_t *cctx, isc_buffer_t *target) { + + REQUIRE(rdata->type == 103); + + cctx = cctx; /*unused*/ + + return (mem_tobuffer(target, rdata->data, rdata->length)); +} + +static int +compare_unspec(dns_rdata_t *rdata1, dns_rdata_t *rdata2) { + isc_region_t r1; + isc_region_t r2; + + REQUIRE(rdata1->type == rdata1->type); + REQUIRE(rdata1->class == rdata2->class); + REQUIRE(rdata1->type == 103); + + dns_rdata_toregion(rdata1, &r1); + dns_rdata_toregion(rdata2, &r2); + return (compare_region(&r1, &r2)); +} + +static dns_result_t +fromstruct_unspec(dns_rdataclass_t class, dns_rdatatype_t type, void *source, + isc_buffer_t *target) { + + REQUIRE(type == 103); + + class = class; /*unused*/ + + source = source; + target = target; + + return (DNS_R_NOTIMPLEMENTED); +} + +static dns_result_t +tostruct_unspec(dns_rdata_t *rdata, void *target) { + + REQUIRE(rdata->type == 103); + + target = target; + + return (DNS_R_NOTIMPLEMENTED); +} +#endif /* RDATA_GENERIC_UNSPEC_103_H */