summaryrefslogtreecommitdiff
path: root/AudioManagerDaemon/src/CAmTelnetServer.cpp
diff options
context:
space:
mode:
authorchristian mueller <christian.ei.mueller@bmw.de>2012-05-03 14:40:20 +0200
committerchristian mueller <christian.ei.mueller@bmw.de>2012-05-24 13:40:22 +0200
commit6681a98594680fe6ab15abeeb0ea915c44d7ad6a (patch)
treeb1dbb1d46a5019963d4061fb4463032ef4deb09d /AudioManagerDaemon/src/CAmTelnetServer.cpp
parentbfafb8c4ded216a2cae6e376e69c9bc2dca117e6 (diff)
downloadaudiomanager-6681a98594680fe6ab15abeeb0ea915c44d7ad6a.tar.gz
* [GAM-74] resolving issues found by coverity scan
Signed-off-by: christian mueller <christian.ei.mueller@bmw.de>
Diffstat (limited to 'AudioManagerDaemon/src/CAmTelnetServer.cpp')
-rw-r--r--AudioManagerDaemon/src/CAmTelnetServer.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/AudioManagerDaemon/src/CAmTelnetServer.cpp b/AudioManagerDaemon/src/CAmTelnetServer.cpp
index 3af05af..ed28f9c 100644
--- a/AudioManagerDaemon/src/CAmTelnetServer.cpp
+++ b/AudioManagerDaemon/src/CAmTelnetServer.cpp
@@ -69,6 +69,7 @@ CAmTelnetServer::CAmTelnetServer(CAmSocketHandler *iSocketHandler, CAmCommandSen
//setup the port Listener
mConnectFD = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
+ assert (mConnectFD>0);
setsockopt(mConnectFD, SOL_SOCKET, SO_REUSEADDR, &yes, sizeof(int));
memset(&servAddr, 0, sizeof(servAddr));
servAddr.sin_family = AF_INET;
@@ -107,6 +108,8 @@ void CAmTelnetServer::connectSocket(const pollfd pfd, const sh_pollHandle_t hand
connection.handle = 0;
connection.filedescriptor = accept(pfd.fd, (struct sockaddr*) &answer, &len);
+ assert(connection.filedescriptor>0);
+
// Notiy menuhelper
mTelnetMenuHelper.newSocketConnection(connection.filedescriptor);
@@ -167,6 +170,11 @@ bool CAmTelnetServer::dispatchData(const sh_pollHandle_t handle, void *userData)
if (iterator->handle == handle)
break;
}
+ if (iterator==mListConnections.end())
+ {
+ logError("CAmTelnetServer::dispatchData could not find handle !");
+ return (false);
+ }
std::string command;
std::queue<std::string> MsgQueue;
@@ -174,9 +182,12 @@ bool CAmTelnetServer::dispatchData(const sh_pollHandle_t handle, void *userData)
{
sliceCommand(mListMessages.front(), command, MsgQueue);
mListMessages.pop();
+ mTelnetMenuHelper.enterCmdQueue(MsgQueue, iterator->filedescriptor);
+ }
+ else
+ {
+ logError("CAmTelnetServer::dispatchData Message queue was empty!");
}
-
- mTelnetMenuHelper.enterCmdQueue(MsgQueue, iterator->filedescriptor);
// must return false to stop endless polling
return (false);