#define _LGPL_SOURCE
#include <getopt.h>
-#include <assert.h>
#include <arpa/inet.h>
#include <fcntl.h>
#include <stdarg.h>
{"sync-before-last-event-touch", required_argument, 0, 'c'},
{"sync-before-exit", required_argument, 0, 'd'},
{"sync-before-exit-touch", required_argument, 0, 'e'},
+ {"emit-end-event", no_argument, 0, 'f'},
{0, 0, 0, 0}
};
int option;
long values[] = { 1, 2, 3 };
char text[10] = "test";
+ char escape[10] = "\\*";
double dbl = 2.0;
float flt = 2222.0;
+ uint32_t net_values[] = { 1, 2, 3 };
int nr_iter = 100, ret = 0, first_event_file_created = 0;
useconds_t nr_usec = 0;
char *after_first_event_file_path = NULL;
char *before_exit_file_path_touch = NULL;
/* Wait on file before exiting */
char *before_exit_file_path = NULL;
+ /* Emit an end event */
+ bool emit_end_event = false;
- while ((option = getopt_long(argc, argv, "i:w:a:b:c:d:",
- long_options, &option_index)) != -1) {
+ for (i = 0; i < 3; i++) {
+ net_values[i] = htonl(net_values[i]);
+ }
+
+ while ((option = getopt_long(argc, argv, "i:w:a:b:c:d:e:f",
+ long_options, &option_index)) != -1) {
switch (option) {
case 'a':
after_first_event_file_path = strdup(optarg);
case 'e':
before_exit_file_path_touch = strdup(optarg);
break;
+ case 'f':
+ emit_end_event = true;
+ break;
case 'i':
nr_iter = atoi(optarg);
break;
}
netint = htonl(i);
tracepoint(tp, tptest, i, netint, values, text,
- strlen(text), dbl, flt);
+ strlen(text), escape, net_values, dbl, flt);
/*
* First loop we create the file if asked to indicate
}
}
+ if (emit_end_event) {
+ tracepoint(tp, end);
+ }
+
if (before_exit_file_path_touch) {
ret = create_file(before_exit_file_path_touch);
if (ret != 0) {