]> git.tdb.fi Git - libs/net.git/blobdiff - source/streamlistensocket.cpp
Add IPv6 support
[libs/net.git] / source / streamlistensocket.cpp
index 2a8bc3d216e89c85a4a69e1dd17017601c7e4ee7..12e98b1f6a2d3b9d40fca5f689f74e2af07a7630 100644 (file)
@@ -1,7 +1,7 @@
 /* $Id$
 
 This file is part of libmspnet
-Copyright © 2008  Mikkosoft Productions, Mikko Rasa
+Copyright © 2008, 2011  Mikkosoft Productions, Mikko Rasa
 Distributed under the LGPL
 */
 
@@ -45,9 +45,9 @@ StreamSocket *StreamListenSocket::accept()
        if(!listening)
                throw InvalidState("Socket is not listening");
 
-       sockaddr sa;
-       socklen_t size=sizeof(sockaddr);
-       SocketHandle new_h=::accept(handle, &sa, &size);
+       sockaddr_storage sa;
+       socklen_t size=sizeof(sockaddr_storage);
+       SocketHandle new_h=::accept(handle, reinterpret_cast<sockaddr *>(&sa), &size);
 
        RefPtr<SockAddr> paddr=SockAddr::create(sa);
        return new StreamSocket(new_h, *paddr);