#define _LIBLTT_H
#include <linux/limits.h>
+#include <asm/types.h>
+#include <linux/netlink.h>
+
+#ifndef NETLINK_LTT
+#define NETLINK_LTT 12
+#endif
+
enum trace_op {
OP_CREATE,
OP_DESTROY,
OP_START,
- OP_STOP
+ OP_STOP,
+ OP_NONE
};
enum trace_mode {
- TRACE_NORMAL,
- TRACE_FLIGHT
+ LTT_TRACE_NORMAL,
+ LTT_TRACE_FLIGHT
};
struct lttctl_handle
{
int fd;
- u_int8_t blocking;
+ //u_int8_t blocking;
struct sockaddr_nl local;
struct sockaddr_nl peer;
};
} args;
} lttctl_peer_msg_t;
+typedef struct lttctl_resp_msg {
+ int err;
+} lttctl_resp_msg_t;
-struct lttctl_handle *lttctl_create_handle(u_int32_t flags);
+struct lttctl_handle *lttctl_create_handle(void);
int lttctl_destroy_handle(struct lttctl_handle *h);
-int lttctl_create_trace(char *name, enum trace_mode mode);
+int lttctl_create_trace(const struct lttctl_handle * handle,
+ char *name, enum trace_mode mode);
-int lttctl_destroy_trace(char *name);
+int lttctl_destroy_trace(const struct lttctl_handle *handle, char *name);
-int lttctl_start(char *name);
+int lttctl_start(const struct lttctl_handle *handle, char *name);
-int lttctl_stop(char *name);
+int lttctl_stop(const struct lttctl_handle *handle, char *name);
#define LTTCTLM_BASE 0x10
#define LTTCTLM_CONTROL (LTTCTLM_BASE + 1) /* LTT control message */