diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ipcpd/normal/main.c | 5 | ||||
| -rw-r--r-- | src/irmd/main.c | 2 | ||||
| -rw-r--r-- | src/lib/dev.c | 5 | 
3 files changed, 9 insertions, 3 deletions
| diff --git a/src/ipcpd/normal/main.c b/src/ipcpd/normal/main.c index 81912614..11ec0938 100644 --- a/src/ipcpd/normal/main.c +++ b/src/ipcpd/normal/main.c @@ -30,6 +30,7 @@  #include <ouroboros/irm.h>  #include <ouroboros/rib.h>  #include <ouroboros/irm_config.h> +#include <ouroboros/errno.h>  #include "addr_auth.h"  #include "ae.h" @@ -45,7 +46,6 @@  #include <stdlib.h>  #include <pthread.h>  #include <string.h> -#include <errno.h>  #include <assert.h>  #include <inttypes.h> @@ -108,7 +108,8 @@ static void * flow_acceptor(void * o)                  fd = flow_accept(&ae_name, &qs);                  if (fd < 0) { -                        log_warn("Flow accept failed."); +                        if (fd != -EIRMD) +                                log_warn("Flow accept failed: %d", fd);                          continue;                  } diff --git a/src/irmd/main.c b/src/irmd/main.c index 74cb8359..2454a9ca 100644 --- a/src/irmd/main.c +++ b/src/irmd/main.c @@ -1888,7 +1888,7 @@ void * mainloop(void * o)                                          (qoscube_t *) &ret_msg.qoscube);                          if (e == NULL) {                                  ret_msg.has_result = true; -                                ret_msg.result = -1; +                                ret_msg.result = -EIRMD;                                  break;                          }                          ret_msg.has_port_id = true; diff --git a/src/lib/dev.c b/src/lib/dev.c index 38f7cddf..4d85a5d9 100644 --- a/src/lib/dev.c +++ b/src/lib/dev.c @@ -402,6 +402,11 @@ int flow_accept(char **     ae_name,          if (recv_msg == NULL)                  return -EIRMD; +        if (recv_msg->has_result) { +                irm_msg__free_unpacked(recv_msg, NULL); +                return -EIRMD; +        } +          if (!recv_msg->has_api || !recv_msg->has_port_id) {                  irm_msg__free_unpacked(recv_msg, NULL);                  return -1; | 
