1*38bad3e5Sflorian /*
2*38bad3e5Sflorian * Copyright (C) 2022 Florian Obser <florian@openbsd.org>
3*38bad3e5Sflorian *
4*38bad3e5Sflorian * Permission to use, copy, modify, and/or distribute this software for any
5*38bad3e5Sflorian * purpose with or without fee is hereby granted, provided that the above
6*38bad3e5Sflorian * copyright notice and this permission notice appear in all copies.
7*38bad3e5Sflorian *
8*38bad3e5Sflorian * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
9*38bad3e5Sflorian * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10*38bad3e5Sflorian * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
11*38bad3e5Sflorian * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12*38bad3e5Sflorian * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
13*38bad3e5Sflorian * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14*38bad3e5Sflorian * PERFORMANCE OF THIS SOFTWARE.
15*38bad3e5Sflorian */
16*38bad3e5Sflorian
17*38bad3e5Sflorian /* $Id: https_65.c,v 1.1 2022/07/03 12:07:52 florian Exp $ */
18*38bad3e5Sflorian
19*38bad3e5Sflorian /* draft-ietf-dnsop-svcb-https-10 */
20*38bad3e5Sflorian
21*38bad3e5Sflorian #ifndef RDATA_IN_1_HTTPS_65_C
22*38bad3e5Sflorian #define RDATA_IN_1_HTTPS_65_C
23*38bad3e5Sflorian
24*38bad3e5Sflorian static inline isc_result_t
totext_in_https(ARGS_TOTEXT)25*38bad3e5Sflorian totext_in_https(ARGS_TOTEXT) {
26*38bad3e5Sflorian REQUIRE(rdata->type == dns_rdatatype_https);
27*38bad3e5Sflorian REQUIRE(rdata->rdclass == dns_rdataclass_in);
28*38bad3e5Sflorian REQUIRE(rdata->length != 0);
29*38bad3e5Sflorian
30*38bad3e5Sflorian return (totext_in_svcb_https(rdata, tctx, target));
31*38bad3e5Sflorian }
32*38bad3e5Sflorian
33*38bad3e5Sflorian static inline isc_result_t
fromwire_in_https(ARGS_FROMWIRE)34*38bad3e5Sflorian fromwire_in_https(ARGS_FROMWIRE) {
35*38bad3e5Sflorian REQUIRE(type == dns_rdatatype_https);
36*38bad3e5Sflorian REQUIRE(rdclass == dns_rdataclass_in);
37*38bad3e5Sflorian return (fromwire_in_svcb_https(rdclass, type, source, dctx, options,
38*38bad3e5Sflorian target));
39*38bad3e5Sflorian }
40*38bad3e5Sflorian
41*38bad3e5Sflorian static inline isc_result_t
towire_in_https(ARGS_TOWIRE)42*38bad3e5Sflorian towire_in_https(ARGS_TOWIRE) {
43*38bad3e5Sflorian REQUIRE(rdata->type == dns_rdatatype_https);
44*38bad3e5Sflorian REQUIRE(rdata->length != 0);
45*38bad3e5Sflorian
46*38bad3e5Sflorian return (towire_in_svcb_https(rdata, cctx, target));
47*38bad3e5Sflorian }
48*38bad3e5Sflorian
49*38bad3e5Sflorian
50*38bad3e5Sflorian #endif /* RDATA_IN_1_HTTPS_65_C */
51