]> git.tdb.fi Git - libs/net.git/blobdiff - source/net/streamserversocket.cpp
Fill in a missing parameter for check_sys_error
[libs/net.git] / source / net / streamserversocket.cpp
index e408dcedfb6ae6c2506e3fd81565c7da7d04f947..817145bcff15c024469e64f10cdcfe8516e4e551 100644 (file)
@@ -1,7 +1,4 @@
-#ifdef _WIN32
-#include <winsock2.h>
-#endif
-#include <cerrno>
+#include "platform_api.h"
 #include <msp/core/refptr.h>
 #include <msp/core/systemerror.h>
 #include <msp/io/handle_private.h>
@@ -29,10 +26,7 @@ void StreamServerSocket::listen(const SockAddr &addr, unsigned backlog)
        if(err==-1)
                throw system_error("listen");
 
-#ifdef _WIN32
-       WSAEventSelect(priv->handle, *priv->event, FD_ACCEPT);
-#endif
-       set_events(IO::P_INPUT);
+       set_socket_events(S_ACCEPT);
 
        listening = true;
 }
@@ -44,7 +38,7 @@ StreamSocket *StreamServerSocket::accept()
 
        SockAddr::SysAddr sa;
        Private new_p;
-       new_p.handle = ::accept(priv->handle, reinterpret_cast<sockaddr *>(&sa.addr), &sa.size);
+       new_p.handle = check_sys_error(::accept(priv->handle, reinterpret_cast<sockaddr *>(&sa.addr), &sa.size), "accept");
 
        RefPtr<SockAddr> paddr = SockAddr::new_from_sys(sa);
        return new StreamSocket(new_p, *paddr);