Kea  1.5.0
isc::dhcp::Network4 Class Reference

Specialization of the Network object for DHCPv4 case. More...

#include <network.h>

+ Inheritance diagram for isc::dhcp::Network4:

Public Member Functions

 Network4 ()
 Constructor. More...
 
bool getAuthoritative () const
 Returns the flag indicating if requests for unknown IP addresses should be rejected with DHCPNAK instead of ignored. More...
 
bool getMatchClientId () const
 Returns the flag indicating if the client identifiers should be used to identify the client's lease. More...
 
virtual asiolink::IOAddress getServerId () const
 Returns binary representation of the dhcp-server-identifier option (54). More...
 
void setAuthoritative (const bool authoritative)
 Sets the flag indicating if requests for unknown IP addresses should be rejected with DHCPNAK instead of ignored. More...
 
void setMatchClientId (const bool match)
 Sets the flag indicating if the client identifier should be used to identify the client's lease. More...
 
virtual data::ElementPtr toElement () const
 Unparses network object. More...
 
- Public Member Functions inherited from isc::dhcp::Network
 Network ()
 Constructor. More...
 
virtual ~Network ()
 Virtual destructor. More...
 
void addRelayAddress (const asiolink::IOAddress &addr)
 Adds an address to the list addresses in the network's relay info. More...
 
void allowClientClass (const isc::dhcp::ClientClass &class_name)
 Sets the supported class to class class_name. More...
 
virtual bool clientSupported (const isc::dhcp::ClientClasses &client_classes) const
 Checks whether this network supports client that belongs to specified classes. More...
 
CfgOptionPtr getCfgOption ()
 Returns pointer to the option data configuration for this subnet. More...
 
ConstCfgOptionPtr getCfgOption () const
 Returns const pointer to the option data configuration for this subnet. More...
 
const isc::dhcp::ClientClassgetClientClass () const
 returns the client class More...
 
HRMode getHostReservationMode () const
 Specifies what type of Host Reservations are supported. More...
 
std::string getIface () const
 Returns name of the local interface for which this network is selected. More...
 
const IOAddressListgetRelayAddresses () const
 Returns the list of relay addresses from the network's relay info. More...
 
const RelayInfogetRelayInfo () const
 Returns const reference to relay information. More...
 
const isc::dhcp::ClientClassesgetRequiredClasses () const
 Returns classes which are required to be evaluated. More...
 
Triplet< uint32_t > getT1 () const
 Returns T1 (renew timer), expressed in seconds. More...
 
Triplet< uint32_t > getT2 () const
 Returns T2 (rebind timer), expressed in seconds. More...
 
Triplet< uint32_t > getValid () const
 Return valid-lifetime for addresses in that prefix. More...
 
bool hasRelayAddress (const asiolink::IOAddress &address) const
 Tests if the network's relay info contains the given address. More...
 
bool hasRelays () const
 Indicates if network's relay info has relay addresses. More...
 
void requireClientClass (const isc::dhcp::ClientClass &class_name)
 Adds class class_name to classes required to be evaluated. More...
 
void setHostReservationMode (HRMode mode)
 Sets host reservation mode. More...
 
void setIface (const std::string &iface_name)
 Sets local name of the interface for which this network is selected. More...
 
void setRelayInfo (const RelayInfo &relay)
 Sets information about relay. More...
 
void setT1 (const Triplet< uint32_t > &t1)
 Sets new renew timer for a network. More...
 
void setT2 (const Triplet< uint32_t > &t2)
 Sets new rebind timer for a network. More...
 
void setValid (const Triplet< uint32_t > &valid)
 Sets new valid lifetime for a network. More...
 
- Public Member Functions inherited from isc::data::StampedElement
 StampedElement ()
 Constructor. More...
 
boost::posix_time::ptime getModificationTime () const
 Returns timestamp. More...
 
void setModificationTime (const boost::posix_time::ptime &timestamp)
 Sets timestamp to the explicitly provided value. More...
 
void updateModificationTime ()
 Sets timestmp to the current time. More...
 
- Public Member Functions inherited from isc::data::UserContext
void contextToElement (data::ElementPtr map) const
 Merge unparse a user_context object. More...
 
data::ConstElementPtr getContext () const
 Returns const pointer to the user context. More...
 
void setContext (const data::ConstElementPtr &ctx)
 Sets user context. More...
 
- Public Member Functions inherited from isc::data::CfgToElement
virtual ~CfgToElement ()
 Destructor. More...
 

Additional Inherited Members

- Public Types inherited from isc::dhcp::Network
enum  HRMode { HR_DISABLED, HR_OUT_OF_POOL, HR_GLOBAL, HR_ALL }
 Specifies allowed host reservation mode. More...
 
typedef boost::shared_ptr< Network::RelayInfoRelayInfoPtr
 Pointer to the RelayInfo structure. More...
 
- Static Public Member Functions inherited from isc::data::UserContext
static data::ElementPtr toElement (data::ConstElementPtr map)
 Copy extracting comments an Element map. More...
 
- Protected Attributes inherited from isc::dhcp::Network
CfgOptionPtr cfg_option_
 Pointer to the option data configuration for this subnet. More...
 
ClientClass client_class_
 Optional definition of a client class. More...
 
HRMode host_reservation_mode_
 Specifies host reservation mode. More...
 
std::string iface_name_
 Holds interface name for which this network is selected. More...
 
RelayInfo relay_
 Relay information. More...
 
ClientClasses required_classes_
 Required classes. More...
 
Triplet< uint32_t > t1_
 a Triplet (min/default/max) holding allowed renew timer values More...
 
Triplet< uint32_t > t2_
 a Triplet (min/default/max) holding allowed rebind timer values More...
 
Triplet< uint32_t > valid_
 a Triplet (min/default/max) holding allowed valid lifetime values More...
 
- Protected Attributes inherited from isc::data::UserContext
data::ConstElementPtr user_context_
 Pointer to the user context (may be NULL) More...
 

Detailed Description

Specialization of the Network object for DHCPv4 case.

Definition at line 366 of file network.h.

Constructor & Destructor Documentation

◆ Network4()

isc::dhcp::Network4::Network4 ( )
inline

Constructor.

Definition at line 370 of file network.h.

Member Function Documentation

◆ getAuthoritative()

bool isc::dhcp::Network4::getAuthoritative ( ) const
inline

Returns the flag indicating if requests for unknown IP addresses should be rejected with DHCPNAK instead of ignored.

Returns
true if requests for unknown IP addresses should be rejected, false otherwise.

Definition at line 396 of file network.h.

◆ getMatchClientId()

bool isc::dhcp::Network4::getMatchClientId ( ) const
inline

Returns the flag indicating if the client identifiers should be used to identify the client's lease.

Returns
true if client identifiers should be used, false otherwise.

Definition at line 378 of file network.h.

◆ getServerId()

IOAddress isc::dhcp::Network4::getServerId ( ) const
virtual

Returns binary representation of the dhcp-server-identifier option (54).

Returns
Server identifier option as IPv4 address. Zero IPv4 address indicates that server identifier hasn't been specified.

Definition at line 205 of file network.cc.

References DHCP4_OPTION_SPACE, isc::dhcp::DHO_DHCP_SERVER_IDENTIFIER, and isc::asiolink::IOAddress::IPV4_ZERO_ADDRESS().

+ Here is the call graph for this function:

◆ setAuthoritative()

void isc::dhcp::Network4::setAuthoritative ( const bool  authoritative)
inline

Sets the flag indicating if requests for unknown IP addresses should be rejected with DHCPNAK instead of ignored.

Parameters
authoritativeIf this value is true, the requests for unknown IP addresses will be rejected with DHCPNAK messages

Definition at line 405 of file network.h.

◆ setMatchClientId()

void isc::dhcp::Network4::setMatchClientId ( const bool  match)
inline

Sets the flag indicating if the client identifier should be used to identify the client's lease.

Parameters
matchIf this value is true, the client identifiers are not used for lease lookup.

Definition at line 387 of file network.h.

◆ toElement()

ElementPtr isc::dhcp::Network4::toElement ( ) const
virtual

Unparses network object.

Returns
A pointer to unparsed network configuration.

Reimplemented from isc::dhcp::Network.

Reimplemented in isc::dhcp::Subnet4, and isc::dhcp::SharedNetwork4.

Definition at line 192 of file network.cc.

Referenced by isc::dhcp::Subnet4::toElement().


The documentation for this class was generated from the following files: