summaryrefslogtreecommitdiff
path: root/src/daemon/dlt_daemon_socket.c
diff options
context:
space:
mode:
authorAlexander Wenzel <Alexander.AW.Wenzel@bmw.de>2013-12-19 10:18:03 +0100
committerAlexander Wenzel <Alexander.AW.Wenzel@bmw.de>2014-01-10 07:16:14 +0100
commit9b74a8457aaa9b282cf79427a713b907635d82a2 (patch)
treee09145e56abd101db80657f52ef79918ce0aa86d /src/daemon/dlt_daemon_socket.c
parent8029c1387c240fcd085be13f38d9adadc97c03bf (diff)
downloadDLT-daemon-9b74a8457aaa9b282cf79427a713b907635d82a2.tar.gz
Cleanup of send return values. Further cleanup of send restructure.
Signed-off-by: Alexander Wenzel <Alexander.AW.Wenzel@bmw.de>
Diffstat (limited to 'src/daemon/dlt_daemon_socket.c')
-rw-r--r--src/daemon/dlt_daemon_socket.c24
1 files changed, 20 insertions, 4 deletions
diff --git a/src/daemon/dlt_daemon_socket.c b/src/daemon/dlt_daemon_socket.c
index 033ea15..1492831 100644
--- a/src/daemon/dlt_daemon_socket.c
+++ b/src/daemon/dlt_daemon_socket.c
@@ -61,6 +61,8 @@
#include <syslog.h>
#include <errno.h>
#include <pthread.h>
+#include <sys/ioctl.h>
+#include <net/if.h>
#include <sys/timerfd.h>
#include <sys/stat.h>
@@ -113,6 +115,10 @@ int dlt_daemon_socket_open(int *sock)
return -1;
} /* if */
+ /* get socket buffer size */
+ sprintf(str,"dlt_daemon_socket_open: Socket send queue size: %d\n",dlt_daemon_socket_get_send_qeue_max_size(*sock));
+ dlt_log(LOG_INFO, str);
+
return 0; /* OK */
}
@@ -129,7 +135,7 @@ int dlt_daemon_socket_send(int sock,void* data1,int size1,void* data2,int size2,
if (serialheader)
{
if ( 0 > send(sock, dltSerialHeader,sizeof(dltSerialHeader),0) )
- return -1;
+ return DLT_DAEMON_ERROR_SEND_FAILED;
}
@@ -137,14 +143,24 @@ int dlt_daemon_socket_send(int sock,void* data1,int size1,void* data2,int size2,
if(data1 && size1>0)
{
if (0 > send(sock, data1,size1,0))
- return -1;
+ return DLT_DAEMON_ERROR_SEND_FAILED;
}
if(data2 && size2>0)
{
if (0 > send(sock, data2,size2,0))
- return -1;
+ return DLT_DAEMON_ERROR_SEND_FAILED;
}
- return 0;
+ return DLT_DAEMON_ERROR_OK;
}
+
+int dlt_daemon_socket_get_send_qeue_max_size(int sock)
+{
+ int n = 0;
+ unsigned int m = sizeof(n);
+ getsockopt(sock,SOL_SOCKET,SO_SNDBUF,(void *)&n, &m);
+
+ return n;
+}
+