#include <cassert>
#include "dnsutil.h"
#include "question.h"
Question::Question(const char *i_strName, RRType i_ty, RRClass i_cl) {
m_llpName = new LabelList(i_strName);
m_ty = i_ty;
m_cl = i_cl;
}
Question::Question(LabelListPtr &i_llpr, RRType i_ty, RRClass i_cl) {
m_llpName = i_llpr;
i_llpr = NULL;
m_ty = i_ty;
m_cl = i_cl;
}
Question::Question(const Question &ci_qnr, LabelListConstPtr ci_llpCName) {
m_llpName = new LabelList(*ci_llpCName);
m_ty = ci_qnr.m_ty;
m_cl = ci_qnr.m_cl;
}
Question::Question(const Question &ci_qnr) {
m_llpName = new LabelList(*ci_qnr.m_llpName);
m_ty = ci_qnr.m_ty;
m_cl = ci_qnr.m_cl;
}
Question::~Question() {
SoftDelete(m_llpName);
}
ostream& operator<<(ostream& io_smr, QuestionConstPtr ci_qnp) {
io_smr << ci_qnp->GetName() << " "
<< GetClassName((RRClass)ci_qnp->GetClass()) << " "
<< GetTypeName((RRType)ci_qnp->GetType());
return io_smr;
}
ostream& operator<<(ostream& io_smr, const Question &ci_qnr) {
io_smr << &ci_qnr;
return io_smr;
}