diff options
| author | Richard Nyberg <rnyberg@murmeldjur.se> | 2009-01-10 23:44:26 +0100 |
|---|---|---|
| committer | Richard Nyberg <rnyberg@murmeldjur.se> | 2009-01-11 15:26:54 +0100 |
| commit | 2947896074642c94d9a0805da78046514a12acd0 (patch) | |
| tree | 25e1c40cbba6e5cf8b1f716f54b16cc9f2eed29a | |
| parent | 50a313570f7663a22221cbc871044ec8ee3962e6 (diff) | |
| download | btpd-2947896074642c94d9a0805da78046514a12acd0.tar.gz btpd-2947896074642c94d9a0805da78046514a12acd0.zip | |
Test that the clock is working at start and test for evloop errors.
| -rw-r--r-- | btpd/main.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/btpd/main.c b/btpd/main.c index d4b5511..247e0f7 100644 --- a/btpd/main.c +++ b/btpd/main.c @@ -3,6 +3,7 @@ #include <sys/file.h> #include <err.h> #include <getopt.h> +#include <time.h> static void writepid(int pidfd) @@ -16,6 +17,11 @@ static void setup_daemon(int daemonize, const char *dir, const char *log) { int pidfd; + struct timespec ts; + + if (clock_gettime(CLOCK_MONOTONIC, &ts) != 0) + errx(1, "clock_gettime(CLOCK_MONOTONIC, ...) error (%s).", + strerror(errno)); if (log == NULL) log = "log"; @@ -221,13 +227,14 @@ args_done: setup_daemon(daemonize, dir, log); - evloop_init(); + if (evloop_init() != 0) + btpd_err("Failed to initialize evloop (%s).\n", strerror(errno)); btpd_init(); evloop(); - btpd_err("Unexpected exit from evloop.\n"); + btpd_err("Exit from evloop with error (%s).\n", strerror(errno)); return 1; } |