00001 /* 00002 * Dibbler - a portable DHCPv6 00003 * 00004 * authors: Tomasz Mrugalski <thomson@klub.com.pl> 00005 * Marek Senderski <msend@o2.pl> 00006 * 00007 * released under GNU GPL v2 or later licence 00008 * 00009 * $Id: OptAddrLst.h,v 1.1 2004/11/02 01:23:13 thomson Exp $ 00010 * 00011 * $Log: OptAddrLst.h,v $ 00012 * Revision 1.1 2004/11/02 01:23:13 thomson 00013 * Initial revision 00014 * 00015 * 00016 */ 00017 00018 #ifndef OPTDNSSERVERS_H 00019 #define OPTDNSSERVERS_H 00020 #include "IPv6Addr.h" 00021 #include "Container.h" 00022 #include "SmartPtr.h" 00023 #include "Opt.h" 00024 00025 class TOptAddrLst : public TOpt 00026 { 00027 public: 00028 TOptAddrLst(int type, TContainer< SmartPtr<TIPv6Addr> > lst, TMsg* parent); 00029 TOptAddrLst(int type, char *&buf, int &bufsize, TMsg* parent); 00030 char * storeSelf( char* buf); 00031 int getSize(); 00032 void firstAddr(); 00033 SmartPtr<TIPv6Addr> getAddr(); 00034 int countAddr(); 00035 bool isValid(); 00036 protected: 00037 TContainer< SmartPtr<TIPv6Addr> > AddrLst; 00038 bool Valid; 00039 00040 }; 00041 #endif 00042