From 4a2c0d5a618732bf5fc87a6b894351f90e485735 Mon Sep 17 00:00:00 2001 From: Laurent Ghigonis Date: Fri, 30 Nov 2012 14:35:19 +0100 Subject: update after libglouglou gg_packet API break --- gg_trackproc/gg_trackproc.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/gg_trackproc/gg_trackproc.c b/gg_trackproc/gg_trackproc.c index ba06e7d..3e694f7 100644 --- a/gg_trackproc/gg_trackproc.c +++ b/gg_trackproc/gg_trackproc.c @@ -169,6 +169,7 @@ void cb_nl(evutil_socket_t fd, short what, void *arg) return; } + pkt.type = 0; pkt.ver = PACKET_VERSION; /* see /usr/include/linux/cn_proc.h for struct proc_event */ switch (nlcn_msg.proc_ev.what) { @@ -195,11 +196,11 @@ void cb_nl(evutil_socket_t fd, short what, void *arg) cmd, nlcn_msg.proc_ev.event_data.fork.parent_pid, nlcn_msg.proc_ev.event_data.fork.child_pid); - pkt.type = PACKET_PROC_FORK; - pkt.proc_pid = htonl(nlcn_msg.proc_ev.event_data.fork.parent_pid); - pkt.proc_fork_ppid = htonl(nlcn_msg.proc_ev.event_data.fork.parent_pid); - pkt.proc_fork_cpid = htonl(nlcn_msg.proc_ev.event_data.fork.child_pid); - pkt.proc_fork_tgid = htonl(nlcn_msg.proc_ev.event_data.fork.child_tgid); + pkt.type = PACKET_FORK; + pkt.fork_pid = nlcn_msg.proc_ev.event_data.fork.parent_pid; + pkt.fork_ppid = nlcn_msg.proc_ev.event_data.fork.parent_pid; + pkt.fork_cpid = nlcn_msg.proc_ev.event_data.fork.child_pid; + pkt.fork_tgid = nlcn_msg.proc_ev.event_data.fork.child_tgid; break; case PROC_EVENT_EXEC: @@ -209,10 +210,10 @@ void cb_nl(evutil_socket_t fd, short what, void *arg) get_current_date(), nlcn_msg.proc_ev.event_data.exec.process_pid, cmd); - pkt.type = PACKET_PROC_EXEC; - pkt.proc_pid = htonl(nlcn_msg.proc_ev.event_data.fork.parent_pid); - pkt.proc_exec_cmdlen = htons(strnlen(cmd, GG_PKTARG_MAX)); - strncpy((char *)pkt.proc_exec_cmd, cmd, GG_PKTARG_MAX); + pkt.type = PACKET_EXEC; + pkt.exec_pid = nlcn_msg.proc_ev.event_data.fork.parent_pid; + pkt.exec_cmdlen = strnlen(cmd, GG_PKTARG_MAX); + strncpy((char *)pkt.exec_cmd, cmd, GG_PKTARG_MAX); break; #if 0 case PROC_EVENT_UID: @@ -244,7 +245,8 @@ void cb_nl(evutil_socket_t fd, short what, void *arg) #endif } - gg_client_send(ggcli, &pkt); + if (pkt.type != 0) + gg_client_send(ggcli, &pkt); } static void on_sigint(int unused) @@ -261,6 +263,8 @@ int main(int argc, const char *argv[]) signal(SIGINT, &on_sigint); siginterrupt(SIGINT, true); + // XXX parse -v gg_verbosity_set(2); + ev_base = event_base_new(); ggcli = gg_client_connect(ev_base, "127.0.0.1", GLOUGLOU_PROBE_DEFAULT_PORT, NULL, NULL, NULL); -- cgit v1.2.3-59-g8ed1b