Fix: remove the rundir at the end of the cleanup
[lttng-tools.git] / src / bin / lttng-sessiond / main.c
index 958ff0589e763357187f85f5ace6b5b29707c256..35007b728a10eb9df8c2200167ef5885c99f95ff 100644 (file)
@@ -455,6 +455,11 @@ static void cleanup(void)
        DBG("Removing %s", path);
        (void) unlink(path);
 
+       snprintf(path, PATH_MAX, "%s/%s", rundir,
+                       DEFAULT_LTTNG_SESSIOND_JULPORT_FILE);
+       DBG("Removing %s", path);
+       (void) unlink(path);
+
        /* kconsumerd */
        snprintf(path, PATH_MAX,
                DEFAULT_KCONSUMERD_ERR_SOCK_PATH,
@@ -494,6 +499,7 @@ static void cleanup(void)
        DBG("Removing directory %s", path);
        (void) rmdir(path);
 
+       (void) rmdir(rundir);
        free(rundir);
 
        DBG("Cleaning up all sessions");
@@ -4429,6 +4435,34 @@ error:
        return;
 }
 
+/*
+ * Write JUL TCP port using the rundir.
+ */
+static void write_julport(void)
+{
+       int ret;
+       char path[PATH_MAX];
+
+       assert(rundir);
+
+       ret = snprintf(path, sizeof(path), "%s/"
+                       DEFAULT_LTTNG_SESSIOND_JULPORT_FILE, rundir);
+       if (ret < 0) {
+               PERROR("snprintf julport path");
+               goto error;
+       }
+
+       /*
+        * Create TCP JUL port file in rundir. Return value is of no importance.
+        * The execution will continue even though we are not able to write the
+        * file.
+        */
+       (void) utils_create_pid_file(jul_tcp_port, path);
+
+error:
+       return;
+}
+
 /*
  * main
  */
@@ -4735,6 +4769,7 @@ int main(int argc, char **argv)
        }
 
        write_pidfile();
+       write_julport();
 
        /* Initialize communication library */
        lttcomm_init();
This page took 0.024832 seconds and 5 git commands to generate.