Added different callback handlers for each event
diff --git a/main.c b/main.c
index 04f6a30..bd443cf 100644
--- a/main.c
+++ b/main.c
@@ -4,18 +4,34 @@
#include "ltrace.h"
/*
+static int count_call =0;
+static int count_ret =0;
+
static void
-callback(Event * ev) {
- printf("\n\tcallback(ev->type=%d)\n", ev->type);
+callback_call(Event * ev) {
+ count_call ++;
+}
+static void
+callback_ret(Event * ev) {
+ count_ret ++;
+}
+
+static void
+endcallback(Event *ev) {
+ printf("%d calls\n%d rets\n",count_call, count_ret);
}
*/
int
main(int argc, char *argv[]) {
ltrace_init(argc, argv);
+
/*
- ltrace_add_callback(callback);
+ ltrace_add_callback(callback_call, EVENT_SYSCALL);
+ ltrace_add_callback(callback_ret, EVENT_SYSRET);
+ ltrace_add_callback(endcallback, EVENT_EXIT);
*/
+
ltrace_main();
return 0;
}