void rrToWire(DataByteOutputStream out, Compression c, boolean canonical) { if (signature == null) return; out.writeShort(covered); out.writeByte(alg); out.writeByte(labels); out.writeInt(origttl); out.writeInt((int) (expire.getTime() / 1000)); out.writeInt((int) (timeSigned.getTime() / 1000)); out.writeShort(footprint); signer.toWire(out, null, canonical); out.writeArray(signature); }
void toWire(DNSOutput out, int section, Compression c) { name.toWire(out, c); out.writeU16(type); out.writeU16(dclass); if (section == Section.QUESTION) return; out.writeU32(ttl); int lengthPosition = out.current(); out.writeU16(0); /* until we know better */ rrToWire(out, c, false); int rrlength = out.current() - lengthPosition - 2; out.save(); out.jump(lengthPosition); out.writeU16(rrlength); out.restore(); }