X-Git-Url: http://git.tdb.fi/?p=libs%2Fnet.git;a=blobdiff_plain;f=source%2Fsockaddr.h;h=745e6d45afc59adda0889843a257da05dbf16b24;hp=63f2ab48db1462b9f201737208477d95a7a42763;hb=a81c41acd873cda7f40bca634782230d9e57dc4f;hpb=f59eded7c3e162bbdfc6db424c9badc730017698 diff --git a/source/sockaddr.h b/source/sockaddr.h index 63f2ab4..745e6d4 100644 --- a/source/sockaddr.h +++ b/source/sockaddr.h @@ -1,13 +1,7 @@ -/* $Id$ - -This file is part of libmspnet -Copyright © 2008 Mikkosoft Productions, Mikko Rasa -Distributed under the LGPL -*/ - #ifndef MSP_NET_SOCKADDR_H_ #define MSP_NET_SOCKADDR_H_ +#include #ifndef WIN32 #include #endif @@ -19,21 +13,23 @@ namespace Net { class SockAddr { public: - virtual Family get_family() const =0; - virtual std::string str() const =0; + virtual Family get_family() const = 0; + virtual std::string str() const = 0; /** Fills the given struct sockaddr with information from this SockAddr. @return Number of bytes used */ - virtual unsigned fill_sockaddr(sockaddr &) const =0; + virtual unsigned fill_sockaddr(sockaddr &) const = 0; + virtual unsigned fill_sockaddr(sockaddr_storage &) const; virtual SockAddr *copy() const =0; virtual ~SockAddr() { } - static SockAddr *create(sockaddr &); + static SockAddr *create(const sockaddr &sa) { return create(reinterpret_cast(sa)); } + static SockAddr *create(const sockaddr_storage &); protected: SockAddr() { } };