Fix: destroy session removes the default config file
[lttng-tools.git] / src / bin / lttng / utils.c
index b40465b38ebef7d987381ad82a5353524ef57a7a..be020befce3717ba9c65a4245f1fadfc991b9586 100644 (file)
@@ -37,13 +37,8 @@ static const char *str_kernel = "Kernel";
 static const char *str_ust = "UST";
 static const char *str_jul = "JUL";
 
-/*
- *  get_session_name
- *
- *  Return allocated string with the session name found in the config
- *  directory.
- */
-char *get_session_name(void)
+static
+char *_get_session_name(int quiet)
 {
        char *path, *session_name = NULL;
 
@@ -54,7 +49,8 @@ char *get_session_name(void)
        }
 
        /* Get session name from config */
-       session_name = config_read_session_name(path);
+       session_name = quiet ? config_read_session_name_quiet(path) :
+               config_read_session_name(path);
        if (session_name == NULL) {
                goto error;
        }
@@ -67,6 +63,28 @@ error:
        return NULL;
 }
 
+/*
+ *  get_session_name
+ *
+ *  Return allocated string with the session name found in the config
+ *  directory.
+ */
+char *get_session_name(void)
+{
+       return _get_session_name(0);
+}
+
+/*
+ *  get_session_name_quiet (no warnings/errors emitted)
+ *
+ *  Return allocated string with the session name found in the config
+ *  directory.
+ */
+char *get_session_name_quiet(void)
+{
+       return _get_session_name(1);
+}
+
 /*
  *  list_commands
  *
@@ -341,7 +359,8 @@ int check_relayd(void)
        fd = socket(AF_INET, SOCK_STREAM, 0);
        if (fd < 0) {
                perror("socket check relayd");
-               goto error;
+               ret = -1;
+               goto error_socket;
        }
 
        sin.sin_family = AF_INET;
@@ -349,6 +368,7 @@ int check_relayd(void)
        ret = inet_pton(sin.sin_family, "127.0.0.1", &sin.sin_addr);
        if (ret < 1) {
                perror("inet_pton check relayd");
+               ret = -1;
                goto error;
        }
 
@@ -365,8 +385,10 @@ int check_relayd(void)
                ret = 1;
        }
 
-       return ret;
-
 error:
-       return -1;
+       if (close(fd) < 0) {
+               perror("close relayd fd");
+       }
+error_socket:
+       return ret;
 }
This page took 0.024028 seconds and 4 git commands to generate.