Port: Remove _GNU_SOURCE, defined in config.h
[lttng-tools.git] / src / bin / lttng / commands / track-untrack.c
index b3139c6931998003757d797991258881b79d02f9..a4f4689e7457c226821280778aff330fdc376434 100644 (file)
@@ -16,7 +16,6 @@
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#define _GNU_SOURCE
 #define _LGPL_SOURCE
 #include <ctype.h>
 #include <popt.h>
@@ -26,6 +25,7 @@
 #include <sys/stat.h>
 #include <sys/types.h>
 #include <unistd.h>
+#include <assert.h>
 
 #include <urcu/list.h>
 
@@ -208,14 +208,14 @@ enum cmd_error_code track_untrack_pid(enum cmd_type cmd_type, const char *cmd_st
        int nr_pids;
        struct lttng_domain dom;
        struct lttng_handle *handle = NULL;
-       int (*lib_func)(struct lttng_handle *handle, int pid);
+       int (*cmd_func)(struct lttng_handle *handle, int pid);
 
        switch (cmd_type) {
        case CMD_TRACK:
-               lib_func = lttng_track_pid;
+               cmd_func = lttng_track_pid;
                break;
        case CMD_UNTRACK:
-               lib_func = lttng_untrack_pid;
+               cmd_func = lttng_untrack_pid;
                break;
        default:
                ERR("Unknown command");
@@ -229,9 +229,8 @@ enum cmd_error_code track_untrack_pid(enum cmd_type cmd_type, const char *cmd_st
        } else if (opt_userspace) {
                dom.type = LTTNG_DOMAIN_UST;
        } else {
-               print_missing_domain();
-               ret = CMD_ERROR;
-               goto end;
+               /* Checked by the caller. */
+               assert(0);
        }
 
        ret = parse_pid_string(pid_string, all, &pid_list, &nr_pids);
@@ -259,7 +258,7 @@ enum cmd_error_code track_untrack_pid(enum cmd_type cmd_type, const char *cmd_st
 
        for (i = 0; i < nr_pids; i++) {
                DBG("%s PID %d", cmd_str, pid_list[i]);
-               ret = lib_func(handle, pid_list[i]);
+               ret = cmd_func(handle, pid_list[i]);
                if (ret) {
                        switch (-ret) {
                        case LTTNG_ERR_PID_TRACKED:
@@ -381,10 +380,9 @@ int cmd_track_untrack(enum cmd_type cmd_type, const char *cmd_str,
                }
        }
 
-       if (!(opt_userspace ^ opt_kernel)) {
-               ERR("Exactly one of -u or -k needs to be specified.");
-               usage(stderr, cmd_str);
-               command_ret = CMD_ERROR;
+       ret = print_missing_or_multiple_domains(opt_kernel + opt_userspace);
+       if (ret) {
+               ret = CMD_ERROR;
                goto end;
        }
 
This page took 0.023604 seconds and 4 git commands to generate.