42 #ifndef _DWMIPV6PREFIX_HH_ 43 #define _DWMIPV6PREFIX_HH_ 135 ssize_t
Read(
int fd);
140 ssize_t
Write(
int fd)
const;
146 size_t Read(FILE *f);
152 size_t Write(FILE *f)
const;
157 std::istream &
Read(std::istream & is);
162 std::ostream &
Write(std::ostream & os)
const;
167 int Read(gzFile gzf);
172 int Write(gzFile gzf)
const;
182 int BZWrite(BZFILE *bzf)
const;
187 friend std::ostream &
operator << (std::ostream & os,
203 struct in6_addr _addr;
206 inline uint8_t NumAddrBytes()
const 208 return((_length + 7) / 8);
215 #endif // _DWMIPV6PREFIX_HH_ bool Contains(const Ipv6Address &addr) const
Returns true if addr falls within the prefix.
ssize_t Write(int fd) const
Writes the prefix to a file descriptor.
friend std::ostream & operator<<(std::ostream &os, const Ipv6Prefix &prefix)
Prints a prefix to an ostream in the usual colon-delimited form.
This class is a pure virtual class, defining an interface for classes that can write their contents t...
Definition: DwmGZWritable.hh:57
This class encapsulates an IPv6 address.
Definition: DwmIpv6Address.hh:59
Dwm::Writable pure virtual class definition.
Dwm::BZ2Readable pure virtual class definition.
Dwm::GZReadable pure virtual class definition.
std::string ToString() const
Returns a string representation of the prefix in the usual form, for example "1234:5678::/32".
Dwm::Readable pure virtual class definition.
ssize_t Read(int fd)
Reads the prefix from a file descriptor.
This class is a pure virtual class, defining an interface for classes that can read their contents fr...
Definition: DwmBZ2Readable.hh:57
bool operator==(const Ipv6Prefix &prefix) const
Equal-to operator.
int BZWrite(BZFILE *bzf) const
Writes the prefix to a BZFILE pointer.
Ipv6Address Netmask() const
Returns the netmask.
bool operator<(const Ipv6Prefix &prefix) const
Less-than operator.
uint32_t StreamedLength() const
Returns the number of bytes that would be written if the prefix was written to a file descriptor or o...
bool Set(const Ipv6Address &network, uint8_t maskLength)
Set the prefix using a network address and netmask length.
Dwm::BZ2Writable pure virtual class definition.
Definition: DwmBZ2IO.hh:67
int BZRead(BZFILE *bzf)
Reads the prefix from a BZFILE pointer.
This class is a pure virtual class, defining an interface for classes that can read their contents fr...
Definition: DwmGZReadable.hh:57
This class defines an interface for classes that can write their contents to an ostream, file descriptor or FILE pointer.
Definition: DwmWritable.hh:58
This class is a pure virtual class, defining an interface for classes that can write their contents t...
Definition: DwmBZ2Writable.hh:57
Dwm::GZWritable pure virtual class definition.
bool operator>(const Ipv6Prefix &prefix) const
Greater-than operator.
Dwm::Ipv6Address class definition.
This class defines an interface for classes that can read their contents from an istream, file descriptor or FILE pointer.
Definition: DwmReadable.hh:58
uint8_t MaskLength() const
Returns the netmask length.
Ipv6Address Network() const
Returns the network address.
This class encapsulates an IPv6 network prefix.
Definition: DwmIpv6Prefix.hh:63