babeld: address some other compilation warnings.
diff --git a/babeld/babel_interface.c b/babeld/babel_interface.c
index ff9c5eb..4bd4499 100644
--- a/babeld/babel_interface.c
+++ b/babeld/babel_interface.c
@@ -61,7 +61,7 @@
 static int babel_if_new_hook    (struct interface *ifp);
 static int babel_if_delete_hook (struct interface *ifp);
 static int interface_config_write (struct vty *vty);
-static babel_interface_nfo * babel_interface_allocate ();
+static babel_interface_nfo * babel_interface_allocate (void);
 static void babel_interface_free (babel_interface_nfo *bi);
 
 
@@ -738,7 +738,7 @@
 /* functions to allocate or free memory for a babel_interface_nfo, filling
  needed fields */
 static babel_interface_nfo *
-babel_interface_allocate ()
+babel_interface_allocate (void)
 {
     babel_interface_nfo *babel_ifp;
     babel_ifp = XMALLOC(MTYPE_BABEL_IF, sizeof(babel_interface_nfo));
diff --git a/babeld/neighbour.c b/babeld/neighbour.c
index 43da8e0..f360b89 100644
--- a/babeld/neighbour.c
+++ b/babeld/neighbour.c
@@ -217,13 +217,13 @@
 
     delay = timeval_minus_msec(&babel_now, &neigh->ihu_time);
 
-    if(neigh->ihu_interval > 0 && delay < neigh->ihu_interval * 10 * 3)
+    if(neigh->ihu_interval > 0 && delay < neigh->ihu_interval * 10U * 3U)
         return 0;
 
     /* If we're losing a lot of packets, we probably lost an IHU too */
     if(delay >= 180000 || (neigh->reach & 0xFFF0) == 0 ||
        (neigh->ihu_interval > 0 &&
-        delay >= neigh->ihu_interval * 10 * 10)) {
+        delay >= neigh->ihu_interval * 10U * 10U)) {
         neigh->txcost = INFINITY;
         neigh->ihu_time = babel_now;
         return 1;
@@ -266,9 +266,9 @@
         update_neighbour_metric(neigh, changed);
 
         if(neigh->hello_interval > 0)
-            msecs = MIN(msecs, neigh->hello_interval * 10);
+            msecs = MIN(msecs, neigh->hello_interval * 10U);
         if(neigh->ihu_interval > 0)
-            msecs = MIN(msecs, neigh->ihu_interval * 10);
+            msecs = MIN(msecs, neigh->ihu_interval * 10U);
         neigh = neigh->next;
     }
 
diff --git a/babeld/route.h b/babeld/route.h
index dbb205d..e38f157 100644
--- a/babeld/route.h
+++ b/babeld/route.h
@@ -52,7 +52,7 @@
     short installed;
 };
 
-static inline int
+static inline unsigned short
 route_metric(const struct babel_route *route)
 {
     return route->metric;
diff --git a/babeld/util.h b/babeld/util.h
index d653b61..4e7635f 100644
--- a/babeld/util.h
+++ b/babeld/util.h
@@ -42,10 +42,10 @@
 #include "log.h"
 
 #if defined(i386) || defined(__mc68020__) || defined(__x86_64__)
-#define DO_NTOHS(_d, _s) do { _d = ntohs(*(unsigned short*)(_s)); } while(0)
-#define DO_NTOHL(_d, _s) do { _d = ntohl(*(unsigned*)(_s)); } while(0)
-#define DO_HTONS(_d, _s) do { *(unsigned short*)(_d) = htons(_s); } while(0)
-#define DO_HTONL(_d, _s) do { *(unsigned*)(_d) = htonl(_s); } while(0)
+#define DO_NTOHS(_d, _s) do{ _d = ntohs(*(const unsigned short*)(_s)); }while(0)
+#define DO_NTOHL(_d, _s) do{ _d = ntohl(*(const unsigned*)(_s)); } while(0)
+#define DO_HTONS(_d, _s) do{ *(unsigned short*)(_d) = htons(_s); } while(0)
+#define DO_HTONL(_d, _s) do{ *(unsigned*)(_d) = htonl(_s); } while(0)
 /* Some versions of gcc seem to be buggy, and ignore the packed attribute.
    Disable this code until the issue is clarified. */
 /* #elif defined __GNUC__*/