+static void
+vt_sigs_handler (int signum, siginfo_t *si, void *uc)
+{
+ vcl_test_client_main_t *vcm = &vcl_client_main;
+ vcl_test_session_t *ctrl = &vcm->ctrl_session;
+
+ vcm->test_running = 0;
+ clock_gettime (CLOCK_REALTIME, &ctrl->stats.stop);
+}
+
+static void
+vt_incercept_sigs (void)
+{
+ struct sigaction sa;
+
+ memset (&sa, 0, sizeof (sa));
+ sa.sa_sigaction = vt_sigs_handler;
+ sa.sa_flags = SA_SIGINFO;
+ if (sigaction (SIGINT, &sa, 0))
+ {
+ vtwrn ("couldn't intercept sigint");
+ exit (-1);
+ }
+}
+