+/* Copyright (C) 2009 Pierre-Marc Fournier
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#define _GNU_SOURCE
+#include <stdio.h>
#include <unistd.h>
#include <getopt.h>
#include <stdlib.h>
-#include <stdio.h>
#include <fcntl.h>
#include "ustcomm.h"
int take_reply;
};
+char *progname = NULL;
+
+void usage(void)
+{
+ fprintf(stderr, "usage: %s [OPTIONS] COMMAND PID...\n", progname);
+ fprintf(stderr, "\nControl the tracing of a process that supports LTTng Userspace Tracing.\n\
+\n\
+Commands:\n\
+ --start-trace\t\t\tStart tracing\n\
+ --stop-trace\t\t\tStop tracing\n\
+ --destroy-trace\t\t\tDestroy the trace\n\
+ --enable-marker CHANNEL/MARKER\tEnable a marker\n\
+ --disable-marker CHANNEL/MARKER\tDisable a marker\n\
+ --list-markers\tList the markers of the process and their state\n\
+\n\
+");
+}
+
int parse_opts_long(int argc, char **argv, struct ust_opts *opts)
{
int c;
- int digit_optind = 0;
opts->cmd = NULL;
opts->pids = NULL;
opts->take_reply = 0;
while (1) {
- int this_option_optind = optind ? optind : 1;
int option_index = 0;
static struct option long_options[] = {
{"start-trace", 0, 0, 1000},
return 0;
}
-char *progname = NULL;
-
-void usage(void)
-{
- fprintf(stderr, "usage: %s [OPTIONS] COMMAND PID...\n", progname);
- fprintf(stderr, "\nControl the tracing of a process that supports LTTng Userspace Tracing.\n\
-\n\
-Commands:\n\
- --start-trace\t\t\tStart tracing\n\
- --stop-trace\t\t\tStop tracing\n\
- --destroy-trace\t\t\tDestroy the trace\n\
- --enable-marker CHANNEL/MARKER\tEnable a marker\n\
- --disable-marker CHANNEL/MARKER\tDisable a marker\n\
- --list-markers\tList the markers of the process and their state\n\
-\n\
-");
-}
-
int main(int argc, char *argv[])
{
pid_t *pidit;