static ply_event_loop_t *loop;
+static void
+alrm_signal_handler (void)
+{
+ write (1, "times up!\n", sizeof ("times up!\n") - 1);
+ ply_event_loop_exit (loop, 0);
+}
+
static void
usr1_signal_handler (void)
{
ply_event_loop_watch_signal (loop, SIGUSR1,
(ply_event_handler_t)
usr1_signal_handler, NULL);
+ ply_event_loop_watch_signal (loop, SIGALRM,
+ (ply_event_handler_t)
+ alrm_signal_handler, NULL);
ply_event_loop_watch_fd (loop, 0, PLY_EVENT_LOOP_FD_STATUS_HAS_DATA,
(ply_event_handler_t) line_received_handler,
(ply_event_handler_t) line_received_handler,
NULL);
+ alarm (5);
exit_code = ply_event_loop_run (loop);
ply_event_loop_free (loop);