aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPau Espin Pedrol <pespin@sysmocom.de>2018-08-28 16:46:39 +0200
committerPau Espin Pedrol <pespin@sysmocom.de>2018-08-28 16:46:42 +0200
commit493c8e6008f3cd27366b0a007f3b96a05e3df75a (patch)
tree82ef4d7a6435fcc4d34c58ac7ebd2f0ab0394dd1
parentfe6731181c7db6455490c62b3e3f3f051fbdb09f (diff)
ipa: Simplify code in ipa_client_read
By doing this change we remove a duplicated error code path and thus avoid having to maintain an extra code path with function pointers. Change-Id: Ic044894980ae2b882d99eb30d9df50066671d8f3
-rw-r--r--src/input/ipa.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/input/ipa.c b/src/input/ipa.c
index 995d2c3..26bf170 100644
--- a/src/input/ipa.c
+++ b/src/input/ipa.c
@@ -56,17 +56,13 @@ static void ipa_client_read(struct ipa_client_conn *link)
LOGIPA(link, LOGL_DEBUG, "message received\n");
ret = ipa_msg_recv_buffered(ofd->fd, &msg, &link->pending_msg);
- if (ret < 0) {
+ if (ret <= 0) {
if (ret == -EAGAIN)
return;
- if (ret == -EPIPE || ret == -ECONNRESET)
+ else if (ret == -EPIPE || ret == -ECONNRESET)
LOGIPA(link, LOGL_ERROR, "lost connection with server\n");
- ipa_client_conn_close(link);
- if (link->updown_cb)
- link->updown_cb(link, 0);
- return;
- } else if (ret == 0) {
- LOGIPA(link, LOGL_ERROR, "connection closed with server\n");
+ else if (ret == 0)
+ LOGIPA(link, LOGL_ERROR, "connection closed with server\n");
ipa_client_conn_close(link);
if (link->updown_cb)
link->updown_cb(link, 0);