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

#include <OptIAPrefix.h>

+ Inheritance diagram for TOptIAPrefix:
+ Collaboration diagram for TOptIAPrefix:

Public Member Functions

 TOptIAPrefix (const char *addr, size_t len, TMsg *parent)
 TOptIAPrefix (SPtr< TIPv6Addr > addr, char prefix_length, unsigned long pref, unsigned long valid, TMsg *parent)
virtual bool doDuties ()
unsigned long getPref () const
SPtr< TIPv6AddrgetPrefix () const
uint8_t getPrefixLength () const
size_t getSize ()
unsigned long getValid () const
virtual bool isValid () const
void setPref (unsigned long pref)
void setPrefixLenght (char prefix_length)
void setValid (unsigned long valid)
char * storeSelf (char *buf)
- Public Member Functions inherited from TOpt
 TOpt (int optType, TMsg *parent)
virtual ~TOpt ()
void addOption (TOptPtr opt)
int countOption ()
void delAllOptions ()
bool delOption (uint16_t type)
 Deletes all specified options of that type.
void firstOption ()
TOptPtr getOption (int type)
TOptPtr getOption ()
int getOptType ()
virtual std::string getPlain ()
void setParent (TMsg *Parent)

Private Attributes

SPtr< TIPv6AddrPrefix_
char PrefixLength_
unsigned long PrefLifetime_
bool Valid_
unsigned long ValidLifetime_

Additional Inherited Members

- Public Types inherited from TOpt
enum  EOptionLayout {
  Layout_Addr, Layout_AddrLst, Layout_String, Layout_StringLst,
  Layout_Duid, Layout_Generic
}
- Static Public Member Functions inherited from TOpt
static TOptPtr getOption (const TOptList &list, uint16_t opt_type)
static bool parseOptions (TOptContainer &options, const char *buf, size_t len, TMsg *parent, uint16_t placeId=0, std::string place="option")
 Parses options or suboptions, creates appropriate objects and store them in options container.
- Static Public Attributes inherited from TOpt
static const size_t OPTION6_HDR_LEN = 4
 length of a DHCPv6 option header
- Protected Member Functions inherited from TOpt
int getSubOptSize ()
char * storeHeader (char *buf)
char * storeSubOpt (char *buf)
- Protected Attributes inherited from TOpt
int OptType
TMsgParent
TOptContainer SubOptions
bool Valid

Constructor & Destructor Documentation

TOptIAPrefix::TOptIAPrefix ( const char *  addr,
size_t  len,
TMsg parent 
)
TOptIAPrefix::TOptIAPrefix ( SPtr< TIPv6Addr addr,
char  prefix_length,
unsigned long  pref,
unsigned long  valid,
TMsg parent 
)

Member Function Documentation

virtual bool TOptIAPrefix::doDuties ( )
inlinevirtual

Implements TOpt.

Reimplemented in TSrvOptIAPrefix.

unsigned long TOptIAPrefix::getPref ( ) const
SPtr< TIPv6Addr > TOptIAPrefix::getPrefix ( ) const
uint8_t TOptIAPrefix::getPrefixLength ( ) const
size_t TOptIAPrefix::getSize ( )
virtual

Return the size of the option, including :

  • Option number,
  • Option size
  • data
Returns
the size

Implements TOpt.

unsigned long TOptIAPrefix::getValid ( ) const
bool TOptIAPrefix::isValid ( ) const
virtual

Validate the option

Returns
true if the option is valid.

Reimplemented from TOpt.

void TOptIAPrefix::setPref ( unsigned long  pref)
void TOptIAPrefix::setPrefixLenght ( char  prefix_length)
void TOptIAPrefix::setValid ( unsigned long  valid)
char * TOptIAPrefix::storeSelf ( char *  buf)
virtual

This method transform the instance of the option class into bytecode ready to be sent to the client or server, conform to the RFC

Parameters
bufThe address where to store the option
Returns
The address where the option ends

Implements TOpt.

Member Data Documentation

SPtr<TIPv6Addr> TOptIAPrefix::Prefix_
private
char TOptIAPrefix::PrefixLength_
private
unsigned long TOptIAPrefix::PrefLifetime_
private
bool TOptIAPrefix::Valid_
private
unsigned long TOptIAPrefix::ValidLifetime_
private

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