diff options
Diffstat (limited to 'Ivy/ThreadedSocket.cxx')
-rw-r--r-- | Ivy/ThreadedSocket.cxx | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/Ivy/ThreadedSocket.cxx b/Ivy/ThreadedSocket.cxx index 7d43bb5..03b062e 100644 --- a/Ivy/ThreadedSocket.cxx +++ b/Ivy/ThreadedSocket.cxx @@ -70,6 +70,28 @@ void CThreadedSocket::GetSockName(ivy::string & rSocketAddress, UINT& rSocketPor rSocketAddress = inet_ntoa(sockAddr.sin_addr);
}
+unsigned short int CThreadedSocket::GetLocalPort()
+{
+ int err;
+ struct sockaddr_in name;
+ socklen_t len = sizeof(name);
+
+ err = getsockname (m_hSocket, (struct sockaddr *)&name, &len );
+ if (err < 0 ) return 0;
+ return name.sin_port;
+}
+unsigned short int CThreadedSocket::GetRemotePort()
+{
+ int err;
+ struct sockaddr_in name;
+ socklen_t len = sizeof(name);
+
+ err = getpeername (m_hSocket, (struct sockaddr *)&name, &len );
+ if (err < 0 ) return 0;
+ return name.sin_port;
+}
+
+
/////////////////////////////////////////////////////////////////////////////
// CAscynSocket Operations
|