Kea 2.5.8
isc::dns Namespace Reference

Namespaces

namespace  master_lexer_internal
 
namespace  name
 
namespace  rdata
 

Classes

class  AbstractMessageRenderer
 The AbstractMessageRenderer class is an abstract base class that provides common interfaces for rendering a DNS message into a buffer in wire format. More...
 
class  AbstractRRset
 The AbstractRRset class is an abstract base class that models a DNS RRset. More...
 
class  BadEscape
 A standard DNS module exception that is thrown if the name parser fails to decode a back-slash escaped sequence. More...
 
class  BadLabelType
 A standard DNS module exception that is thrown if the name parser encounters an obsolete or incomplete label type. More...
 
class  BasicRRset
 The BasicRRset class is a concrete derived class of AbstractRRset that defines a straightforward RRset implementation. More...
 
class  BasicRRsetImpl
 This encapsulates the actual implementation of the BasicRRset class. More...
 
class  DNSMessageBADVERS
 
class  DNSMessageFORMERR
 
class  DNSProtocolError
 
class  DNSTextError
 Base class for all sorts of text parse errors. More...
 
class  EDNS
 The EDNS class represents the EDNS OPT RR defined in RFC2671. More...
 
class  EmptyLabel
 A standard DNS module exception that is thrown if the name parser encounters an empty label in the middle of a name. More...
 
class  EmptyRRset
 A standard DNS module exception that is thrown if an RRset object does not contain any RDATA where required. More...
 
class  Exception
 
class  IncompleteName
 A standard DNS module exception that is thrown if the name parser finds the input (string or wire-format data) is incomplete. More...
 
class  IncompleteRRClass
 A standard DNS module exception that is thrown if an RRClass object is being constructed from a incomplete (too short) wire-format data. More...
 
class  IncompleteRRTTL
 A standard DNS module exception that is thrown if an RRTTL object is being constructed from a incomplete (too short) wire-format data. More...
 
class  IncompleteRRType
 A standard DNS module exception that is thrown if an RRType object is being constructed from a incomplete (too short) wire-format data. More...
 
class  InvalidMessageOperation
 A standard DNS module exception that is thrown if a Message class method is called that is prohibited for the current mode of the message. More...
 
class  InvalidMessageSection
 A standard DNS module exception that is thrown if a section iterator is being constructed for an incompatible section. More...
 
class  InvalidMessageUDPSize
 A standard DNS module exception that is thrown if a UDP buffer size smaller than the standard default maximum (DEFAULT_MAX_UDPSIZE) is being specified for the message. More...
 
class  InvalidRRClass
 A standard DNS module exception that is thrown if an RRClass object is being constructed from an unrecognized string. More...
 
class  InvalidRRTTL
 A standard DNS module exception that is thrown if an RRTTL object is being constructed from an unrecognized string. More...
 
class  InvalidRRType
 A standard DNS module exception that is thrown if an RRType object is being constructed from an unrecognized string. More...
 
class  LabelSequence
 Light-weight Accessor to Name data. More...
 
class  MasterLexer
 Tokenizer for parsing DNS master files. More...
 
class  MasterLoader
 A class able to load DNS master files. More...
 
class  MasterLoaderCallbacks
 Set of issue callbacks for a loader. More...
 
class  MasterLoaderError
 Error while loading by MasterLoader without specifying the MANY_ERRORS option. More...
 
class  MasterToken
 Tokens for MasterLexer. More...
 
class  Message
 The Message class encapsulates a standard DNS message. More...
 
class  MessageImpl
 
class  MessageRenderer
 The MessageRenderer is a concrete derived class of AbstractMessageRenderer as a general purpose implementation of the renderer interfaces. More...
 
class  MessageTooShort
 A standard DNS module exception that is thrown if a wire format message parser encounters a short length of data that don't even contain the full header section. More...
 
class  MissingNameOrigin
 Thrown when origin is null and is needed. More...
 
class  Name
 The Name class encapsulates DNS names. More...
 
class  NameComparisonResult
 This is a supplemental class used only as a return value of Name::compare() and LabelSequence::compare(). More...
 
class  NameParserException
 Base class for name parser exceptions. More...
 
class  Opcode
 The Opcode class objects represent standard OPCODEs of the header section of DNS messages as defined in RFC1035. More...
 
class  Question
 The Question class encapsulates the common search key of DNS lookup, consisting of owner name, RR type and RR class. More...
 
class  Rcode
 DNS Response Codes (RCODEs) class. More...
 
class  RdataFactory
 
class  RdataIterator
 The RdataIterator class is an abstract base class that provides an interface for accessing RDATA objects stored in an RRset. More...
 
class  RRClass
 The RRClass class encapsulates DNS resource record classes. More...
 
class  RRClassExists
 A standard DNS module exception that is thrown if a new RR class is being registered with a different type string. More...
 
class  RRParamRegistry
 The RRParamRegistry class represents a registry of parameters to manipulate DNS resource records (RRs). More...
 
struct  RRParamRegistryImpl
 The RRParamRegistryImpl class is the actual implementation of RRParamRegistry. More...
 
class  RRset
 The RRset class is a concrete derived class of BasicRRset which contains a pointer to an additional RRset containing associated RRSIG records. More...
 
class  RRTTL
 The RRTTL class encapsulates TTLs used in DNS resource records. More...
 
class  RRType
 The RRType class encapsulates DNS resource record types. More...
 
class  RRTypeExists
 A standard DNS module exception that is thrown if a new RR type is being registered with a different type string. More...
 
class  SectionIterator
 SectionIterator is a templated class to provide standard-compatible iterators for Questions and RRsets for a given DNS message section. More...
 
struct  SectionIteratorImpl
 Template version of Section Iterator. More...
 
class  Serial
 This class defines DNS serial numbers and serial arithmetic. More...
 
class  TooLongLabel
 A standard DNS module exception that is thrown if the name parser encounters too long a label. More...
 
class  TooLongName
 A standard DNS module exception that is thrown if the name parser encounters too long a name. More...
 
class  TSIGContext
 TSIG session context. More...
 
class  TSIGContextError
 An exception that is thrown for logic errors identified in TSIG sign/verify operations. More...
 
class  TSIGError
 TSIG errors. More...
 
class  TSIGKey
 
class  TSIGKeyRing
 A simple repository of a set of TSIGKey objects. More...
 
class  TSIGRecord
 TSIG resource record. More...
 

Typedefs

typedef std::function< void(const Name &name, const RRClass &rrclass, const RRType &rrtype, const RRTTL &rrttl, const rdata::RdataPtr &rdata)> AddRRCallback
 Type of callback to add a RR.
 
typedef boost::shared_ptr< const EDNSConstEDNSPtr
 A pointer-like type pointing to an immutable EDNS object.
 
typedef boost::shared_ptr< const MessageConstMessagePtr
 
typedef boost::shared_ptr< const QuestionConstQuestionPtr
 A pointer-like type pointing to an (immutable) Question object.
 
typedef boost::shared_ptr< const AbstractRRsetConstRRsetPtr
 A pointer-like type pointing to an (immutable) RRset object.
 
typedef boost::shared_ptr< const TSIGRecordConstTSIGRecordPtr
 A pointer-like type pointing to an immutable TSIGRecord object.
 
typedef boost::shared_ptr< EDNSEDNSPtr
 A pointer-like type pointing to an EDNS object.
 
typedef map< RRType, RdataFactoryPtrGenericRdataFactoryMap
 
typedef boost::shared_ptr< MessageImplMessageImplPtr
 Pointer to the MessageImpl object.
 
typedef boost::shared_ptr< MessageMessagePtr
 Pointer-like type pointing to a Message.
 
typedef uint16_t qid_t
 
typedef SectionIterator< QuestionPtrQuestionIterator
 
typedef boost::shared_ptr< QuestionQuestionPtr
 A pointer-like type pointing to an Question object.
 
typedef map< RRTypeClass, RdataFactoryPtrRdataFactoryMap
 
typedef boost::shared_ptr< RdataIteratorRdataIteratorPtr
 A pointer-like type point to an RdataIterator object.
 
typedef SectionIterator< RRsetPtrRRsetIterator
 
typedef boost::shared_ptr< AbstractRRsetRRsetPtr
 A pointer-like type pointing to an RRset object.
 
typedef pair< RRType, RRClassRRTypeClass
 Note: the element ordering in the type/class pair is intentional.
 
typedef boost::shared_ptr< TSIGContextTSIGContextPtr
 
typedef boost::shared_ptr< TSIGKeyTSIGKeyPtr
 
typedef boost::shared_ptr< TSIGRecordTSIGRecordPtr
 A pointer-like type pointing to a TSIGRecord object.
 

Functions

EDNScreateEDNSFromRR (const Name &name, const RRClass &rrclass, const RRType &rrtype, const RRTTL &ttl, const rdata::Rdata &rdata, uint8_t &extended_rcode)
 Create a new EDNS object from a set of RR parameters, also providing the extended RCODE value.
 
ostream & operator<< (std::ostream &os, const AbstractRRset &rrset)
 Insert the RRset as a string into stream.
 
ostream & operator<< (std::ostream &os, const EDNS &edns)
 Insert the EDNS as a string into stream.
 
std::ostream & operator<< (std::ostream &os, const LabelSequence &label_sequence)
 Insert the label sequence as a string into stream.
 
ostream & operator<< (std::ostream &os, const Message &message)
 Insert the Message as a string into stream.
 
std::ostream & operator<< (std::ostream &os, const Name &name)
 Insert the name as a string into stream.
 
ostream & operator<< (std::ostream &os, const Opcode &opcode)
 Insert the Opcode as a string into stream.
 
ostream & operator<< (std::ostream &os, const Question &question)
 Insert the Question as a string into stream.
 
ostream & operator<< (std::ostream &os, const Rcode &rcode)
 Insert the Rcode as a string into stream.
 
ostream & operator<< (std::ostream &os, const RRClass &rrclass)
 Insert the RRClass as a string into stream.
 
ostream & operator<< (std::ostream &os, const RRTTL &rrttl)
 Insert the RRTTL as a string into stream.
 
ostream & operator<< (std::ostream &os, const RRType &rrtype)
 Insert the RRType as a string into stream.
 
std::ostream & operator<< (std::ostream &os, const Serial &serial)
 Helper operator for output streams, writes the value to the stream.
 
std::ostream & operator<< (std::ostream &os, const TSIGError &tsig_error)
 Insert the TSIGError as a string into stream.
 
std::ostream & operator<< (std::ostream &os, const TSIGRecord &record)
 Insert the TSIGRecord as a string into stream.
 
MasterLexer::Options operator| (MasterLexer::Options o1, MasterLexer::Options o2)
 Operator to combine MasterLexer options.
 

Variables

const uint32_t MAX_SERIAL_INCREMENT = 2147483647
 The maximum difference between two serial numbers.
 
const uint64_t MAX_SERIAL_VALUE = 4294967296ull
 Maximum value a serial can have, used in + operator.
 

Typedef Documentation

◆ AddRRCallback

typedef std::function<void(const Name& name, const RRClass& rrclass, const RRType& rrtype, const RRTTL& rrttl, const rdata::RdataPtr& rdata)> isc::dns::AddRRCallback

Type of callback to add a RR.

This type of callback is used by the loader to report another loaded RR. The Rdata is no longer preserved by the loader and is fully owned by the callback.

Parameters
nameThe domain name where the RR belongs.
rrclassThe class of the RR.
rrtypeType of the RR.
rrttlTime to live of the RR.
rdataThe actual carried data of the RR.

Definition at line 41 of file master_loader_callbacks.h.

◆ ConstEDNSPtr

typedef boost::shared_ptr<const EDNS> isc::dns::ConstEDNSPtr

A pointer-like type pointing to an immutable EDNS object.

Definition at line 35 of file edns.h.

◆ ConstMessagePtr

typedef boost::shared_ptr<const Message> isc::dns::ConstMessagePtr

Definition at line 671 of file message.h.

◆ ConstQuestionPtr

typedef boost::shared_ptr<const Question> isc::dns::ConstQuestionPtr

A pointer-like type pointing to an (immutable) Question object.

Definition at line 27 of file question.h.

◆ ConstRRsetPtr

typedef boost::shared_ptr<const AbstractRRset> isc::dns::ConstRRsetPtr

A pointer-like type pointing to an (immutable) RRset object.

This type is commonly used as an argument of various functions defined in this library in order to handle RRsets in a polymorphic manner.

Definition at line 57 of file rrset.h.

◆ ConstTSIGRecordPtr

typedef boost::shared_ptr<const TSIGRecord> isc::dns::ConstTSIGRecordPtr

A pointer-like type pointing to an immutable TSIGRecord object.

Definition at line 283 of file tsigrecord.h.

◆ EDNSPtr

typedef boost::shared_ptr<EDNS> isc::dns::EDNSPtr

A pointer-like type pointing to an EDNS object.

Definition at line 32 of file edns.h.

◆ GenericRdataFactoryMap

◆ MessageImplPtr

typedef boost::shared_ptr< MessageImpl > isc::dns::MessageImplPtr

Pointer to the MessageImpl object.

Definition at line 139 of file dns/message.cc.

◆ MessagePtr

typedef boost::shared_ptr<Message> isc::dns::MessagePtr

Pointer-like type pointing to a Message.

This type is expected to be used as an argument in asynchronous callback functions. The internal reference-counting will ensure that that ongoing state information will not be lost if the object that originated the asynchronous call falls out of scope.

Definition at line 670 of file message.h.

◆ qid_t

typedef uint16_t isc::dns::qid_t

Definition at line 72 of file message.h.

◆ QuestionIterator

Definition at line 113 of file message.h.

◆ QuestionPtr

typedef boost::shared_ptr<Question> isc::dns::QuestionPtr

A pointer-like type pointing to an Question object.

Definition at line 24 of file question.h.

◆ RdataFactoryMap

Definition at line 149 of file rrparamregistry.cc.

◆ RdataIteratorPtr

typedef boost::shared_ptr<RdataIterator> isc::dns::RdataIteratorPtr

A pointer-like type point to an RdataIterator object.

Definition at line 60 of file rrset.h.

◆ RRsetIterator

Definition at line 114 of file message.h.

◆ RRsetPtr

typedef boost::shared_ptr<AbstractRRset> isc::dns::RRsetPtr

A pointer-like type pointing to an RRset object.

This type is commonly used as an argument of various functions defined in this library in order to handle RRsets in a polymorphic manner.

Definition at line 50 of file rrset.h.

◆ RRTypeClass

Note: the element ordering in the type/class pair is intentional.

The standard library will perform inequality comparison (i.e, '<') in the way that the second elements (RRClass) are compared only when the first elements are equivalent. In practice, when we compare two pairs of RRType and RRClass, RRClass would be the same (and, in particular, be class IN) in the majority of cases. So this comparison ordering should be more efficient in common cases.

Definition at line 148 of file rrparamregistry.cc.

◆ TSIGContextPtr

typedef boost::shared_ptr<TSIGContext> isc::dns::TSIGContextPtr

Definition at line 435 of file tsig.h.

◆ TSIGKeyPtr

typedef boost::shared_ptr<TSIGKey> isc::dns::TSIGKeyPtr

Definition at line 436 of file tsig.h.

◆ TSIGRecordPtr

typedef boost::shared_ptr<TSIGRecord> isc::dns::TSIGRecordPtr

A pointer-like type pointing to a TSIGRecord object.

Definition at line 280 of file tsigrecord.h.

Function Documentation

◆ createEDNSFromRR()

EDNS * isc::dns::createEDNSFromRR ( const Name name,
const RRClass rrclass,
const RRType rrtype,
const RRTTL ttl,
const rdata::Rdata rdata,
uint8_t &  extended_rcode 
)

Create a new EDNS object from a set of RR parameters, also providing the extended RCODE value.

This function is similar to the EDNS class constructor EDNS::EDNS(const Name&, const RRClass&, const RRType&, const RRTTL&, const rdata::Rdata&) but is different in that

  • It dynamically creates a new object
  • It returns (via a reference argument) the topmost 8 bits of the extended RCODE encoded in the ttl.

On success, extended_rcode will be updated with the 8-bit part of the extended RCODE encoded in the TTL of the OPT RR.

The intended usage of this function is to parse an OPT RR of an incoming DNS message, while updating the RCODE of the message. One common usage pattern is as follows:

Message msg;
...
uint8_t extended_rcode;
ConstEDNSPtr edns = ConstEDNSPtr(createEDNSFromRR(..., extended_rcode));
rcode = Rcode(msg.getRcode().getCode(), extended_rcode);
The Message class encapsulates a standard DNS message.
Definition: message.h:152
const Rcode & getRcode() const
Return the Response Code of the message.
Definition: dns/message.cc:435
DNS Response Codes (RCODEs) class.
Definition: rcode.h:40
uint16_t getCode() const
Returns the Rcode code value.
Definition: rcode.h:106
EDNS * createEDNSFromRR(const Name &name, const RRClass &rrclass, const RRType &rrtype, const RRTTL &ttl, const Rdata &rdata, uint8_t &extended_rcode)
Create a new EDNS object from a set of RR parameters, also providing the extended RCODE value.
Definition: edns.cc:149
boost::shared_ptr< const EDNS > ConstEDNSPtr
A pointer-like type pointing to an immutable EDNS object.
Definition: edns.h:35

(although, like the EDNS constructor, normal applications wouldn't have to use this function directly).

This function provides the strong exception guarantee: Unless an exception is thrown extended_code won't be modified.

This function validates the given parameters and throws exceptions on failure in the same way as the EDNS class constructor. In addition, if memory allocation for the new object fails it throws the corresponding standard exception.

Note that this function returns a bare pointer to the newly allocated object, not a shared pointer object enclosing the pointer. The caller is responsible for deleting the object after the use of it (typically, the caller would immediately encapsulate the returned pointer in a shared pointer object, EDNSPtr or ConstEDNSPtr). It returns a bare pointer so that it can be used where the use of a shared pointer is impossible or not desirable.

Note to developers: there is no strong technical reason why this function cannot be a constructor of the EDNS class or even integrated into the constructor. But we decided to make it a separate free function so that constructors will be free from side effects (which is in itself a matter of preference).

Parameters
nameThe owner name of the OPT RR. This must be the root name.
rrclassThe RR class of the OPT RR.
rrtypeThis must specify the OPT RR type.
ttlThe TTL of the OPT RR.
rdataThe RDATA of the OPT RR.
extended_rcodeA placeholder to store the topmost 8 bits of the extended Rcode.
Returns
A pointer to the created EDNS object.

Definition at line 149 of file edns.cc.

References isc::dns::RRTTL::getValue().

Referenced by isc::dns::MessageImpl::addEDNS().

+ Here is the call graph for this function:

◆ operator<<() [1/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const AbstractRRset rrset 
)

Insert the RRset as a string into stream.

This method convert the rrset into a string and inserts it into the output stream os.

This function overloads the global operator<< to behave as described in ostream::operator<< but applied to RRset objects.

Parameters
osA std::ostream object on which the insertion operation is performed.
rrsetA reference to a (derived class of) AbstractRRset object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 153 of file rrset.cc.

References isc::dns::AbstractRRset::toText().

+ Here is the call graph for this function:

◆ operator<<() [2/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const EDNS edns 
)

Insert the EDNS as a string into stream.

This method convert edns into a string and inserts it into the output stream os.

Parameters
osA std::ostream object on which the insertion operation is performed.
ednsA reference to an EDNS object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 162 of file edns.cc.

References isc::dns::EDNS::toText().

+ Here is the call graph for this function:

◆ operator<<() [3/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const LabelSequence label_sequence 
)

Insert the label sequence as a string into stream.

This method convert the label_sequence into a string and inserts it into the output stream os.

This function overloads the global operator<< to behave as described in ostream::operator<< but applied to LabelSequence objects.

Parameters
osA std::ostream object on which the insertion operation is performed.
label_sequenceThe LabelSequence object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 461 of file labelsequence.cc.

References isc::dns::LabelSequence::toText().

+ Here is the call graph for this function:

◆ operator<<() [4/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const Message message 
)

Insert the Message as a string into stream.

This method convert message into a string and inserts it into the output stream os.

Parameters
osA std::ostream object on which the insertion operation is performed.
messageA Message object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 1162 of file dns/message.cc.

References isc::dns::Message::toText().

+ Here is the call graph for this function:

◆ operator<<() [5/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const Name name 
)

Insert the name as a string into stream.

This method convert the name into a string and inserts it into the output stream os.

This function overloads the global operator<< to behave as described in ostream::operator<< but applied to Name objects.

Parameters
osA std::ostream object on which the insertion operation is performed.
nameThe Name object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 713 of file name.cc.

References isc::dns::Name::toText().

+ Here is the call graph for this function:

◆ operator<<() [6/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const Opcode opcode 
)

Insert the Opcode as a string into stream.

This method convert opcode into a string and inserts it into the output stream os.

Parameters
osA std::ostream object on which the insertion operation is performed.
opcodeA reference to an Opcode object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 57 of file opcode.cc.

References isc::dns::Opcode::toText().

+ Here is the call graph for this function:

◆ operator<<() [7/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const Question question 
)

Insert the Question as a string into stream.

This method convert the question into a string and inserts it into the output stream os.

This function overloads the global operator<< to behave as described in ostream::operator<< but applied to Question objects.

Parameters
osA std::ostream object on which the insertion operation is performed.
questionA reference to a Question object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 75 of file question.cc.

References isc::dns::Question::toText().

+ Here is the call graph for this function:

◆ operator<<() [8/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const Rcode rcode 
)

Insert the Rcode as a string into stream.

This method convert rcode into a string and inserts it into the output stream os.

Parameters
osA std::ostream object on which the insertion operation is performed.
rcodeA reference to an Rcode object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 90 of file rcode.cc.

References isc::dns::Rcode::toText().

+ Here is the call graph for this function:

◆ operator<<() [9/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const RRClass rrclass 
)

Insert the RRClass as a string into stream.

This method convert the rrclass into a string and inserts it into the output stream os.

This function overloads the global operator<< to behave as described in ostream::operator<< but applied to RRClass objects.

Parameters
osA std::ostream object on which the insertion operation is performed.
rrclassThe RRClass object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 67 of file rrclass.cc.

References isc::dns::RRClass::toText().

+ Here is the call graph for this function:

◆ operator<<() [10/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const RRTTL rrttl 
)

Insert the RRTTL as a string into stream.

This method convert the rrttl into a string and inserts it into the output stream os.

This function overloads the global operator<< to behave as described in ostream::operator<< but applied to RRTTL objects.

Parameters
osA std::ostream object on which the insertion operation is performed.
rrttlThe RRTTL object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 208 of file rrttl.cc.

References isc::dns::RRTTL::toText().

+ Here is the call graph for this function:

◆ operator<<() [11/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const RRType rrtype 
)

Insert the RRType as a string into stream.

This method convert the rrtype into a string and inserts it into the output stream os.

This function overloads the global operator<< to behave as described in ostream::operator<< but applied to RRType objects.

Parameters
osA std::ostream object on which the insertion operation is performed.
rrtypeThe RRType object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 58 of file rrtype.cc.

References isc::dns::RRType::toText().

+ Here is the call graph for this function:

◆ operator<<() [12/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const Serial serial 
)

Helper operator for output streams, writes the value to the stream.

Parameters
osThe ostream to write to
serialThe Serial to write
Returns
the output stream

Definition at line 63 of file serial.cc.

References isc::dns::Serial::getValue().

+ Here is the call graph for this function:

◆ operator<<() [13/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const TSIGError tsig_error 
)

Insert the TSIGError as a string into stream.

This method convert tsig_error into a string and inserts it into the output stream os.

Parameters
osA std::ostream object on which the insertion operation is performed.
tsig_errorAn TSIGError object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 61 of file tsigerror.cc.

◆ operator<<() [14/14]

std::ostream & isc::dns::operator<< ( std::ostream &  os,
const TSIGRecord record 
)

Insert the TSIGRecord as a string into stream.

This method convert record into a string and inserts it into the output stream os.

Parameters
osA std::ostream object on which the insertion operation is performed.
recordA TSIGRecord object output by the operation.
Returns
A reference to the same std::ostream object referenced by parameter os after the insertion operation.

Definition at line 135 of file tsigrecord.cc.

References isc::dns::TSIGRecord::toText().

+ Here is the call graph for this function:

◆ operator|()

MasterLexer::Options isc::dns::operator| ( MasterLexer::Options  o1,
MasterLexer::Options  o2 
)
inline

Operator to combine MasterLexer options.

This is a trivial shortcut so that compound options can be specified in an intuitive way.

Definition at line 669 of file master_lexer.h.

Variable Documentation

◆ MAX_SERIAL_INCREMENT

const uint32_t isc::dns::MAX_SERIAL_INCREMENT = 2147483647

The maximum difference between two serial numbers.

If the (plain uint32_t) difference between two serials is greater than this number, the smaller one is considered greater.

Definition at line 19 of file serial.h.

Referenced by isc::dns::Serial::operator<().

◆ MAX_SERIAL_VALUE

const uint64_t isc::dns::MAX_SERIAL_VALUE = 4294967296ull

Maximum value a serial can have, used in + operator.

Definition at line 22 of file serial.h.

Referenced by isc::dns::Serial::operator+().