Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

IPv6Addr.h

Go to the documentation of this file.
00001 /*
00002  * Dibbler - a portable DHCPv6
00003  *
00004  * authors: Tomasz Mrugalski <thomson@klub.com.pl>
00005  *          Marek Senderski <msend@o2.pl>
00006  *
00007  * $Id: IPv6Addr.h,v 1.4 2004/12/07 20:53:14 thomson Exp $
00008  *
00009  * $Log: IPv6Addr.h,v $
00010  * Revision 1.4  2004/12/07 20:53:14  thomson
00011  * Link local safety checks added (bug #39)
00012  *
00013  * Revision 1.3  2004/03/29 22:06:49  thomson
00014  * 0.1.1 version
00015  *
00016  *
00017  * Released under GNU GPL v2 licence
00018  *
00019  */
00020 
00021 #ifndef IPV6ADDR_H
00022 #define IPV6ADDR_H
00023 
00024 #include <iostream>
00025 #include <fstream>
00026 #include <iomanip>
00027 using namespace std;
00028 class TIPv6Addr
00029 {
00030         friend std::ostream& operator<<(std::ostream& out,TIPv6Addr& group);
00031 public:
00032     TIPv6Addr();    //Creates any address
00033     TIPv6Addr(char* addr, bool plain=false);
00034     char* getAddr();
00035     void setAddr(char* addr);
00036     char* getPlain();
00037     char* storeSelf(char *buf);
00038     bool linkLocal();
00039     TIPv6Addr operator-(const TIPv6Addr &other);
00040     TIPv6Addr operator+(const TIPv6Addr &other);
00041     TIPv6Addr& operator--();
00042     bool operator==(const TIPv6Addr &other);
00043     bool operator<=(const TIPv6Addr &other);
00044 private:
00045     char Addr[16];
00046     char Plain[sizeof("0000:0000:0000:0000:0000:0000:0000.000.000.000.000")];
00047 };
00048 #endif
00049 

Generated on Mon Dec 27 21:55:22 2004 for Dibbler - a portable DHCPv6 by  doxygen 1.3.9.1