summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarco Residori <marco.residori@xse.de>2014-06-25 14:43:33 +0200
committerMarco Residori <marco.residori@xse.de>2014-06-25 14:43:33 +0200
commit7b10b9e1bd22bb66f1e2a39d8f385e94a0ed6a03 (patch)
tree287d589fca590f84bbb1bb45df9561dd5a4f8fbb
parentd65cdc42b3b3b374dff2cb3c4c5b361163429109 (diff)
downloadpositioning-7b10b9e1bd22bb66f1e2a39d8f385e94a0ed6a03.tar.gz
Close socket at shut down
-rw-r--r--enhanced-position-service/src/main.cpp2
-rw-r--r--gnss-service/src/gnss-use-replayer.c9
2 files changed, 8 insertions, 3 deletions
diff --git a/enhanced-position-service/src/main.cpp b/enhanced-position-service/src/main.cpp
index 649d8b3..69c4177 100644
--- a/enhanced-position-service/src/main.cpp
+++ b/enhanced-position-service/src/main.cpp
@@ -47,7 +47,7 @@ int main()
{
DLT_REGISTER_APP("ENHP", "EnhancedPositionService");
DLT_REGISTER_CONTEXT(gCtx,"EPSR", "Global Context");
- LOG_INFO_MSG(gCtx,"starting EnhancedPositionService...");
+ LOG_INFO_MSG(gCtx,"Starting EnhancedPositionService...");
signal(SIGTERM, sighandler);
signal(SIGINT, sighandler);
diff --git a/gnss-service/src/gnss-use-replayer.c b/gnss-service/src/gnss-use-replayer.c
index 39beda1..3145cac 100644
--- a/gnss-service/src/gnss-use-replayer.c
+++ b/gnss-service/src/gnss-use-replayer.c
@@ -46,7 +46,9 @@
pthread_t listenerThread;
pthread_mutex_t mutexCb;
pthread_mutex_t mutexData;
+
bool isRunning = false;
+int s = NULL;
void *listenForMessages( void *ptr );
@@ -55,7 +57,7 @@ DLT_DECLARE_CONTEXT(gContext);
bool gnssInit()
{
isRunning = true;
-
+
if(pthread_create(&listenerThread, NULL, listenForMessages, NULL) != 0)
{
isRunning = false;
@@ -68,6 +70,9 @@ bool gnssInit()
bool gnssDestroy()
{
isRunning = false;
+
+ //shut down the socket
+ shutdown(s,2);
if(listenerThread)
{
@@ -374,7 +379,7 @@ void *listenForMessages( void *ptr )
{
struct sockaddr_in si_me;
struct sockaddr_in si_other;
- int s;
+ //int s;
socklen_t slen = sizeof(si_other);
char buf[BUFLEN];
char msgId[MSGIDLEN];