def query.if
bend-kit-dns@0.7.0.0 · dns.bend:62
import bend-kit-dns@0.7.0.0/dns.bend as Dns
import Base
import bend-kit-bytes@0.3.3.0/bytes.bend as Bytes
62def query.if(+id: U32, +xs: List<&2, String>, ok: Bool) -> Maybe<&1, Bytes.Bytes>:
63 match ok:
64 case False{}:
65 None{}
66 case True{}:
67
68 c = Bytes.Cursor.new(Bytes.new((labels.len(xs, 0) + 17 : U32)))
69 c = written(Bytes.Cursor.put.u16be(c, id))
70 c = written(Bytes.Cursor.put.u16be(c, 256))
71 c = written(Bytes.Cursor.put.u16be(c, 1))
72 c = written(Bytes.Cursor.skip(c, 6))
73 c = labels.put(xs, c)
74 c = written(Bytes.Cursor.put.u16be(c, 1))
75 c = written(Bytes.Cursor.put.u16be(c, 1))
76 query.done(Bytes.Cursor.finish(c))