|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object | +--com.antiaction.dns.DNSMessage
DNS Message, main entry point for dis/assembling DNS packets. As defined in rfc1035.
| Field Summary | |
protected java.util.ArrayList |
an_array
Array of answer DNS Record objects. |
protected java.util.ArrayList |
ar_array
Array of additional DNS Record objects. |
protected java.util.ArrayList |
arrPackets
Array of partial packet byte arrays. |
protected DNSHeader |
dnsheader
DNS Header object. |
protected DNSName |
dnsname
DNS Name object used for domain name de/encoding. |
protected DNSRData |
dnsrdatabuilder
DNS RData builder. |
protected java.util.ArrayList |
ns_array
Array of authority DNS Record objects. |
protected java.util.ArrayList |
qd_array
Array of DNS Question objects. |
| Constructor Summary | |
DNSMessage()
Instantiate a new message object. |
|
| Method Summary | |
void |
addAdditional(DNSRecord rec)
Add an additional record to the message. |
void |
addAnswer(DNSRecord rec)
Add an answer record to the message. |
void |
addAuthority(DNSRecord rec)
Add an authority record to the message. |
void |
addQuestion(DNSQuestion qst)
Add a copy of the question to the list of questions. |
static java.lang.String |
arrayToString(byte[] pDat)
Returns a string representation of the array, for debugging purposes. |
static java.lang.String |
arrayToString(byte[] pDat,
int pIdx,
int pLen)
Returns a string representation of the array, for debugging purposes. |
static java.lang.String |
arrayToStringIndex(byte[] pDat)
Returns a string representation of the array, for debugging purposes. |
byte[] |
assemblePacket()
Returns a fully assembled message packet. |
void |
buildPacket()
Builds the packet internally, use assemblePacket to return a fully built packet. |
void |
disassemblePacket(byte[] pDat)
Parses the record header part of a packet. |
java.util.ArrayList |
getAdditionals()
Get a copy of the list of additional record objects. |
java.util.ArrayList |
getAnswers()
Get a copy of the list of answer record objects. |
java.util.ArrayList |
getAuthorities()
Get a copy of the list of authority record objects. |
int |
getDisassembledLen()
Returns the length of the previously disassembled record header. |
DNSHeader |
getHeader()
Get a copy of the message header object. |
java.util.ArrayList |
getQuestions()
Get a copy of the list of question objects. |
java.util.ArrayList |
getQuestions(java.lang.String qname,
int qtype,
int qclass)
Get a copy of the Question objects that match the given arguments. |
java.util.ArrayList |
getRecords(java.lang.String qname,
int rtype,
int qtype,
int qclass)
Get a copy of the Record objects that match the given arguments. |
void |
reset()
Reset the objects internal state. |
void |
setAdditionals(java.util.ArrayList qArr)
Set a copy of the list of authority record objects. |
void |
setAnswers(java.util.ArrayList qArr)
Set a copy of the list of answer record objects. |
void |
setAuthorities(java.util.ArrayList qArr)
Set a copy of the list of authority record objects. |
void |
setDebug(boolean b)
Toggle debug status. |
void |
setHeader(DNSHeader header)
Set a copy of the message header object. |
void |
setQuestions(java.util.ArrayList qArr)
Set a copy of the list of question objects. |
java.lang.String |
toString()
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
protected DNSHeader dnsheader
protected DNSRData dnsrdatabuilder
protected DNSName dnsname
protected java.util.ArrayList qd_array
protected java.util.ArrayList an_array
protected java.util.ArrayList ns_array
protected java.util.ArrayList ar_array
protected java.util.ArrayList arrPackets
| Constructor Detail |
public DNSMessage()
| Method Detail |
public void reset()
public void setDebug(boolean b)
b - boolean.
public void buildPacket()
throws DNSNameException
DNSNameException - if the domain name is invalid.assemblePacket()
public byte[] assemblePacket()
throws DNSException
buildPacket()public int getDisassembledLen()
disassemblePacket(byte[])
public void disassemblePacket(byte[] pDat)
throws DNSException,
DNSNameException,
DNSRDataException
pDat - array containing the complete packet.DNSException - if the packet is corrupted.DNSNameException - if the domain name is invalid.getDisassembledLen()public void setHeader(DNSHeader header)
header - header object.public DNSHeader getHeader()
public void addQuestion(DNSQuestion qst)
qst - question object.public java.util.ArrayList getQuestions()
public void setQuestions(java.util.ArrayList qArr)
qArr - list of question objects.public void addAnswer(DNSRecord rec)
rec - record container object.public java.util.ArrayList getAnswers()
public void setAnswers(java.util.ArrayList qArr)
qArr - list of answer record objects.public void addAuthority(DNSRecord rec)
rec - record container object.public java.util.ArrayList getAuthorities()
public void setAuthorities(java.util.ArrayList qArr)
qArr - list of authority record objects.public void addAdditional(DNSRecord rec)
rec - record container object.public java.util.ArrayList getAdditionals()
public void setAdditionals(java.util.ArrayList qArr)
qArr - list of authority record objects.
public java.util.ArrayList getQuestions(java.lang.String qname,
int qtype,
int qclass)
public java.util.ArrayList getRecords(java.lang.String qname,
int rtype,
int qtype,
int qclass)
public java.lang.String toString()
toString in class java.lang.Objectpublic static java.lang.String arrayToString(byte[] pDat)
pDat - byte array.arrayToString(byte[], int, int)
public static java.lang.String arrayToString(byte[] pDat,
int pIdx,
int pLen)
pDat - byte array.pIdx - index to where in the array to begin displaying from.pLen - bytes to display.arrayToString(byte[])public static java.lang.String arrayToStringIndex(byte[] pDat)
pDat - byte array.arrayToString(byte[], int, int)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||