Dibbler - a portable DHCPv6  1.0.2RC1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
TSrvParsIfaceOpt Class Reference

#include <SrvParsIfaceOpt.h>

+ Inheritance diagram for TSrvParsIfaceOpt:
+ Collaboration diagram for TSrvParsIfaceOpt:

Public Member Functions

 TSrvParsIfaceOpt (void)
 ~TSrvParsIfaceOpt (void)
void addExtraOption (SPtr< TOpt > extra, bool always)
long getClntMaxLease ()
SPtr< TOptgetExtraOption (uint16_t type)
const TOptListgetExtraOptions ()
const TOptListgetForcedOptions ()
std::string getFQDNDomain ()
TContainer< SPtr< TFQDN > > * getFQDNLst ()
int getFQDNMode ()
long getIfaceMaxLease ()
bool getLeaseQuerySupport ()
char getPreference ()
bool getRapidCommit ()
int getRelayID ()
SPtr< TSrvOptInterfaceIDgetRelayInterfaceID ()
std::string getRelayName ()
int getRevDNSZoneRootLength ()
SPtr< TIPv6AddrgetUnicast ()
EUnknownFQDNMode getUnknownFQDN ()
bool isRelay ()
void setClntMaxLease (long maxLeases)
void setFQDNLst (TContainer< SPtr< TFQDN > > *fqdn)
void setFQDNMode (int FQDNMode)
void setIfaceMaxLease (long maxLease)
void setLeaseQuerySupport (bool support)
void setPreference (char pref)
void setRapidCommit (bool rapidComm)
void setRelayID (int ifindex)
void setRelayInterfaceID (SPtr< TSrvOptInterfaceID > id)
void setRelayName (std::string name)
void setRevDNSZoneRootLength (int revDNSZoneRootLength)
void setUnicast (SPtr< TIPv6Addr > addr)
void setUnknownFQDN (EUnknownFQDNMode mode, const std::string &domain)
bool supportFQDN ()
- Public Member Functions inherited from TSrvParsClassOpt
 TSrvParsClassOpt (void)
 ~TSrvParsClassOpt (void)
void addAcceptClnt (SPtr< THostRange > addr)
void addPool (SPtr< THostRange > addr)
void addRejedClnt (SPtr< THostRange > addr)
long countPool ()
void firstAcceptClnt ()
void firstPool ()
void firstRejedClnt ()
SPtr< THostRangegetAcceptClnt ()
SPtr< TSrvOptAddrParamsgetAddrParams ()
unsigned long getClassMaxLease ()
SPtr< THostRangegetPool ()
unsigned long getPrefBeg ()
unsigned long getPrefEnd ()
SPtr< THostRangegetRejedClnt ()
unsigned long getShare ()
unsigned long getT1Beg ()
unsigned long getT1End ()
unsigned long getT2Beg ()
unsigned long getT2End ()
unsigned long getValidBeg ()
unsigned long getValidEnd ()
 List (std::string) getAllowClientClassString()
 List (std::string) getDenyClientClassString()
void setAcceptClnt (TContainer< SPtr< THostRange > > *acceptClnt)
void setAddrParams (int prefix, int bitfield)
void setAllowClientClass (std::string s)
void setClassMaxLease (unsigned long maxClntLeases)
void setDenyClientClass (std::string s)
void setPool (TContainer< SPtr< THostRange > > *pool)
void setPrefBeg (unsigned long pref)
void setPrefEnd (unsigned long pref)
void setRejedClnt (TContainer< SPtr< THostRange > > *rejedClnt)
void setShare (unsigned long share)
void setT1Beg (unsigned long t1)
void setT1End (unsigned long t1)
void setT2Beg (unsigned long t2)
void setT2End (unsigned long t2)
void setValidBeg (unsigned long valid)
void setValidEnd (unsigned long valid)

Private Member Functions

void addOption (TOptList &list, SPtr< TOpt > opt)
 adds option to the list (and merges vendor-options if possible)

Private Attributes

long ClntMaxLease_
TOptList ExtraOpts
 extra options ALWAYS sent to client (may also include ForcedOpts)
TOptList ForcedOpts
 list of options that are forced to client
std::string FQDNDomain_
TContainer< SPtr< TFQDN > > FQDNLst_
int FQDNMode_
bool FQDNSupport_
long IfaceMaxLease_
bool LeaseQuery_
char Preference_
bool RapidCommit_
bool Relay_
int RelayID_
SPtr< TSrvOptInterfaceIDRelayInterfaceID_
std::string RelayName_
int RevDNSZoneRootLength_
SPtr< TIPv6AddrUnicast_
EUnknownFQDNMode UnknownFQDN_
TContainer< SPtr
< TOptVendorSpecInfo > > 
VendorSpec_

Constructor & Destructor Documentation

TSrvParsIfaceOpt::TSrvParsIfaceOpt ( void  )
TSrvParsIfaceOpt::~TSrvParsIfaceOpt ( void  )

Member Function Documentation

void TSrvParsIfaceOpt::addExtraOption ( SPtr< TOpt extra,
bool  always 
)
void TSrvParsIfaceOpt::addOption ( TOptList list,
SPtr< TOpt opt 
)
private

adds option to the list (and merges vendor-options if possible)

Adds new option to the list. However, if the option being added in vendor-option, it tries to find if there's existing vendor option with the same vendor-id. If there is, it just copies sub-options from the option being added to the option that is already defined.

Parameters
listlist of options (new option will be added or merged here)
customnew option to be added
long TSrvParsIfaceOpt::getClntMaxLease ( )
TOptPtr TSrvParsIfaceOpt::getExtraOption ( uint16_t  type)
const TOptList & TSrvParsIfaceOpt::getExtraOptions ( )
const TOptList & TSrvParsIfaceOpt::getForcedOptions ( )
std::string TSrvParsIfaceOpt::getFQDNDomain ( )
TContainer< SPtr< TFQDN > > * TSrvParsIfaceOpt::getFQDNLst ( )
int TSrvParsIfaceOpt::getFQDNMode ( )
long TSrvParsIfaceOpt::getIfaceMaxLease ( )
bool TSrvParsIfaceOpt::getLeaseQuerySupport ( )
char TSrvParsIfaceOpt::getPreference ( )
bool TSrvParsIfaceOpt::getRapidCommit ( )
int TSrvParsIfaceOpt::getRelayID ( )
SPtr< TSrvOptInterfaceID > TSrvParsIfaceOpt::getRelayInterfaceID ( )
string TSrvParsIfaceOpt::getRelayName ( )
int TSrvParsIfaceOpt::getRevDNSZoneRootLength ( )
SPtr< TIPv6Addr > TSrvParsIfaceOpt::getUnicast ( )
EUnknownFQDNMode TSrvParsIfaceOpt::getUnknownFQDN ( )

returns enum that specifies, how to handle unknown FQDNs

Returns
bool TSrvParsIfaceOpt::isRelay ( )
void TSrvParsIfaceOpt::setClntMaxLease ( long  maxLeases)
void TSrvParsIfaceOpt::setFQDNLst ( TContainer< SPtr< TFQDN > > *  fqdn)
void TSrvParsIfaceOpt::setFQDNMode ( int  FQDNMode)
void TSrvParsIfaceOpt::setIfaceMaxLease ( long  maxLease)
void TSrvParsIfaceOpt::setLeaseQuerySupport ( bool  support)
void TSrvParsIfaceOpt::setPreference ( char  pref)
void TSrvParsIfaceOpt::setRapidCommit ( bool  rapidComm)
void TSrvParsIfaceOpt::setRelayID ( int  ifindex)
void TSrvParsIfaceOpt::setRelayInterfaceID ( SPtr< TSrvOptInterfaceID id)
void TSrvParsIfaceOpt::setRelayName ( std::string  name)
void TSrvParsIfaceOpt::setRevDNSZoneRootLength ( int  revDNSZoneRootLength)
void TSrvParsIfaceOpt::setUnicast ( SPtr< TIPv6Addr addr)
void TSrvParsIfaceOpt::setUnknownFQDN ( EUnknownFQDNMode  mode,
const std::string &  domain 
)
bool TSrvParsIfaceOpt::supportFQDN ( )

Member Data Documentation

long TSrvParsIfaceOpt::ClntMaxLease_
private
TOptList TSrvParsIfaceOpt::ExtraOpts
private

extra options ALWAYS sent to client (may also include ForcedOpts)

TOptList TSrvParsIfaceOpt::ForcedOpts
private

list of options that are forced to client

std::string TSrvParsIfaceOpt::FQDNDomain_
private
TContainer< SPtr<TFQDN> > TSrvParsIfaceOpt::FQDNLst_
private
int TSrvParsIfaceOpt::FQDNMode_
private
bool TSrvParsIfaceOpt::FQDNSupport_
private
long TSrvParsIfaceOpt::IfaceMaxLease_
private
bool TSrvParsIfaceOpt::LeaseQuery_
private
char TSrvParsIfaceOpt::Preference_
private
Todo:
: Preference should be a global value
bool TSrvParsIfaceOpt::RapidCommit_
private
bool TSrvParsIfaceOpt::Relay_
private
int TSrvParsIfaceOpt::RelayID_
private
SPtr<TSrvOptInterfaceID> TSrvParsIfaceOpt::RelayInterfaceID_
private
std::string TSrvParsIfaceOpt::RelayName_
private
int TSrvParsIfaceOpt::RevDNSZoneRootLength_
private
SPtr<TIPv6Addr> TSrvParsIfaceOpt::Unicast_
private
EUnknownFQDNMode TSrvParsIfaceOpt::UnknownFQDN_
private
TContainer< SPtr<TOptVendorSpecInfo> > TSrvParsIfaceOpt::VendorSpec_
private

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