]> git.tdb.fi Git - libs/net.git/blobdiff - source/datagramsocket.cpp
Add an overload for resolve that takes host and service separately
[libs/net.git] / source / datagramsocket.cpp
index 3f20ba5e242a49f39d47731e97d04ab1674a75e2..d24ca4e1ec8ec1c10fcd11c3188da874426b053b 100644 (file)
@@ -10,7 +10,7 @@ namespace Msp {
 namespace Net {
 
 DatagramSocket::DatagramSocket(Family f, int p):
-       Socket(f, SOCK_DGRAM, p)
+       ClientSocket(f, SOCK_DGRAM, p)
 {
 #ifdef WIN32
        WSAEventSelect(priv->handle, *priv->event, FD_READ|FD_CLOSE);
@@ -18,7 +18,7 @@ DatagramSocket::DatagramSocket(Family f, int p):
        set_events(IO::P_INPUT);
 }
 
-int DatagramSocket::connect(const SockAddr &addr)
+bool DatagramSocket::connect(const SockAddr &addr)
 {
        SockAddr::SysAddr sa = addr.to_sys();
 
@@ -38,11 +38,11 @@ int DatagramSocket::connect(const SockAddr &addr)
        delete local_addr;
        SockAddr::SysAddr lsa;
        getsockname(priv->handle, reinterpret_cast<sockaddr *>(&lsa.addr), &lsa.size);
-       local_addr = SockAddr::from_sys(lsa);
+       local_addr = SockAddr::new_from_sys(lsa);
 
        connected = true;
 
-       return (err==0)?0:1;
+       return true;
 }
 
 unsigned DatagramSocket::sendto(const char *buf, unsigned size, const SockAddr &addr)
@@ -91,7 +91,7 @@ unsigned DatagramSocket::recvfrom(char *buf, unsigned size, SockAddr *&from_addr
                }
        }
 
-       from_addr = SockAddr::from_sys(sa);
+       from_addr = SockAddr::new_from_sys(sa);
 
        return ret;
 }