olsr_exit() has only one parameter.
authorL. Aaron Kaplan <aaron@lo-res.org>
Sun, 8 Feb 2009 20:43:42 +0000 (21:43 +0100)
committerL. Aaron Kaplan <aaron@lo-res.org>
Sun, 8 Feb 2009 20:43:42 +0000 (21:43 +0100)
And the scheduler functions should also work on os x , *BSD

src/main.c
src/scheduler.c

index 69803cf..16edb19 100644 (file)
@@ -250,8 +250,8 @@ main(int argc, char *argv[])
 #if defined __FreeBSD__ || defined __MacOSX__ || defined __NetBSD__ || defined __OpenBSD__
   olsr_cnf->rts_bsd = socket(PF_ROUTE, SOCK_RAW, 0);
   if (olsr_cnf->rts_bsd < 0) {
-    olsr_syslog(OLSR_LOG_ERR, "routing socket: %m");
-    olsr_exit(__func__, 0);
+       OLSR_ERROR(LOG_MAIN, "routing socket: %s\n", strerror(errno));
+       olsr_exit(EXIT_FAILURE);
   }
 #endif
 
index 1ce8ce8..c476889 100644 (file)
@@ -466,18 +466,16 @@ olsr_init_timers(void)
    * If not using linux, errors may be returned, e.g.
    * the mandatory output buffer is not kernel-writeable
    */
-  if ((clock_t)-1 == now_times) {
-    const char * const err_msg = strerror(errno);
-    olsr_syslog(OLSR_LOG_ERR, "Error in times(): %s, sleeping for a second", err_msg);
-    OLSR_PRINTF(1, "Error in times(): %s, sleeping for a second", err_msg);
-    sleep(1);
-    now_times = olsr_times();
-    if ((clock_t)-1 == now_times) {
-      olsr_syslog(OLSR_LOG_ERR, "Shutting down because times() does not work");
-      fprintf(stderr, "Shutting down because times() does not work\n");
-      exit(EXIT_FAILURE);
-    }
-  }
+       if ((clock_t)-1 == now_times) {
+               const char * const err_msg = strerror(errno);
+               OLSR_WARN(LOG_SCHEDULER, "Error in times(): %s, sleeping for a second", err_msg);
+               sleep(1);
+               now_times = olsr_times();
+               if ((clock_t)-1 == now_times) {
+                               OLSR_ERROR(LOG_SCHEDULER, "Shutting down because times() does not work");
+                       exit(EXIT_FAILURE);
+               }
+       }
 #endif
 
   for (idx = 0; idx < TIMER_WHEEL_SLOTS; idx++) {