diff options
Diffstat (limited to 'src/tools')
| -rw-r--r-- | src/tools/irm/irm.c | 22 | ||||
| -rw-r--r-- | src/tools/irm/irm_bind_ap.c | 4 | 
2 files changed, 20 insertions, 6 deletions
| diff --git a/src/tools/irm/irm.c b/src/tools/irm/irm.c index 7b2f3331..ce92d3d5 100644 --- a/src/tools/irm/irm.c +++ b/src/tools/irm/irm.c @@ -20,12 +20,15 @@   */  #include <ouroboros/irm.h> -#include <stdio.h> -#include <string.h> +#include <ouroboros/errno.h>  #include "irm_ops.h"  #include "irm_utils.h" +#include <stdio.h> +#include <string.h> +#include <stdlib.h> +  static void usage(void)  {          printf("Usage: irm [OPERATION]\n\n" @@ -71,12 +74,23 @@ static int do_cmd(const char * argv0,          return -1;  } -int main(int argc, char ** argv) { +int main(int argc, char ** argv) +{ +        int ret = 0;          if (argc < 2) {                  usage();                  return -1;          } -        return do_cmd(argv[1], argc - 1, argv + 1); +        ret = do_cmd(argv[1], argc - 1, argv + 1); + +        if (ret == -EIRMD) +                printf("Failed to communicate with the " +                       "Ouroboros IPC Resource Manager daemon.\n"); + +        if (ret) +                exit(EXIT_FAILURE); + +        exit(EXIT_SUCCESS);  } diff --git a/src/tools/irm/irm_bind_ap.c b/src/tools/irm/irm_bind_ap.c index e8e5eb26..a5be5a03 100644 --- a/src/tools/irm/irm_bind_ap.c +++ b/src/tools/irm/irm_bind_ap.c @@ -90,13 +90,13 @@ int do_bind_ap(int argc, char ** argv)          ret = irm_bind_ap(ap_name, name, flags, argc, argv);          if (ret == -ENOENT) {                  printf("%s does not exist.\n", ap_name); -                return -1; +                return ret;          }          if (ret == -EPERM) {                  printf("Cannot execute %s, please check permissions.\n",                          ap_name); -                return -1; +                return ret;          }          if (temp != NULL) | 
