RFC2136 uses NONE and ANY to check what type of operation to perform.
So, these QClasses are now added and registered as valid records.
void RNAME##RecordContent::report(void) \
{ \
regist(1, RTYPE, &RNAME##RecordContent::make, &RNAME##RecordContent::make, #RNAME); \
+ regist(254, RTYPE, &RNAME##RecordContent::make, &RNAME##RecordContent::make, #RNAME); \
} \
void RNAME##RecordContent::unreport(void) \
{ \
unregist(1, RTYPE); \
+ unregist(254, RTYPE); \
} \
\
RNAME##RecordContent::RNAME##RecordContent(const string& zoneData) : DNSRecordContent(RTYPE) \
struct QClass
{
- enum QClassEnum {IN=1, CHAOS=3};
+ enum QClassEnum {IN=1, CHAOS=3, NONE=254, ANY=255};
};
#endif
void LOCRecordContent::report(void)
{
regist(1, ns_t_loc, &make, &make, "LOC");
+ regist(254, ns_t_loc, &make, &make, "LOC");
}
DNSRecordContent* LOCRecordContent::make(const string& content)