summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tools/cxsocket.c14
-rw-r--r--tools/cxsocket.h5
2 files changed, 16 insertions, 3 deletions
diff --git a/tools/cxsocket.c b/tools/cxsocket.c
index 05d0e7aa..16f75674 100644
--- a/tools/cxsocket.c
+++ b/tools/cxsocket.c
@@ -4,7 +4,7 @@
* See the main source file 'xineliboutput.c' for copyright information and
* how to reach the author.
*
- * $Id: cxsocket.c,v 1.6 2007-01-20 16:50:47 phintuka Exp $
+ * $Id: cxsocket.c,v 1.7 2007-01-20 17:24:39 phintuka Exp $
*
*/
@@ -187,6 +187,16 @@ ssize_t cxSocket::tx_buffer_free(void)
return (ssize_t)(wmem - size);
}
+int cxSocket::getsockname(struct sockaddr *name, socklen_t *namelen)
+{
+ return ::getsockname(m_fd, name, namelen);
+}
+
+int cxSocket::getpeername(struct sockaddr *name, socklen_t *namelen)
+{
+ return ::getpeername(m_fd, name, namelen);
+}
+
ssize_t cxSocket::send(const void *buf, size_t size, int flags,
const struct sockaddr *to, socklen_t tolen)
{
@@ -347,7 +357,7 @@ uint32_t cxSocket::get_local_address(char *ip_address)
struct sockaddr_in sin;
socklen_t len = sizeof(sin);
- if(!getsockname(m_fd, (struct sockaddr *)&sin, &len)) {
+ if(!getsockname((struct sockaddr *)&sin, &len)) {
local_addr = sin.sin_addr.s_addr;
} else {
diff --git a/tools/cxsocket.h b/tools/cxsocket.h
index 796b94bc..92954f3c 100644
--- a/tools/cxsocket.h
+++ b/tools/cxsocket.h
@@ -4,7 +4,7 @@
* See the main source file 'xineliboutput.c' for copyright information and
* how to reach the author.
*
- * $Id: cxsocket.h,v 1.19 2007-01-20 16:50:47 phintuka Exp $
+ * $Id: cxsocket.h,v 1.20 2007-01-20 17:24:40 phintuka Exp $
*
*/
@@ -80,6 +80,9 @@ class cxSocket {
bool set_nodelay(bool state);
ssize_t tx_buffer_size(void);
ssize_t tx_buffer_free(void);
+ int getsockname(struct sockaddr *name, socklen_t *namelen);
+ int getpeername(struct sockaddr *name, socklen_t *namelen);
+
bool connect(struct sockaddr *addr, socklen_t len);
bool connect(const char *ip, int port);