16#include <boost/shared_ptr.hpp>
23class AbstractMessageRenderer;
68typedef boost::shared_ptr<Rdata>
RdataPtr;
139 void operator=(
const Rdata& source);
265 explicit Generic(
const std::string& rdata_string);
330 virtual std::string
toText()
const;
385 std::unique_ptr<GenericImpl> constructFromLexer(
MasterLexer& lexer);
387 std::unique_ptr<GenericImpl> impl_;
450 const std::string& rdata_string);
490 const Rdata& source);
virtual const char * what() const
Returns a C-style character string of the cause of the exception.
The AbstractMessageRenderer class is an abstract base class that provides common interfaces for rende...
Base class for all sorts of text parse errors.
Tokenizer for parsing DNS master files.
Set of issue callbacks for a loader.
Options
Options how the parsing should work.
The Name class encapsulates DNS names.
The RRClass class encapsulates DNS resource record classes.
The RRType class encapsulates DNS resource record types.
A standard DNS module exception that is thrown if RDATA parser encounters an invalid or inconsistent ...
InvalidRdataLength(const char *file, size_t line, const char *what)
A standard DNS module exception that is thrown if RDATA parser fails to recognize a given textual rep...
InvalidRdataText(const char *file, size_t line, const char *what)
The Rdata class is an abstract base class that provides a set of common interfaces to manipulate conc...
virtual std::string toText() const =0
Convert an Rdata to a string.
virtual ~Rdata()
The destructor.
Rdata()
The default constructor.
virtual int compare(const Rdata &other) const =0
Compare two instances of Rdata.
virtual void toWire(AbstractMessageRenderer &renderer) const =0
Render the Rdata in the wire format into a MessageRenderer object.
virtual uint16_t getLength() const
Get the wire format length of an Rdata.
virtual void toWire(isc::util::OutputBuffer &buff) const =0
Render the Rdata in the wire format into a buffer.
The generic::Generic class represents generic "unknown" RDATA.
virtual ~Generic()
The destructor.
Generic & operator=(const Generic &source)
The assignment operator.
Generic(const std::string &rdata_string)
Constructor from a string.
virtual std::string toText() const
Convert an generic::Generic object to a string.
virtual void toWire(isc::util::OutputBuffer &buff) const
Render the generic::Generic in the wire format into a buffer.
virtual int compare(const Rdata &other) const
Compare two instances of generic::Generic objects.
The OutputBuffer class is a buffer abstraction for manipulating mutable data.
std::ostream & operator<<(std::ostream &os, const Generic &rdata)
Insert the name as a string into stream.
int compareNames(const Name &n1, const Name &n2)
Gives relative ordering of two names in terms of DNSSEC RDATA ordering.
boost::shared_ptr< const Rdata > ConstRdataPtr
RdataPtr createRdata(const RRType &rrtype, const RRClass &rrclass, const std::string &rdata_string)
Create RDATA of a given pair of RR type and class from a string.
const size_t MAX_RDLENGTH
Possible maximum length of RDATA, which is the maximum unsigned 16 bit value.
const unsigned int MAX_CHARSTRING_LEN
The maximum allowable length of character-string containing in RDATA as defined in RFC1035,...
boost::shared_ptr< Rdata > RdataPtr
The RdataPtr type is a pointer-like type, pointing to an object of some concrete derived class of Rda...
Defines the logger used by the top-level component of kea-lfc.