diff options
Diffstat (limited to 'libs/minidns/src/main/java/de/measite/minidns/record/AAAA.java')
m--------- | libs/minidns | 6 | ||||
-rw-r--r-- | libs/minidns/src/main/java/de/measite/minidns/record/AAAA.java | 49 |
2 files changed, 49 insertions, 6 deletions
diff --git a/libs/minidns b/libs/minidns deleted file mode 160000 -Subproject 152be6eb1a22da8cebe24ac4ee05b487936c9f2 diff --git a/libs/minidns/src/main/java/de/measite/minidns/record/AAAA.java b/libs/minidns/src/main/java/de/measite/minidns/record/AAAA.java new file mode 100644 index 00000000..e4fd5ecf --- /dev/null +++ b/libs/minidns/src/main/java/de/measite/minidns/record/AAAA.java @@ -0,0 +1,49 @@ +package de.measite.minidns.record; + +import java.io.DataInputStream; +import java.io.IOException; + +import de.measite.minidns.Record.TYPE; + +/** + * AAAA payload (an ipv6 pointer). + */ +public class AAAA implements Data { + + /** + * The ipv6 address. + */ + private byte[] ip; + + @Override + public TYPE getType() { + return TYPE.AAAA; + } + + @Override + public byte[] toByteArray() { + return ip; + } + + @Override + public void parse(DataInputStream dis, byte[] data, int length) + throws IOException { + ip = new byte[16]; + dis.readFully(ip); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + for (int i = 0; i < ip.length; i += 2) { + if (i != 0) { + sb.append(':'); + } + sb.append(Integer.toHexString( + ((ip[i] & 0xff) << 8) + (ip[i + 1] & 0xff) + )); + } + return sb.toString(); + } + +} |