1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
/*
* Dibbler - a portable DHCPv6
*
* authors: Tomasz Mrugalski <thomson@klub.com.pl>
* Marek Senderski <msend@o2.pl>
*
* released under GNU GPL v2 only licence
*
* $Id: OptIAAddress.h,v 1.5 2008-08-29 00:07:30 thomson Exp $
*
* $Log: OptIAAddress.h,v $
* Revision 1.5 2008-08-29 00:07:30 thomson
* Temporary license change(GPLv2 or later -> GPLv2 only)
*
* Revision 1.4 2004-10-27 22:07:56 thomson
* Signed/unsigned issues fixed, Lifetime option implemented, INFORMATION-REQUEST
* message is now sent properly. Valid lifetime granted by server fixed.
*
* Revision 1.3 2004/09/07 22:02:33 thomson
* pref/valid/IAID is not unsigned, RAPID-COMMIT now works ok.
*
*/
#ifndef OPTIAADDRESS_H
#define OPTIAADDRESS_H
#include "SmartPtr.h"
#include "Container.h"
#include "Opt.h"
#include "IPv6Addr.h"
class TOptIAAddress : public TOpt
{
public:
TOptIAAddress( char * &addr, int &n, TMsg* parent);
TOptIAAddress( SmartPtr<TIPv6Addr> addr, unsigned long pref, unsigned long valid, TMsg* parent);
int getSize();
char * storeSelf( char* buf);
SmartPtr<TIPv6Addr> getAddr();
unsigned long getPref();
unsigned long getValid();
void setPref(unsigned long pref);
void setValid(unsigned long valid);
bool isValid();
private:
SmartPtr<TIPv6Addr> Addr;
unsigned long Valid;
unsigned long Pref;
bool ValidOpt;
};
#endif
|