Changed script for gredler coding style
authorSven-Ola Tuecke <sven-ola@gmx.de>
Sun, 23 Nov 2008 15:25:52 +0000 (16:25 +0100)
committerSven-Ola Tuecke <sven-ola@gmx.de>
Sun, 23 Nov 2008 15:25:52 +0000 (16:25 +0100)
292 files changed:
contrib/netsimpcap/src/config.c
contrib/netsimpcap/src/config.h
contrib/netsimpcap/src/debug.h
contrib/netsimpcap/src/netsimpcap.c
contrib/netsimpcap/src/network_tap.c
contrib/netsimpcap/src/network_tap.h
gnu-indent.sh
gui/linux-gtk/src/callbacks.c
gui/linux-gtk/src/common.h
gui/linux-gtk/src/interface.c
gui/linux-gtk/src/interface.h
gui/linux-gtk/src/ipc.c
gui/linux-gtk/src/ipc.h
gui/linux-gtk/src/main.c
gui/linux-gtk/src/main.h
gui/linux-gtk/src/nodes.c
gui/linux-gtk/src/nodes.h
gui/linux-gtk/src/olsr.c
gui/linux-gtk/src/olsr_protocol.h
gui/linux-gtk/src/packet.c
gui/linux-gtk/src/packet.h
gui/linux-gtk/src/pixmaps.h
gui/linux-gtk/src/routes.c
gui/linux-gtk/src/routes.h
gui/win32/Main/Frontend.h
gui/win32/Main/FrontendDlg.h
gui/win32/Main/HnaEntry.h
gui/win32/Main/Ipc.h
gui/win32/Main/MidEntry.h
gui/win32/Main/MprEntry.h
gui/win32/Main/MyDialog1.h
gui/win32/Main/MyDialog2.h
gui/win32/Main/MyDialog3.h
gui/win32/Main/MyDialog4.h
gui/win32/Main/MyEdit.h
gui/win32/Main/MyTabCtrl.h
gui/win32/Main/NodeEntry.h
gui/win32/Main/TrayIcon.h
gui/win32/Shim/shim.c
lib/arprefresh/src/olsrd_arprefresh.c
lib/arprefresh/src/olsrd_arprefresh.h
lib/bmf/src/Address.c
lib/bmf/src/Address.h
lib/bmf/src/Bmf.c
lib/bmf/src/Bmf.h
lib/bmf/src/NetworkInterfaces.c
lib/bmf/src/NetworkInterfaces.h
lib/bmf/src/Packet.c
lib/bmf/src/Packet.h
lib/bmf/src/PacketHistory.c
lib/bmf/src/PacketHistory.h
lib/bmf/src/olsrd_plugin.c
lib/dot_draw/src/olsrd_dot_draw.c
lib/dot_draw/src/olsrd_dot_draw.h
lib/dot_draw/src/olsrd_plugin.c
lib/dyn_gw/src/olsrd_dyn_gw.c
lib/dyn_gw/src/olsrd_dyn_gw.h
lib/dyn_gw/src/olsrd_plugin.c
lib/dyn_gw_plain/src/olsrd_dyn_gw_plain.c
lib/dyn_gw_plain/src/olsrd_dyn_gw_plain.h
lib/httpinfo/src/admin_interface.c
lib/httpinfo/src/admin_interface.h
lib/httpinfo/src/gfx.h
lib/httpinfo/src/olsrd_httpinfo.c
lib/httpinfo/src/olsrd_httpinfo.h
lib/httpinfo/src/olsrd_plugin.c
lib/httpinfo/src/olsrd_plugin.h
lib/mini/src/olsrd_plugin.c
lib/mini/src/olsrd_plugin.h
lib/nameservice/src/compat.c
lib/nameservice/src/compat.h
lib/nameservice/src/mapwrite.c
lib/nameservice/src/mapwrite.h
lib/nameservice/src/nameservice.c
lib/nameservice/src/nameservice.h
lib/nameservice/src/nameservice_msg.h
lib/nameservice/src/olsrd_plugin.c
lib/pgraph/src/olsrd_pgraph.c
lib/pgraph/src/olsrd_pgraph.h
lib/quagga/src/olsrd_plugin.c
lib/quagga/src/quagga.c
lib/quagga/src/quagga.h
lib/quagga/src/quagga/zassert.h
lib/quagga/src/quagga/zebra.h
lib/quagga/test/foo.c
lib/quagga/test/quagga.try1.c
lib/secure/src/md5.c
lib/secure/src/md5.h
lib/secure/src/olsrd_plugin.c
lib/secure/src/olsrd_secure.c
lib/secure/src/olsrd_secure.h
lib/secure/src/secure_messages.h
lib/tas/src/glua.c
lib/tas/src/glua.h
lib/tas/src/glua_ext.c
lib/tas/src/glua_ext.h
lib/tas/src/http.c
lib/tas/src/http.h
lib/tas/src/lib.c
lib/tas/src/lib.h
lib/tas/src/link.h
lib/tas/src/lua/lapi.c
lib/tas/src/lua/lapi.h
lib/tas/src/lua/lauxlib.c
lib/tas/src/lua/lauxlib.h
lib/tas/src/lua/lbaselib.c
lib/tas/src/lua/lcode.c
lib/tas/src/lua/lcode.h
lib/tas/src/lua/ldblib.c
lib/tas/src/lua/ldebug.c
lib/tas/src/lua/ldebug.h
lib/tas/src/lua/ldo.c
lib/tas/src/lua/ldo.h
lib/tas/src/lua/ldump.c
lib/tas/src/lua/lfunc.c
lib/tas/src/lua/lfunc.h
lib/tas/src/lua/lgc.c
lib/tas/src/lua/lgc.h
lib/tas/src/lua/liolib.c
lib/tas/src/lua/llex.c
lib/tas/src/lua/llex.h
lib/tas/src/lua/llimits.h
lib/tas/src/lua/lmathlib.c
lib/tas/src/lua/lmem.c
lib/tas/src/lua/lmem.h
lib/tas/src/lua/loadlib.c
lib/tas/src/lua/lobject.c
lib/tas/src/lua/lobject.h
lib/tas/src/lua/lopcodes.c
lib/tas/src/lua/lopcodes.h
lib/tas/src/lua/lparser.c
lib/tas/src/lua/lparser.h
lib/tas/src/lua/lstate.c
lib/tas/src/lua/lstate.h
lib/tas/src/lua/lstring.c
lib/tas/src/lua/lstring.h
lib/tas/src/lua/lstrlib.c
lib/tas/src/lua/ltable.c
lib/tas/src/lua/ltable.h
lib/tas/src/lua/ltablib.c
lib/tas/src/lua/ltests.c
lib/tas/src/lua/ltm.c
lib/tas/src/lua/ltm.h
lib/tas/src/lua/lua.h
lib/tas/src/lua/lualib.h
lib/tas/src/lua/lundump.c
lib/tas/src/lua/lundump.h
lib/tas/src/lua/lvm.c
lib/tas/src/lua/lvm.h
lib/tas/src/lua/lzio.c
lib/tas/src/lua/lzio.h
lib/tas/src/os_unix.c
lib/tas/src/os_unix.h
lib/tas/src/plugin.c
lib/tas/src/plugin.h
lib/tas/test.c
lib/txtinfo/src/olsrd_plugin.c
lib/txtinfo/src/olsrd_txtinfo.c
lib/txtinfo/src/olsrd_txtinfo.h
src/.indent.pro
src/apm.h
src/bsd/apm.c
src/bsd/kernel_routes.c
src/bsd/net.c
src/build_msg.c
src/build_msg.h
src/cfgparser/cfgfile_gen.c
src/cfgparser/olsrd_conf.c
src/cfgparser/olsrd_conf.h
src/common/avl.c
src/common/avl.h
src/common/list.c
src/common/list.h
src/defs.h
src/duplicate_set.c
src/duplicate_set.h
src/fpm.c
src/fpm.h
src/generate_msg.c
src/generate_msg.h
src/hashing.c
src/hashing.h
src/hna_set.c
src/hna_set.h
src/hysteresis.c
src/hysteresis.h
src/ifnet.h
src/interfaces.c
src/interfaces.h
src/ipc_frontend.c
src/ipc_frontend.h
src/ipcalc.c
src/ipcalc.h
src/kernel_routes.h
src/link_set.c
src/link_set.h
src/linux/apm.c
src/linux/kernel_routes.c
src/linux/link_layer.c
src/linux/net.c
src/log.h
src/lq_mpr.c
src/lq_mpr.h
src/lq_packet.c
src/lq_packet.h
src/lq_plugin.c
src/lq_plugin.h
src/lq_plugin_default_ff.c
src/lq_plugin_default_ff.h
src/lq_plugin_default_float.c
src/lq_plugin_default_float.h
src/lq_plugin_default_fpm.c
src/lq_plugin_default_fpm.h
src/main.c
src/mantissa.c
src/mantissa.h
src/mid_set.c
src/mid_set.h
src/misc.h
src/mpr.c
src/mpr.h
src/mpr_selector_set.c
src/mpr_selector_set.h
src/neighbor_table.c
src/neighbor_table.h
src/net_olsr.c
src/net_olsr.h
src/net_os.h
src/olsr.c
src/olsr.h
src/olsr_cfg.h
src/olsr_cookie.c
src/olsr_cookie.h
src/olsr_protocol.h
src/olsr_spf.c
src/olsr_spf.h
src/olsr_switch/link_rules.c
src/olsr_switch/link_rules.h
src/olsr_switch/main.c
src/olsr_switch/ohs_cmd.c
src/olsr_switch/ohs_cmd.h
src/olsr_switch/olsr_host_switch.h
src/olsr_types.h
src/olsrd_plugin.h
src/packet.c
src/packet.h
src/parser.c
src/parser.h
src/plugin_loader.c
src/plugin_loader.h
src/plugin_util.c
src/plugin_util.h
src/print_packet.c
src/print_packet.h
src/process_package.c
src/process_package.h
src/process_routes.c
src/process_routes.h
src/rebuild_packet.c
src/rebuild_packet.h
src/routing_table.c
src/routing_table.h
src/scheduler.c
src/scheduler.h
src/socket_parser.c
src/socket_parser.h
src/tc_set.c
src/tc_set.h
src/two_hop_neighbor_table.c
src/two_hop_neighbor_table.h
src/unix/ifnet.c
src/unix/log.c
src/unix/misc.c
src/win32/apm.c
src/win32/arpa/inet.h
src/win32/ce/ws2tcpip.h
src/win32/compat.c
src/win32/dlfcn.h
src/win32/ifnet.c
src/win32/kernel_routes.c
src/win32/log.c
src/win32/misc.c
src/win32/net.c
src/win32/net/if.h
src/win32/net/route.h
src/win32/netinet/in.h
src/win32/sys/ioctl.h
src/win32/sys/socket.h
src/win32/sys/time.h
src/win32/sys/times.h
src/win32/sys/utsname.h
src/win32/unistd.h

index e788b34..e0e6541 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * NetsimPcap - a userspace network bridge with simulated packet loss
  *             Copyright 2008 H. Rogge (rogge@fgan.de)
  * @return stripped string
  */
 char *
-stripString (char *str)
+stripString(char *str)
 {
 
   /* strip left whitespaces */
-  while (*str == ' ' || *str == '\t')
-    {
-      str++;
-    }
+  while (*str == ' ' || *str == '\t') {
+    str++;
+  }
 
   /* strip right whitespaces */
-  int i = strlen (str);
-  while (--i >= 0)
-    {
-      if (str[i] == ' ' || str[i] == '\r' || str[i] == '\n' || str[i] == '\t')
-        {
-          str[i] = 0;
-          break;
-        }
+  int i = strlen(str);
+  while (--i >= 0) {
+    if (str[i] == ' ' || str[i] == '\r' || str[i] == '\n' || str[i] == '\t') {
+      str[i] = 0;
+      break;
     }
+  }
 
   return str;
 }
@@ -67,45 +65,39 @@ stripString (char *str)
  * @return 0 if function was successfull, 1 if an error happened
  */
 int
-readConnectionMatrix (float *connectionMatrix, char *filename, int len)
+readConnectionMatrix(float *connectionMatrix, char *filename, int len)
 {
-  FILE *file = fopen (filename, "r");
-  if (!file)
-    {
-      return 1;
-    }
+  FILE *file = fopen(filename, "r");
+  if (!file) {
+    return 1;
+  }
 
   char buffer[1024];
-  while (fgets (buffer, 1024, file))
-    {
-      int from, to;
-      float propability;
+  while (fgets(buffer, 1024, file)) {
+    int from, to;
+    float propability;
 
-      char *line = stripString (buffer);
-      DPRINT ("%s\n", line);
+    char *line = stripString(buffer);
+    DPRINT("%s\n", line);
 
-      if (line[0] == '#' || line[0] == 0)
-        {
-          continue;
-        }
+    if (line[0] == '#' || line[0] == 0) {
+      continue;
+    }
 
-      if (sscanf (line, "%d %d %f", &from, &to, &propability) != 3)
-        {
-          continue;
-        }
+    if (sscanf(line, "%d %d %f", &from, &to, &propability) != 3) {
+      continue;
+    }
 
-      if (from < 0 || from >= len || to < 0 || to >= len || from == to)
-        {
-          continue;
-        }
+    if (from < 0 || from >= len || to < 0 || to >= len || from == to) {
+      continue;
+    }
 
-      connectionMatrix[GRID (from, to, len)] = propability;
-      if (connectionMatrix[GRID (to, from, len)] == 0)
-        {
-          connectionMatrix[GRID (to, from, len)] = propability;
-        }
+    connectionMatrix[GRID(from, to, len)] = propability;
+    if (connectionMatrix[GRID(to, from, len)] == 0) {
+      connectionMatrix[GRID(to, from, len)] = propability;
     }
-  fclose (file);
+  }
+  fclose(file);
   return 0;
 }
 
index 1cf4938..f9775e2 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * NetsimPcap - a userspace network bridge with simulated packet loss
  *             Copyright 2008 H. Rogge (rogge@fgan.de)
@@ -22,7 +23,7 @@
 
 #define GRID(x,y,width) ((x) + (y) * (width))
 
-int readConnectionMatrix (float *connectionMatrix, char *filename, int len);
+int readConnectionMatrix(float *connectionMatrix, char *filename, int len);
 #endif /*CONFIG_H_ */
 
 /*
index 07360a1..9b797f5 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * NetsimPcap - a userspace network bridge with simulated packet loss
  *             Copyright 2008 H. Rogge (rogge@fgan.de)
index c91ff3a..8246d36 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * NetsimPcap - a userspace network bridge with simulated packet loss
  *             Copyright 2008 H. Rogge (rogge@fgan.de)
@@ -67,7 +68,7 @@ u_int8_t mac_bc[6] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
  * to stop
  */
 static void
-signalHandler (int signo __attribute__ ((unused)))
+signalHandler(int signo __attribute__ ((unused)))
 {
   running = 0;
 }
@@ -80,77 +81,61 @@ signalHandler (int signo __attribute__ ((unused)))
  * @param 1 if matrix contains drop-propabilities
  */
 void
-calculateConnections (float *connMatrix, int socketcount, int drop)
+calculateConnections(float *connMatrix, int socketcount, int drop)
 {
 
   /* calculating unicast/broadcast matrix */
-  connUni = malloc (sizeof (u_int32_t) * socketcount * socketcount);
-  memset (connUni, 0, sizeof (u_int32_t) * socketcount * socketcount);
-  connBC = malloc (sizeof (u_int32_t) * socketcount * socketcount);
-  memset (connBC, 0, sizeof (u_int32_t) * socketcount * socketcount);
+  connUni = malloc(sizeof(u_int32_t) * socketcount * socketcount);
+  memset(connUni, 0, sizeof(u_int32_t) * socketcount * socketcount);
+  connBC = malloc(sizeof(u_int32_t) * socketcount * socketcount);
+  memset(connBC, 0, sizeof(u_int32_t) * socketcount * socketcount);
 
   float broadcast, unicast;
   int i, j;
-  for (j = 0; j < socketcount; j++)
-    {
-      for (i = 0; i < socketcount; i++)
-        {
-          float prop = connMatrix[GRID (i, j, socketcount)];
-          if (drop)
-            {
-              prop = 1.0 - prop;
-            }
-          broadcast = prop;
-
-          /* IEEE 802.11 do (normally) up to 4 retransmissions for unicast.
-           * A unicast package is only lost if all of this 5 transmissions
-           * are lost.
-           */
-          prop = 1 - prop;
-          unicast =
-            (1 - prop) * (1 + prop + prop * prop + prop * prop * prop +
-                          prop * prop * prop * prop);
-
-          connBC[GRID (i, j, socketcount)] = (1 << 24) * broadcast;
-          connUni[GRID (i, j, socketcount)] = (1 << 24) * unicast;
-        }
-    }
+  for (j = 0; j < socketcount; j++) {
+    for (i = 0; i < socketcount; i++) {
+      float prop = connMatrix[GRID(i, j, socketcount)];
+      if (drop) {
+        prop = 1.0 - prop;
+      }
+      broadcast = prop;
+
+      /* IEEE 802.11 do (normally) up to 4 retransmissions for unicast.
+       * A unicast package is only lost if all of this 5 transmissions
+       * are lost.
+       */
+      prop = 1 - prop;
+      unicast = (1 - prop) * (1 + prop + prop * prop + prop * prop * prop + prop * prop * prop * prop);
 
-  if (debugMode)
-    {
-      printf ("Connection matrix for unicast:\n");
-      for (j = 0; j < socketcount; j++)
-        {
-          for (i = 0; i < socketcount; i++)
-            {
-              if (i > 0)
-                {
-                  printf (" ");
-                }
-
-              printf ("%1.2f",
-                      (float) connBC[GRID (i, j, socketcount)] /
-                      (float) (1 << 24));
-            }
-          printf ("\n");
+      connBC[GRID(i, j, socketcount)] = (1 << 24) * broadcast;
+      connUni[GRID(i, j, socketcount)] = (1 << 24) * unicast;
+    }
+  }
+
+  if (debugMode) {
+    printf("Connection matrix for unicast:\n");
+    for (j = 0; j < socketcount; j++) {
+      for (i = 0; i < socketcount; i++) {
+        if (i > 0) {
+          printf(" ");
         }
-      printf ("\nConnectionmatrix for broadcast:\n");
-      for (j = 0; j < socketcount; j++)
-        {
-          for (i = 0; i < socketcount; i++)
-            {
-              if (i > 0)
-                {
-                  printf (" ");
-                }
-
-              printf ("%1.2f",
-                      (float) connUni[GRID (i, j, socketcount)] /
-                      (float) (1 << 24));
-            }
-          printf ("\n");
+
+        printf("%1.2f", (float)connBC[GRID(i, j, socketcount)] / (float)(1 << 24));
+      }
+      printf("\n");
+    }
+    printf("\nConnectionmatrix for broadcast:\n");
+    for (j = 0; j < socketcount; j++) {
+      for (i = 0; i < socketcount; i++) {
+        if (i > 0) {
+          printf(" ");
         }
+
+        printf("%1.2f", (float)connUni[GRID(i, j, socketcount)] / (float)(1 << 24));
+      }
+      printf("\n");
     }
+  }
 }
 
 /*
@@ -160,18 +145,16 @@ calculateConnections (float *connMatrix, int socketcount, int drop)
  * (optional) tap device. It retransmits the package to all connected devices.
  */
 void
-tap_callback (void)
+tap_callback(void)
 {
   int len, i;
 
-  len = read (tapFD, buffer, sizeof (buffer));
-  if (len > 0)
-    {
-      for (i = 0; i < deviceCount; i++)
-        {
-          pcap_inject (devices[i], buffer, len);
-        }
+  len = read(tapFD, buffer, sizeof(buffer));
+  if (len > 0) {
+    for (i = 0; i < deviceCount; i++) {
+      pcap_inject(devices[i], buffer, len);
     }
+  }
 }
 
 /*
@@ -185,55 +168,46 @@ tap_callback (void)
  * See libpcap documentation for parameters
  */
 void
-capture_callback (u_char * args, const struct pcap_pkthdr *hdr,
-                  const u_char * packet)
+capture_callback(u_char * args, const struct pcap_pkthdr *hdr, const u_char * packet)
 {
-  int *index = (int *) args;
-  int unicast = memcmp (packet, mac_bc, 6) != 0;
+  int *index = (int *)args;
+  int unicast = memcmp(packet, mac_bc, 6) != 0;
 
   int i, len;
 
   len = hdr->len;
-  memcpy (buffer, packet, len);
-
-  if (tapFD != -1)
-    {
-      int send = 0;
-      while (send < len)
-        {
-          int t = write (tapFD, &buffer[send], len - send);
-          if (t == -1)
-            {
-              printf ("Error while sending to tap device!\n");
-              break;
-            }
-          send += t;
-        }
+  memcpy(buffer, packet, len);
+
+  if (tapFD != -1) {
+    int send = 0;
+    while (send < len) {
+      int t = write(tapFD, &buffer[send], len - send);
+      if (t == -1) {
+        printf("Error while sending to tap device!\n");
+        break;
+      }
+      send += t;
+    }
+  }
+
+  for (i = 0; i < deviceCount; i++) {
+    u_int32_t prop;
+    if (unicast) {
+      prop = connUni[GRID(*index, i, deviceCount)];
+    } else {
+      prop = connBC[GRID(*index, i, deviceCount)];
     }
 
-  for (i = 0; i < deviceCount; i++)
-    {
-      u_int32_t prop;
-      if (unicast)
-        {
-          prop = connUni[GRID (*index, i, deviceCount)];
-        }
-      else
-        {
-          prop = connBC[GRID (*index, i, deviceCount)];
-        }
-
-      if (prop == 0 || prop < (rand () % (1 << 24)))
-        {
-          continue;
-        }
-
-      pcap_inject (devices[i], buffer, len);
+    if (prop == 0 || prop < (rand() % (1 << 24))) {
+      continue;
     }
+
+    pcap_inject(devices[i], buffer, len);
+  }
 }
 
 int
-main (int argc, char **argv)
+main(int argc, char **argv)
 {
   int i;
   int dropPropability = 0;
@@ -244,228 +218,179 @@ main (int argc, char **argv)
   MacAddress mac;
   char *tapname = NULL;
 
-  if (argc == 1 || (argc == 2 && strcmp (argv[1], "--help") == 0))
-    {
-      printf ("%s: [-con <connectionfile>] [-hub] [-debug]"
-              " [-tap <devname> <mac>] [-drop] -dev <dev1> <dev2> <dev3>...\n",
-              argv[0]);
-      return 0;
-    }
+  if (argc == 1 || (argc == 2 && strcmp(argv[1], "--help") == 0)) {
+    printf("%s: [-con <connectionfile>] [-hub] [-debug]" " [-tap <devname> <mac>] [-drop] -dev <dev1> <dev2> <dev3>...\n", argv[0]);
+    return 0;
+  }
 
   deviceCount = 0;
   tapFD = -1;
 
-  for (i = 1; i < argc; i++)
-    {
-      if (strcmp (argv[i], "-con") == 0 && i < argc - 1)
-        {
-          connectionFile = argv[i + 1];
-          i++;
-        }
-      if (strcmp (argv[i], "-drop") == 0)
-        {
-          dropPropability = 1;
-        }
-      if (strcmp (argv[i], "-dev") == 0)
-        {
-          deviceIndex = ++i;
-          while (i < argc && argv[i][0] != '-')
-            {
-              i++;
-              deviceCount++;
-            }
-          i--;                  /* to cancel the i++ in the for loop */
-        }
-      if (strcmp (argv[i], "-hub") == 0)
-        {
-          hubMode = 1;
-        }
-      if (strcmp (argv[i], "-tap") == 0 && i < argc - 2)
-        {
-          tapname = argv[++i];
-          readMac (argv[++i], &mac);
-        }
-      if (strcmp (argv[i], "-debug") == 0)
-        {
-          debugMode = 1;
-        }
+  for (i = 1; i < argc; i++) {
+    if (strcmp(argv[i], "-con") == 0 && i < argc - 1) {
+      connectionFile = argv[i + 1];
+      i++;
     }
-
-  if (hubMode == 1 && connectionFile != NULL)
-    {
-      printf ("Error, you cannot set matrix file in hub mode.\n");
-      return 1;
+    if (strcmp(argv[i], "-drop") == 0) {
+      dropPropability = 1;
     }
-
-  if (connectionFile == NULL && hubMode == 0)
-    {
-      printf
-        ("Error, netsim needs a matrix file for connections if not running in hub mode.\n");
-      return 1;
+    if (strcmp(argv[i], "-dev") == 0) {
+      deviceIndex = ++i;
+      while (i < argc && argv[i][0] != '-') {
+        i++;
+        deviceCount++;
+      }
+      i--;                      /* to cancel the i++ in the for loop */
     }
-
-  if (deviceIndex < 0)
-    {
-      printf
-        ("Error, you must specify the devices the programm connects to.\n");
-      return 1;
+    if (strcmp(argv[i], "-hub") == 0) {
+      hubMode = 1;
     }
-
-  if (deviceCount < 2)
-    {
-      printf
-        ("Error, you need to bind at least two devices to the bridge.\n");
-      return 1;
+    if (strcmp(argv[i], "-tap") == 0 && i < argc - 2) {
+      tapname = argv[++i];
+      readMac(argv[++i], &mac);
     }
-
-  if (tapname)
-    {
-      tapFD = createTap (tapname, &mac);
-      if (tapFD == -1)
-        {
-          printf ("Error, cannot open tap device '%s'\n", tapname);
-          return 1;
-        }
-
+    if (strcmp(argv[i], "-debug") == 0) {
+      debugMode = 1;
     }
-  running = 1;
-
-  float *connMatrix = malloc (sizeof (float) * deviceCount * deviceCount);
-  if (!connMatrix)
-    {
-      printf ("Error, not enough memory for mac buffer!");
-      if (tapFD != -1)
-        closeTap (tapFD);
+  }
+
+  if (hubMode == 1 && connectionFile != NULL) {
+    printf("Error, you cannot set matrix file in hub mode.\n");
+    return 1;
+  }
+
+  if (connectionFile == NULL && hubMode == 0) {
+    printf("Error, netsim needs a matrix file for connections if not running in hub mode.\n");
+    return 1;
+  }
+
+  if (deviceIndex < 0) {
+    printf("Error, you must specify the devices the programm connects to.\n");
+    return 1;
+  }
+
+  if (deviceCount < 2) {
+    printf("Error, you need to bind at least two devices to the bridge.\n");
+    return 1;
+  }
+
+  if (tapname) {
+    tapFD = createTap(tapname, &mac);
+    if (tapFD == -1) {
+      printf("Error, cannot open tap device '%s'\n", tapname);
       return 1;
     }
 
-  if (hubMode)
-    {
-      int x, y;
+  }
+  running = 1;
 
-      /*
-       * In hub mode the any-to-any loss factor is 1.0, which
-       * means we can skip reading a matrix file.
-       */
-      for (y = 0; y < deviceCount; y++)
-        {
-          for (x = 0; x < deviceCount; x++)
-            {
-              if (x != y)
-                {
-                  connMatrix[GRID (x, y, deviceCount)] = 1.0;
-                }
-            }
+  float *connMatrix = malloc(sizeof(float) * deviceCount * deviceCount);
+  if (!connMatrix) {
+    printf("Error, not enough memory for mac buffer!");
+    if (tapFD != -1)
+      closeTap(tapFD);
+    return 1;
+  }
+
+  if (hubMode) {
+    int x, y;
+
+    /*
+     * In hub mode the any-to-any loss factor is 1.0, which
+     * means we can skip reading a matrix file.
+     */
+    for (y = 0; y < deviceCount; y++) {
+      for (x = 0; x < deviceCount; x++) {
+        if (x != y) {
+          connMatrix[GRID(x, y, deviceCount)] = 1.0;
         }
+      }
     }
-  else
-    {
-      if (readConnectionMatrix (connMatrix, connectionFile, deviceCount))
-        {
-          printf ("Error while reading matrix file\n");
-          free (connMatrix);
-          if (tapFD != -1)
-            closeTap (tapFD);
-          return 1;
-        }
+  } else {
+    if (readConnectionMatrix(connMatrix, connectionFile, deviceCount)) {
+      printf("Error while reading matrix file\n");
+      free(connMatrix);
+      if (tapFD != -1)
+        closeTap(tapFD);
+      return 1;
     }
-  calculateConnections (connMatrix, deviceCount, dropPropability);
-  free (connMatrix);
+  }
+  calculateConnections(connMatrix, deviceCount, dropPropability);
+  free(connMatrix);
 
   char errbuf[PCAP_ERRBUF_SIZE];
   int maxDeviceFD = 0;
 
-  if (tapFD != -1)
-    {
-      maxDeviceFD = tapFD;
-    }
-  for (i = 0; i < deviceCount; i++)
-    {
-      devices[i] =
-        pcap_open_live (argv[i + deviceIndex], BUFSIZ, 0, -1, errbuf);
-      deviceFD[i] = -1;
-      if (devices[i] == NULL)
-        {
-          printf ("Error, cannot open pcap for device '%s'.\n",
-                  argv[i + deviceIndex]);
-          running = 0;
-        }
-      else
-        {
-          deviceFD[i] = pcap_fileno (devices[i]);
-          if (deviceFD[i] > maxDeviceFD)
-            {
-              maxDeviceFD = deviceFD[i];
-            }
-        }
+  if (tapFD != -1) {
+    maxDeviceFD = tapFD;
+  }
+  for (i = 0; i < deviceCount; i++) {
+    devices[i] = pcap_open_live(argv[i + deviceIndex], BUFSIZ, 0, -1, errbuf);
+    deviceFD[i] = -1;
+    if (devices[i] == NULL) {
+      printf("Error, cannot open pcap for device '%s'.\n", argv[i + deviceIndex]);
+      running = 0;
+    } else {
+      deviceFD[i] = pcap_fileno(devices[i]);
+      if (deviceFD[i] > maxDeviceFD) {
+        maxDeviceFD = deviceFD[i];
+      }
     }
+  }
 
   /* activate signal handling */
-  signal (SIGABRT, &signalHandler);
-  signal (SIGTERM, &signalHandler);
-  signal (SIGQUIT, &signalHandler);
-  signal (SIGINT, &signalHandler);
-
-  while (running)
-    {
-      fd_set socketSet;
-      int socketsReady;
-      struct timeval timeout;
-      timeout.tv_sec = 1;
-      timeout.tv_usec = 0;
-
-      FD_ZERO (&socketSet);
-      for (i = 0; i < deviceCount; i++)
-        {
-          FD_SET (deviceFD[i], &socketSet);
-        }
-      if (tapFD != -1)
-        {
-          FD_SET (tapFD, &socketSet);
-        }
+  signal(SIGABRT, &signalHandler);
+  signal(SIGTERM, &signalHandler);
+  signal(SIGQUIT, &signalHandler);
+  signal(SIGINT, &signalHandler);
+
+  while (running) {
+    fd_set socketSet;
+    int socketsReady;
+    struct timeval timeout;
+    timeout.tv_sec = 1;
+    timeout.tv_usec = 0;
+
+    FD_ZERO(&socketSet);
+    for (i = 0; i < deviceCount; i++) {
+      FD_SET(deviceFD[i], &socketSet);
+    }
+    if (tapFD != -1) {
+      FD_SET(tapFD, &socketSet);
+    }
 
-      socketsReady =
-        select (maxDeviceFD + 1, &socketSet, (fd_set *) 0, (fd_set *) 0,
-                &timeout);
-      if (socketsReady <= 0)
-        {
-          break;
-        }
+    socketsReady = select(maxDeviceFD + 1, &socketSet, (fd_set *) 0, (fd_set *) 0, &timeout);
+    if (socketsReady <= 0) {
+      break;
+    }
 
-      for (i = 0; i < deviceCount; i++)
-        {
-          if (FD_ISSET (deviceFD[i], &socketSet))
-            {
-              int error = pcap_dispatch (devices[i], -1, capture_callback,
-                                         (u_char *) & i);
-
-              if (error == -1)
-                {
-                  printf ("Error during pcap_dispatch for device %s\n",
-                          argv[i + deviceIndex]);
-                  running = 0;
-                  break;
-                }
-            }
-        }
-      if (tapFD != -1 && FD_ISSET (tapFD, &socketSet))
-        {
-          tap_callback ();
+    for (i = 0; i < deviceCount; i++) {
+      if (FD_ISSET(deviceFD[i], &socketSet)) {
+        int error = pcap_dispatch(devices[i], -1, capture_callback,
+                                  (u_char *) & i);
+
+        if (error == -1) {
+          printf("Error during pcap_dispatch for device %s\n", argv[i + deviceIndex]);
+          running = 0;
+          break;
         }
+      }
     }
+    if (tapFD != -1 && FD_ISSET(tapFD, &socketSet)) {
+      tap_callback();
+    }
+  }
 
-  for (i = 0; i < deviceCount; i++)
-    {
-      if (devices[i] != NULL)
-        {
-          pcap_close (devices[i]);
-        }
+  for (i = 0; i < deviceCount; i++) {
+    if (devices[i] != NULL) {
+      pcap_close(devices[i]);
     }
-  free (connUni);
-  free (connBC);
+  }
+  free(connUni);
+  free(connBC);
 
   if (tapFD != -1)
-    closeTap (tapFD);
+    closeTap(tapFD);
   return 0;
 }
 
index f73deb5..8e4075e 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * NetsimPcap - a userspace network bridge with simulated packet loss
  *             Copyright 2008 H. Rogge (rogge@fgan.de)
@@ -54,64 +55,59 @@ char macBroadcast[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
  * @return 0 if successful, 1 for an error
  */
 int
-readMac (char *value, MacAddress * target)
+readMac(char *value, MacAddress * target)
 {
   char buffer[13];
   int index = 0;
 
-  memset (buffer, 0, sizeof (buffer));
+  memset(buffer, 0, sizeof(buffer));
 
   char c;
-  while ((c = *value++))
-    {
-      switch (c)
-        {
-        case '0':
-        case '1':
-        case '2':
-        case '3':
-        case '4':
-        case '5':
-        case '6':
-        case '7':
-        case '8':
-        case '9':
-        case 'a':
-        case 'A':
-        case 'b':
-        case 'B':
-        case 'c':
-        case 'C':
-        case 'd':
-        case 'D':
-        case 'e':
-        case 'E':
-        case 'f':
-        case 'F':
-          if (index > 11)
-            {
-              return 1;
-            }
-          buffer[index++] = c;
-          break;
-        default:
-          break;
-        }
+  while ((c = *value++)) {
+    switch (c) {
+    case '0':
+    case '1':
+    case '2':
+    case '3':
+    case '4':
+    case '5':
+    case '6':
+    case '7':
+    case '8':
+    case '9':
+    case 'a':
+    case 'A':
+    case 'b':
+    case 'B':
+    case 'c':
+    case 'C':
+    case 'd':
+    case 'D':
+    case 'e':
+    case 'E':
+    case 'f':
+    case 'F':
+      if (index > 11) {
+        return 1;
+      }
+      buffer[index++] = c;
+      break;
+    default:
+      break;
     }
+  }
 
-  if (index < 12)
-    {
-      return 1;
-    }
+  if (index < 12) {
+    return 1;
+  }
 
-  for (index = 5; index >= 0; index--)
-    {
-      buffer[index * 2 + 2] = 0;
+  for (index = 5; index >= 0; index--) {
+    buffer[index * 2 + 2] = 0;
 
-      int value;
-      sscanf (&buffer[index], "%x", &value);
-      target->mac[index] = (char) value;
-    }
+    int value;
+    sscanf(&buffer[index], "%x", &value);
+    target->mac[index] = (char)value;
+  }
   return 0;
 }
 
@@ -123,9 +119,9 @@ readMac (char *value, MacAddress * target)
  * @param file destriptor of the tap device
  */
 void
-closeTap (int fd)
+closeTap(int fd)
 {
-  close (fd);
+  close(fd);
 }
 
 /*
@@ -140,7 +136,7 @@ closeTap (int fd)
  * happened
  */
 int
-createTap (char *name, MacAddress * mac)
+createTap(char *name, MacAddress * mac)
 {
   static const char deviceName[] = "/dev/net/tun";
   int etfd;
@@ -149,15 +145,14 @@ createTap (char *name, MacAddress * mac)
   int ioctlSkfd;
   int ioctlres;
 
-  etfd = open (deviceName, O_RDWR);
-  if (etfd < 0)
-    {
-      printf ("Cannot open tap device!\n");
-      return -1;
-    }
+  etfd = open(deviceName, O_RDWR);
+  if (etfd < 0) {
+    printf("Cannot open tap device!\n");
+    return -1;
+  }
 
-  memset (&ifreq, 0, sizeof (ifreq));
-  strncpy (ifreq.ifr_name, name, IFNAMSIZ - 1);
+  memset(&ifreq, 0, sizeof(ifreq));
+  strncpy(ifreq.ifr_name, name, IFNAMSIZ - 1);
   ifreq.ifr_name[IFNAMSIZ - 1] = '\0';  /* Ensures null termination */
 
   /*
@@ -167,69 +162,61 @@ createTap (char *name, MacAddress * mac)
   ifreq.ifr_flags = IFF_TAP;
   ifreq.ifr_flags |= IFF_NO_PI;
 
-  if (ioctl (etfd, TUNSETIFF, (void *) &ifreq) < 0)
-    {
-      close (etfd);
-      printf ("Cannot set tun device type!\n");
-      return -1;
-    }
+  if (ioctl(etfd, TUNSETIFF, (void *)&ifreq) < 0) {
+    close(etfd);
+    printf("Cannot set tun device type!\n");
+    return -1;
+  }
 
-  memset (&ifreq, 0, sizeof (ifreq));
-  strncpy (ifreq.ifr_name, name, IFNAMSIZ - 1);
+  memset(&ifreq, 0, sizeof(ifreq));
+  strncpy(ifreq.ifr_name, name, IFNAMSIZ - 1);
   ifreq.ifr_name[IFNAMSIZ - 1] = '\0';  /* Ensures null termination */
   ifreq.ifr_addr.sa_family = AF_INET;
 
-  ioctlSkfd = socket (PF_INET, SOCK_DGRAM, 0);
-  if (ioctlSkfd < 0)
-    {
-      close (etfd);
-      printf ("Cannot open configuration socket!\n");
-      return -1;
-    }
+  ioctlSkfd = socket(PF_INET, SOCK_DGRAM, 0);
+  if (ioctlSkfd < 0) {
+    close(etfd);
+    printf("Cannot open configuration socket!\n");
+    return -1;
+  }
 
   /* Set hardware address */
   ifreq.ifr_addr.sa_family = ARPHRD_ETHER;
-  memcpy (ifreq.ifr_addr.sa_data, mac, 6);
-  ioctlres = ioctl (ioctlSkfd, SIOCSIFHWADDR, &ifreq);
-  if (ioctlres >= 0)
-    {
-      /* Set hardware broadcast */
-      memcpy (ifreq.ifr_addr.sa_data, macBroadcast, 6);
-      ioctlres = ioctl (ioctlSkfd, SIOCSIFHWBROADCAST, &ifreq);
-      if (ioctlres >= 0)
-        {
-          /* Bring EtherTunTap interface up (if not already) */
-          ifreq.ifr_addr.sa_family = AF_INET;
-          ioctlres = ioctl (ioctlSkfd, SIOCGIFFLAGS, &ifreq);
-          if (ioctlres >= 0)
-            {
-              ifreq.ifr_flags |= (IFF_UP | IFF_RUNNING | IFF_BROADCAST);
-              ioctlres = ioctl (ioctlSkfd, SIOCSIFFLAGS, &ifreq);
-            }
-        }
-    }
-  if (ioctlres < 0)
-    {
-      printf ("Configuration of tun device failed! (%d %s)\n", errno,
-              strerror (errno));
-      close (etfd);
-      close (ioctlSkfd);
-      return -1;
+  memcpy(ifreq.ifr_addr.sa_data, mac, 6);
+  ioctlres = ioctl(ioctlSkfd, SIOCSIFHWADDR, &ifreq);
+  if (ioctlres >= 0) {
+    /* Set hardware broadcast */
+    memcpy(ifreq.ifr_addr.sa_data, macBroadcast, 6);
+    ioctlres = ioctl(ioctlSkfd, SIOCSIFHWBROADCAST, &ifreq);
+    if (ioctlres >= 0) {
+      /* Bring EtherTunTap interface up (if not already) */
+      ifreq.ifr_addr.sa_family = AF_INET;
+      ioctlres = ioctl(ioctlSkfd, SIOCGIFFLAGS, &ifreq);
+      if (ioctlres >= 0) {
+        ifreq.ifr_flags |= (IFF_UP | IFF_RUNNING | IFF_BROADCAST);
+        ioctlres = ioctl(ioctlSkfd, SIOCSIFFLAGS, &ifreq);
+      }
     }
+  }
+  if (ioctlres < 0) {
+    printf("Configuration of tun device failed! (%d %s)\n", errno, strerror(errno));
+    close(etfd);
+    close(ioctlSkfd);
+    return -1;
+  }
 
   /* Set the multicast flag on the interface */
-  memset (&ifreq, 0, sizeof (ifreq));
-  strncpy (ifreq.ifr_name, name, IFNAMSIZ - 1);
+  memset(&ifreq, 0, sizeof(ifreq));
+  strncpy(ifreq.ifr_name, name, IFNAMSIZ - 1);
   ifreq.ifr_name[IFNAMSIZ - 1] = '\0';  /* Ensures null termination */
 
-  ioctlres = ioctl (ioctlSkfd, SIOCGIFFLAGS, &ifreq);
-  if (ioctlres >= 0)
-    {
-      ifreq.ifr_flags |= IFF_MULTICAST;
-      ioctlres = ioctl (ioctlSkfd, SIOCSIFFLAGS, &ifreq);
-    }
+  ioctlres = ioctl(ioctlSkfd, SIOCGIFFLAGS, &ifreq);
+  if (ioctlres >= 0) {
+    ifreq.ifr_flags |= IFF_MULTICAST;
+    ioctlres = ioctl(ioctlSkfd, SIOCSIFFLAGS, &ifreq);
+  }
 
-  close (ioctlSkfd);
+  close(ioctlSkfd);
   return etfd;
 }
 
index 671453c..8acf5e3 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * NetsimPcap - a userspace network bridge with simulated packet loss
  *             Copyright 2008 H. Rogge (rogge@fgan.de)
 
 #include <linux/types.h>
 
-typedef struct MacAddress
-{
+typedef struct MacAddress {
   char mac[6];
 } MacAddress;
 
-int readMac (char *value, MacAddress * target);
-void closeTap (int fd);
-int createTap (char *name, MacAddress * mac);
+int readMac(char *value, MacAddress * target);
+void closeTap(int fd);
+int createTap(char *name, MacAddress * mac);
 
 #endif /*NETWORK_H_ */
 
index 08b98d6..de2b21c 100755 (executable)
@@ -16,7 +16,7 @@ test -x $PWD/${0##*/} || {
 Warning: about to change all files below current working dir
 $PWD
 ************************************************************
-Proceeed (y/N)
+Proceed (y/N)
 EOF
   read l
   test "y" = "$l" || exit 1
@@ -24,5 +24,13 @@ EOF
 
 sed -i 's/Andreas T.\{1,6\}nnesen/Andreas Tonnesen/g;s/Andreas Tønnesen/Andreas Tonnesen/g;s/Andreas Tønmnesen/Andreas Tonnesen/' $(find -type f -not -path "*/.hg*" -not -name ${0##*/})
 sed -i 's/\r//g;s/[      ]\+$//' $(find -name "*.[ch]" -not -path "*/.hg*")
-indent -sob -nhnl -nut $(find -name "*.[ch]" -not -path "*/.hg*")
+
+addon=
+test "--cmp" = "$1" && {
+  # Note: --swallow-optional-blank-lines --ignore-newlines
+  #       to compare two manually formatted source trees.
+  addon=--swallow-optional-blank-lines --ignore-newlines
+}
+indent $(cat ${0%/*}/src/.indent.pro) $addon $(find -name "*.[ch]" -not -path "*/.hg*")
+
 rm $(find -name "*~" -not -path "*/.hg*")
index 64dad33..6eb67ac 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
@@ -24,8 +25,7 @@
 #include "interface.h"
 
 void
-selection_made (GtkWidget * clist, gint row, gint column,
-                GdkEventButton * event, gpointer data)
+selection_made(GtkWidget * clist, gint row, gint column, GdkEventButton * event, gpointer data)
 {
   gchar *ip, *hops, *gw, *dev;
   const gchar text[100];
@@ -33,15 +33,13 @@ selection_made (GtkWidget * clist, gint row, gint column,
    * which was clicked in. We will receive it as a pointer in the
    * argument text.
    */
-  gtk_clist_get_text (GTK_CLIST (clist), row, 0, &ip);
-  gtk_clist_get_text (GTK_CLIST (clist), row, 1, &gw);
-  gtk_clist_get_text (GTK_CLIST (clist), row, 2, &hops);
-  gtk_clist_get_text (GTK_CLIST (clist), row, 3, &dev);
+  gtk_clist_get_text(GTK_CLIST(clist), row, 0, &ip);
+  gtk_clist_get_text(GTK_CLIST(clist), row, 1, &gw);
+  gtk_clist_get_text(GTK_CLIST(clist), row, 2, &hops);
+  gtk_clist_get_text(GTK_CLIST(clist), row, 3, &dev);
 
   /* Just prints some information about the selected row */
-  sprintf ((char *) &text[0],
-           "IP:%s\nGATEWAY:%s\nHOPCOUNT:%s\nINTERFACE:%s\n", ip, gw, hops,
-           dev);
+  sprintf((char *)&text[0], "IP:%s\nGATEWAY:%s\nHOPCOUNT:%s\nINTERFACE:%s\n", ip, gw, hops, dev);
 
   //gtk_text_buffer_set_text (textBuffer, text, -1);
 
@@ -53,8 +51,7 @@ selection_made (GtkWidget * clist, gint row, gint column,
 }
 
 void
-node_selection (GtkWidget * clist, gint row, gint column,
-                GdkEventButton * event, gpointer data)
+node_selection(GtkWidget * clist, gint row, gint column, GdkEventButton * event, gpointer data)
 {
 
   gchar *text;
@@ -68,74 +65,64 @@ node_selection (GtkWidget * clist, gint row, gint column,
   /*
    *Clear the lists
    */
-  gtk_clist_clear (GTK_CLIST (mid_list));
-  gtk_clist_clear (GTK_CLIST (mpr_list));
-  gtk_clist_clear (GTK_CLIST (hna_list));
+  gtk_clist_clear(GTK_CLIST(mid_list));
+  gtk_clist_clear(GTK_CLIST(mpr_list));
+  gtk_clist_clear(GTK_CLIST(hna_list));
   i = 0;
 
   /*
    *Get th IP address
    */
-  gtk_clist_get_text (GTK_CLIST (node_list), row, 0, &text);
+  gtk_clist_get_text(GTK_CLIST(node_list), row, 0, &text);
 
   /* Get the node */
-  if (strncmp (text, "local", sizeof ("local")) == 0)
-    host = find_node_t (&main_addr);
+  if (strncmp(text, "local", sizeof("local")) == 0)
+    host = find_node_t(&main_addr);
   else
-    host = find_node (text);
-
-  if (host)
-    {
-      /* Timeout the registered MPRs for this node */
-      time_out_mprs (&host->addr);
-
-      /* Get mpr pointer AFTER timeout....(another waisted hour...) */
-      mprs = host->mpr.next;
-      mids = host->mid.next;
-      hnas = host->hna.next;
-
-      while (mids != &host->mid)
-        {
-          gtk_clist_append (GTK_CLIST (mid_list), tmpshit);
-          gtk_clist_set_text (GTK_CLIST (mid_list), i, 0,
-                              ip_to_string (&mids->alias));
-          i++;
-          mids = mids->next;
-        }
-
-      i = 0;
-
-      while (mprs != &host->mpr)
-        {
-          //printf("ADDING MPR : %s\n", ip_to_string(&mprs->addr));fflush(stdout);
-          gtk_clist_append (GTK_CLIST (mpr_list), tmpshit);
-          gtk_clist_set_text (GTK_CLIST (mpr_list), i, 0,
-                              ip_to_string (&mprs->addr));
-          i++;
-          mprs = mprs->next;
-        }
-      i = 0;
-
-      while (hnas != &host->hna)
-        {
-          gtk_clist_append (GTK_CLIST (hna_list), tmpshit);
-          gtk_clist_set_text (GTK_CLIST (hna_list), i, 0,
-                              ip_to_string (&hnas->net));
-          i++;
-          hnas = hnas->next;
-        }
+    host = find_node(text);
+
+  if (host) {
+    /* Timeout the registered MPRs for this node */
+    time_out_mprs(&host->addr);
+
+    /* Get mpr pointer AFTER timeout....(another waisted hour...) */
+    mprs = host->mpr.next;
+    mids = host->mid.next;
+    hnas = host->hna.next;
+
+    while (mids != &host->mid) {
+      gtk_clist_append(GTK_CLIST(mid_list), tmpshit);
+      gtk_clist_set_text(GTK_CLIST(mid_list), i, 0, ip_to_string(&mids->alias));
+      i++;
+      mids = mids->next;
+    }
 
+    i = 0;
+
+    while (mprs != &host->mpr) {
+      //printf("ADDING MPR : %s\n", ip_to_string(&mprs->addr));fflush(stdout);
+      gtk_clist_append(GTK_CLIST(mpr_list), tmpshit);
+      gtk_clist_set_text(GTK_CLIST(mpr_list), i, 0, ip_to_string(&mprs->addr));
+      i++;
+      mprs = mprs->next;
     }
-  else
-    {
-      printf ("Could not find info about %s!\n", text);
+    i = 0;
+
+    while (hnas != &host->hna) {
+      gtk_clist_append(GTK_CLIST(hna_list), tmpshit);
+      gtk_clist_set_text(GTK_CLIST(hna_list), i, 0, ip_to_string(&hnas->net));
+      i++;
+      hnas = hnas->next;
     }
 
+  } else {
+    printf("Could not find info about %s!\n", text);
+  }
+
 }
 
 void
-packet_selection (GtkWidget * clist, gint row, gint column,
-                  GdkEventButton * event, gpointer data)
+packet_selection(GtkWidget * clist, gint row, gint column, GdkEventButton * event, gpointer data)
 {
   /* Fetch the packet from the cache */
   union olsr_message *pack;
@@ -145,43 +132,41 @@ packet_selection (GtkWidget * clist, gint row, gint column,
   char *content[4];
   int mem_size = 10;
 
-  content[0] = (char *) malloc (mem_size);
-  content[1] = (char *) malloc (mem_size);
-  content[2] = (char *) malloc (mem_size);
-  content[3] = (char *) malloc (mem_size);
+  content[0] = (char *)malloc(mem_size);
+  content[1] = (char *)malloc(mem_size);
+  content[2] = (char *)malloc(mem_size);
+  content[3] = (char *)malloc(mem_size);
 
-  pack = get_packet (row);
-  packet = (char *) pack;
+  pack = get_packet(row);
+  packet = (char *)pack;
 
   //printf("Got the packet at row %d...\n", row);
 
-  gtk_clist_clear (GTK_CLIST (packet_content_list));
-
-  size = ntohs (pack->v4.olsr_msgsize);
+  gtk_clist_clear(GTK_CLIST(packet_content_list));
 
-  for (y = 0; y < size; y += 4)
-    {
+  size = ntohs(pack->v4.olsr_msgsize);
 
-      for (x = 0; x < 4; x++)
-        {
-          if (display_dec)
-            sprintf (content[x], "%03i", (u_char) packet[y + x]);       /* Decimal format */
-          else
-            sprintf (content[x], "%02x", (u_char) packet[y + x]);       /* Hex format */
-        }
+  for (y = 0; y < size; y += 4) {
 
-      gtk_clist_append (GTK_CLIST (packet_content_list), content);
+    for (x = 0; x < 4; x++) {
+      if (display_dec)
+        sprintf(content[x], "%03i", (u_char) packet[y + x]);    /* Decimal format */
+      else
+        sprintf(content[x], "%02x", (u_char) packet[y + x]);    /* Hex format */
     }
 
-  free (content[0]);
-  free (content[1]);
-  free (content[2]);
-  free (content[3]);
+    gtk_clist_append(GTK_CLIST(packet_content_list), content);
+  }
+
+  free(content[0]);
+  free(content[1]);
+  free(content[2]);
+  free(content[3]);
 
 }
 
 void
-column_clicked_callback (GtkWidget * list, gint column)
+column_clicked_callback(GtkWidget * list, gint column)
 {
 
   //printf("You pressed %d\n",column);
@@ -192,58 +177,51 @@ column_clicked_callback (GtkWidget * list, gint column)
  *Connect button callback
  */
 void
-connect_callback (GtkWidget * widget, gpointer data)
+connect_callback(GtkWidget * widget, gpointer data)
 {
-  ipc_connect ();
+  ipc_connect();
 }
 
 /*
  *Packet button callback
  */
 void
-packet_callback (GtkWidget * widget, gpointer data)
+packet_callback(GtkWidget * widget, gpointer data)
 {
-  if (freeze_packets)
-    {
-      freeze_packets = 0;
-      gtk_button_set_label (GTK_BUTTON (packet_button), "Freeze packets");
-    }
-  else
-    {
-      freeze_packets = 1;
-      gtk_button_set_label (GTK_BUTTON (packet_button), "Grab packets");
-    }
+  if (freeze_packets) {
+    freeze_packets = 0;
+    gtk_button_set_label(GTK_BUTTON(packet_button), "Freeze packets");
+  } else {
+    freeze_packets = 1;
+    gtk_button_set_label(GTK_BUTTON(packet_button), "Grab packets");
+  }
 }
 
 /*
  *Packet display button callback
  */
 void
-packet_disp_callback (GtkWidget * widget, gpointer data)
+packet_disp_callback(GtkWidget * widget, gpointer data)
 {
-  if (display_dec)
-    {
-      display_dec = 0;
-      gtk_button_set_label (GTK_BUTTON (packet_disp_button),
-                            "Display decimal");
-    }
-  else
-    {
-      display_dec = 1;
-      gtk_button_set_label (GTK_BUTTON (packet_disp_button), "Display hex");
-    }
+  if (display_dec) {
+    display_dec = 0;
+    gtk_button_set_label(GTK_BUTTON(packet_disp_button), "Display decimal");
+  } else {
+    display_dec = 1;
+    gtk_button_set_label(GTK_BUTTON(packet_disp_button), "Display hex");
+  }
 }
 
 void
-gui_shutdown (GtkObject * object, gpointer user_data)
+gui_shutdown(GtkObject * object, gpointer user_data)
 {
-  printf ("Shutting down...\n");
+  printf("Shutting down...\n");
 
-  if (ipc_close () < 0)
-    printf ("Could not close socket!\n");
+  if (ipc_close() < 0)
+    printf("Could not close socket!\n");
 
-  printf ("BYE-BYE!\n");
-  exit (0);
+  printf("BYE-BYE!\n");
+  exit(0);
 
 }
 
index 6704829..34ab2e8 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
@@ -41,7 +42,7 @@
 #define BUFFSIZE 512
 
 extern int connected;
-extern struct timeval hold_time_nodes;  /* Timeout for all nodes */
+extern struct timeval hold_time_nodes; /* Timeout for all nodes */
 extern struct timeval now;
 
 /* Our address */
@@ -50,7 +51,7 @@ union olsr_ip_addr null_addr;
 
 int ipversion;
 int ipsize;
-char ipv6_buf[100];             /* buffer for IPv6 inet_htop */
+char ipv6_buf[100];                    /* buffer for IPv6 inet_htop */
 
 int nodes_timeout;
 
@@ -62,31 +63,27 @@ extern int timeouts;
  *Node info
  */
 
-struct mid
-{
+struct mid {
   union olsr_ip_addr alias;
   struct mid *next;
   struct mid *prev;
 };
 
-struct hna
-{
+struct hna {
   union olsr_ip_addr net;
   union olsr_ip_addr mask;
   struct hna *next;
   struct hna *prev;
 };
 
-struct mpr
-{
+struct mpr {
   union olsr_ip_addr addr;
   struct timeval timer;
   struct mpr *next;
   struct mpr *prev;
 };
 
-struct node
-{
+struct node {
   union olsr_ip_addr addr;
   union olsr_ip_addr gw_addr;
   int hopcount;
@@ -104,75 +101,74 @@ struct node
  *Interface public
  */
 
-GtkWidget *create_main_window (void);
+GtkWidget *create_main_window(void);
 
-void packet_list_add (char *, char *, char *);
+void packet_list_add(char *, char *, char *);
 
-void route_list_add (char *, char *, char *, char *);
+void route_list_add(char *, char *, char *, char *);
 
-int route_list_del (char *);
+int route_list_del(char *);
 
-void route_list_update (char *);
+void route_list_update(char *);
 
-void set_net_info (gchar *, int);
+void set_net_info(gchar *, int);
 
-void set_net_info_offline ();
+void set_net_info_offline();
 
-void update_nodes_list (struct node *);
+void update_nodes_list(struct node *);
 
-int remove_nodes_list (union olsr_ip_addr *);
+int remove_nodes_list(union olsr_ip_addr *);
 
 /*
  *IPC public
  */
-int ipc_connect ();
+int ipc_connect();
 
-int ipc_close ();
+int ipc_close();
 
-int ipc_read ();
+int ipc_read();
 
-int ipc_send ();
+int ipc_send();
 
-char *ip_to_string (union olsr_ip_addr *);
+char *ip_to_string(union olsr_ip_addr *);
 
-int gui_itoa (int, char *);
+int gui_itoa(int, char *);
 
 /*
  *Packet.c public
  */
 
-int add_packet_to_buffer (union olsr_message *, int);
+int add_packet_to_buffer(union olsr_message *, int);
 
-union olsr_message *get_packet (int);
+union olsr_message *get_packet(int);
 
 /*
  *Nodes.c public
  */
 
-void init_nodes ();
+void init_nodes();
 
-struct node *find_node (char *);
+struct node *find_node(char *);
 
-struct node *find_node_t (union olsr_ip_addr *);
+struct node *find_node_t(union olsr_ip_addr *);
 
-int update_timer_node (union olsr_ip_addr *, olsr_u8_t);
+int update_timer_node(union olsr_ip_addr *, olsr_u8_t);
 
-int add_hna_node (union olsr_ip_addr *, union olsr_ip_addr *,
-                  union olsr_ip_addr *, olsr_u8_t);
+int add_hna_node(union olsr_ip_addr *, union olsr_ip_addr *, union olsr_ip_addr *, olsr_u8_t);
 
-int add_mid_node (union olsr_ip_addr *, union olsr_ip_addr *, olsr_u8_t);
+int add_mid_node(union olsr_ip_addr *, union olsr_ip_addr *, olsr_u8_t);
 
-void init_timer (olsr_u32_t, struct timeval *);
+void init_timer(olsr_u32_t, struct timeval *);
 
-gint time_out_nodes (gpointer);
+gint time_out_nodes(gpointer);
 
-int add_node (union olsr_ip_addr *, olsr_u8_t);
+int add_node(union olsr_ip_addr *, olsr_u8_t);
 
-int add_mpr (union olsr_ip_addr *, union olsr_ip_addr *, struct timeval *);
+int add_mpr(union olsr_ip_addr *, union olsr_ip_addr *, struct timeval *);
 
-int update_timer_mpr (union olsr_ip_addr *, union olsr_ip_addr *, olsr_u8_t);
+int update_timer_mpr(union olsr_ip_addr *, union olsr_ip_addr *, olsr_u8_t);
 
-int time_out_mprs (union olsr_ip_addr *);
+int time_out_mprs(union olsr_ip_addr *);
 
 #endif
 
index 919b145..febb06b 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
@@ -25,6 +26,7 @@
 #include "pixmaps.h"
 
 /* Global widgets */
+
 /* GtkWidget *text1; */
 
 GdkBitmap *mask;
@@ -36,7 +38,7 @@ int node_list_size = 0;
 GtkWidget *main_window;
 
 GtkWidget *
-create_main_window (void)
+create_main_window(void)
 {
   GtkWidget *notebook1;
   GtkWidget *frame3;
@@ -103,75 +105,65 @@ create_main_window (void)
    *The main window
    */
 
-  main_window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
-  gtk_object_set_data (GTK_OBJECT (main_window), "main_window", main_window);
-  gtk_window_set_title (GTK_WINDOW (main_window), (olsrd_version));
-  gtk_window_set_default_size (GTK_WINDOW (main_window), 600, 550);
-  gtk_signal_connect (GTK_OBJECT (main_window), "destroy",
-                      GTK_SIGNAL_FUNC (gui_shutdown),
-                      //GTK_SIGNAL_FUNC(gtk_main_quit),
-                      NULL);
-  gtk_window_set_position (GTK_WINDOW (main_window), GTK_WIN_POS_CENTER);       /* Position window in center */
-  gtk_window_set_policy (GTK_WINDOW (main_window), FALSE, TRUE, TRUE);  /* No user-resizing */
+  main_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+  gtk_object_set_data(GTK_OBJECT(main_window), "main_window", main_window);
+  gtk_window_set_title(GTK_WINDOW(main_window), (olsrd_version));
+  gtk_window_set_default_size(GTK_WINDOW(main_window), 600, 550);
+  gtk_signal_connect(GTK_OBJECT(main_window), "destroy", GTK_SIGNAL_FUNC(gui_shutdown),
+                     //GTK_SIGNAL_FUNC(gtk_main_quit),
+                     NULL);
+  gtk_window_set_position(GTK_WINDOW(main_window), GTK_WIN_POS_CENTER); /* Position window in center */
+  gtk_window_set_policy(GTK_WINDOW(main_window), FALSE, TRUE, TRUE);    /* No user-resizing */
 
   /*
    *Initialize the pixmaps
    */
   unik_logo_gdk =
-    gdk_pixmap_colormap_create_from_xpm_d (NULL,
-                                           gtk_widget_get_colormap
-                                           (main_window), &mask, NULL,
-                                           (gchar **) logo_xpm);
+    gdk_pixmap_colormap_create_from_xpm_d(NULL, gtk_widget_get_colormap(main_window), &mask, NULL, (gchar **) logo_xpm);
 
-  unik_logo = gtk_pixmap_new (unik_logo_gdk, mask);
+  unik_logo = gtk_pixmap_new(unik_logo_gdk, mask);
 
   /*
    *The notebook
    */
 
-  notebook1 = gtk_notebook_new ();
-  gtk_widget_ref (notebook1);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "notebook1", notebook1,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (notebook1);
-  gtk_container_add (GTK_CONTAINER (main_window), notebook1);
+  notebook1 = gtk_notebook_new();
+  gtk_widget_ref(notebook1);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "notebook1", notebook1, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(notebook1);
+  gtk_container_add(GTK_CONTAINER(main_window), notebook1);
 
   /*
    *The first vbox
    */
-  vbox1 = gtk_vbox_new (FALSE, 0);
-  gtk_widget_ref (vbox1);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "vbox1", vbox1,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (vbox1);
+  vbox1 = gtk_vbox_new(FALSE, 0);
+  gtk_widget_ref(vbox1);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "vbox1", vbox1, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(vbox1);
   //gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 1);
-  gtk_container_add (GTK_CONTAINER (notebook1), vbox1);
+  gtk_container_add(GTK_CONTAINER(notebook1), vbox1);
 
   /*
    *The nodes frame
    */
-  frame3 = gtk_frame_new ("Registered nodes:");
-  gtk_widget_ref (frame3);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "frame3", frame3,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (frame3);
-  gtk_box_pack_start (GTK_BOX (vbox1), frame3, TRUE, TRUE, 0);
-  gtk_widget_set_size_request (frame3, -1, 300);
-  gtk_container_set_border_width (GTK_CONTAINER (frame3), 1);
+  frame3 = gtk_frame_new("Registered nodes:");
+  gtk_widget_ref(frame3);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "frame3", frame3, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(frame3);
+  gtk_box_pack_start(GTK_BOX(vbox1), frame3, TRUE, TRUE, 0);
+  gtk_widget_set_size_request(frame3, -1, 300);
+  gtk_container_set_border_width(GTK_CONTAINER(frame3), 1);
 
   /*
    *The scrolled window to contain the node list
    */
 
-  scrolledwindow1 = gtk_scrolled_window_new (NULL, NULL);
-  gtk_widget_ref (scrolledwindow1);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "scrolledwindow1",
-                            scrolledwindow1,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (scrolledwindow1);
-  gtk_container_add (GTK_CONTAINER (frame3), scrolledwindow1);
-  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow1),
-                                  GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
+  scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL);
+  gtk_widget_ref(scrolledwindow1);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "scrolledwindow1", scrolledwindow1, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(scrolledwindow1);
+  gtk_container_add(GTK_CONTAINER(frame3), scrolledwindow1);
+  gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
 
   //gtk_box_pack_start (GTK_BOX (frame3), scrolledwindow1, TRUE, TRUE, 0);
   //gtk_widget_set_usize (scrolledwindow1, -2, 332);
@@ -180,84 +172,71 @@ create_main_window (void)
    *The node list
    */
 
-  node_list = gtk_clist_new (7);
-  gtk_widget_ref (node_list);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "node_list", node_list,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (node_list);
-  gtk_container_add (GTK_CONTAINER (scrolledwindow1), node_list);
-  gtk_clist_set_column_width (GTK_CLIST (node_list), 0, 150);   /* IP */
+  node_list = gtk_clist_new(7);
+  gtk_widget_ref(node_list);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "node_list", node_list, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(node_list);
+  gtk_container_add(GTK_CONTAINER(scrolledwindow1), node_list);
+  gtk_clist_set_column_width(GTK_CLIST(node_list), 0, 150);     /* IP */
   //gtk_clist_set_column_justification(GTK_CLIST(node_list), 0, GTK_JUSTIFY_CENTER);
-  gtk_clist_set_column_width (GTK_CLIST (node_list), 1, 150);   /* gateway */
+  gtk_clist_set_column_width(GTK_CLIST(node_list), 1, 150);     /* gateway */
   //gtk_clist_set_column_justification(GTK_CLIST(node_list), 1, GTK_JUSTIFY_CENTER);
-  gtk_clist_set_column_width (GTK_CLIST (node_list), 2, 50);    /* hopcount */
-  gtk_clist_set_column_justification (GTK_CLIST (node_list), 2,
-                                      GTK_JUSTIFY_CENTER);
-  gtk_clist_set_column_width (GTK_CLIST (node_list), 3, 80);    /* dev */
-  gtk_clist_set_column_justification (GTK_CLIST (node_list), 3,
-                                      GTK_JUSTIFY_CENTER);
-
-  gtk_clist_set_column_width (GTK_CLIST (node_list), 4, 70);    /* timer */
-  gtk_clist_set_column_justification (GTK_CLIST (node_list), 4,
-                                      GTK_JUSTIFY_CENTER);
+  gtk_clist_set_column_width(GTK_CLIST(node_list), 2, 50);      /* hopcount */
+  gtk_clist_set_column_justification(GTK_CLIST(node_list), 2, GTK_JUSTIFY_CENTER);
+  gtk_clist_set_column_width(GTK_CLIST(node_list), 3, 80);      /* dev */
+  gtk_clist_set_column_justification(GTK_CLIST(node_list), 3, GTK_JUSTIFY_CENTER);
+
+  gtk_clist_set_column_width(GTK_CLIST(node_list), 4, 70);      /* timer */
+  gtk_clist_set_column_justification(GTK_CLIST(node_list), 4, GTK_JUSTIFY_CENTER);
   //gtk_clist_set_column_width (GTK_CLIST (node_list), 7, 100); /* last about */
   //gtk_clist_set_column_justification(GTK_CLIST(node_list), 7, GTK_JUSTIFY_CENTER);
 
-  gtk_clist_set_column_width (GTK_CLIST (node_list), 5, 40);    /* MID */
-  gtk_clist_set_column_justification (GTK_CLIST (node_list), 5,
-                                      GTK_JUSTIFY_CENTER);
-  gtk_clist_set_column_width (GTK_CLIST (node_list), 6, 40);    /* HNA */
-  gtk_clist_set_column_justification (GTK_CLIST (node_list), 6,
-                                      GTK_JUSTIFY_CENTER);
+  gtk_clist_set_column_width(GTK_CLIST(node_list), 5, 40);      /* MID */
+  gtk_clist_set_column_justification(GTK_CLIST(node_list), 5, GTK_JUSTIFY_CENTER);
+  gtk_clist_set_column_width(GTK_CLIST(node_list), 6, 40);      /* HNA */
+  gtk_clist_set_column_justification(GTK_CLIST(node_list), 6, GTK_JUSTIFY_CENTER);
 
-  gtk_clist_column_titles_show (GTK_CLIST (node_list));
+  gtk_clist_column_titles_show(GTK_CLIST(node_list));
 
   /*
    *Row selection callback
    */
-  gtk_signal_connect (GTK_OBJECT (node_list), "select_row",
-                      GTK_SIGNAL_FUNC (selection_made), NULL);
+  gtk_signal_connect(GTK_OBJECT(node_list), "select_row", GTK_SIGNAL_FUNC(selection_made), NULL);
 
   /*
    *Column selection callback
    */
-  gtk_signal_connect (GTK_OBJECT (node_list), "click_column",
-                      GTK_SIGNAL_FUNC (column_clicked_callback), NULL);
-
-  node_label1 = gtk_label_new ("Dest");
-  gtk_widget_ref (node_label1);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "IP", node_label1,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (node_label1);
-  gtk_clist_set_column_widget (GTK_CLIST (node_list), 0, node_label1);
-
-  node_label2 = gtk_label_new ("Gateway");
-  gtk_widget_ref (node_label2);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "hops", node_label2,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (node_label2);
-  gtk_clist_set_column_widget (GTK_CLIST (node_list), 1, node_label2);
-
-  node_label3 = gtk_label_new ("Metric");
-  gtk_widget_ref (node_label3);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "info", node_label3,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (node_label3);
-  gtk_clist_set_column_widget (GTK_CLIST (node_list), 2, node_label3);
-
-  node_label4 = gtk_label_new ("Device");
-  gtk_widget_ref (node_label4);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "Device", node_label4,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (node_label4);
-  gtk_clist_set_column_widget (GTK_CLIST (node_list), 3, node_label4);
-
-  node_label7 = gtk_label_new ("Timer");
-  gtk_widget_ref (node_label7);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "LMF", node_label7,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (node_label7);
-  gtk_clist_set_column_widget (GTK_CLIST (node_list), 4, node_label7);
+  gtk_signal_connect(GTK_OBJECT(node_list), "click_column", GTK_SIGNAL_FUNC(column_clicked_callback), NULL);
+
+  node_label1 = gtk_label_new("Dest");
+  gtk_widget_ref(node_label1);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "IP", node_label1, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(node_label1);
+  gtk_clist_set_column_widget(GTK_CLIST(node_list), 0, node_label1);
+
+  node_label2 = gtk_label_new("Gateway");
+  gtk_widget_ref(node_label2);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "hops", node_label2, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(node_label2);
+  gtk_clist_set_column_widget(GTK_CLIST(node_list), 1, node_label2);
+
+  node_label3 = gtk_label_new("Metric");
+  gtk_widget_ref(node_label3);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "info", node_label3, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(node_label3);
+  gtk_clist_set_column_widget(GTK_CLIST(node_list), 2, node_label3);
+
+  node_label4 = gtk_label_new("Device");
+  gtk_widget_ref(node_label4);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "Device", node_label4, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(node_label4);
+  gtk_clist_set_column_widget(GTK_CLIST(node_list), 3, node_label4);
+
+  node_label7 = gtk_label_new("Timer");
+  gtk_widget_ref(node_label7);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "LMF", node_label7, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(node_label7);
+  gtk_clist_set_column_widget(GTK_CLIST(node_list), 4, node_label7);
 
   /*
      node_label8 = gtk_label_new ("LMA");
@@ -268,78 +247,71 @@ create_main_window (void)
      gtk_clist_set_column_widget (GTK_CLIST (node_list), 7, node_label8);
    */
 
-  node_label8 = gtk_label_new ("MID");
-  gtk_widget_ref (node_label8);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "MID", node_label8,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (node_label8);
-  gtk_clist_set_column_widget (GTK_CLIST (node_list), 5, node_label8);
+  node_label8 = gtk_label_new("MID");
+  gtk_widget_ref(node_label8);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "MID", node_label8, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(node_label8);
+  gtk_clist_set_column_widget(GTK_CLIST(node_list), 5, node_label8);
 
-  node_label9 = gtk_label_new ("HNA");
-  gtk_widget_ref (node_label9);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "HNA", node_label9,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (node_label9);
-  gtk_clist_set_column_widget (GTK_CLIST (node_list), 6, node_label9);
+  node_label9 = gtk_label_new("HNA");
+  gtk_widget_ref(node_label9);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "HNA", node_label9, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(node_label9);
+  gtk_clist_set_column_widget(GTK_CLIST(node_list), 6, node_label9);
 
-  gtk_clist_column_titles_active (GTK_CLIST (node_list));
+  gtk_clist_column_titles_active(GTK_CLIST(node_list));
 
-  gtk_widget_show_now (node_list);
+  gtk_widget_show_now(node_list);
 
   /*
    *Row selection callback
    */
-  gtk_signal_connect (GTK_OBJECT (node_list), "select_row",
-                      GTK_SIGNAL_FUNC (node_selection), NULL);
+  gtk_signal_connect(GTK_OBJECT(node_list), "select_row", GTK_SIGNAL_FUNC(node_selection), NULL);
 
   /*
    *The first hbox
    */
-  hbox1 = gtk_hbox_new (FALSE, 0);
-  gtk_widget_ref (hbox1);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "hbox1", hbox1,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (hbox1);
-  gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, FALSE, 0);
+  hbox1 = gtk_hbox_new(FALSE, 0);
+  gtk_widget_ref(hbox1);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "hbox1", hbox1, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(hbox1);
+  gtk_box_pack_start(GTK_BOX(vbox1), hbox1, FALSE, FALSE, 0);
   //gtk_container_add (GTK_CONTAINER (notebook1), hbox1);
-  gtk_container_set_border_width (GTK_CONTAINER (hbox1), 4);
-  gtk_widget_set_size_request (hbox1, -1, 200);
+  gtk_container_set_border_width(GTK_CONTAINER(hbox1), 4);
+  gtk_widget_set_size_request(hbox1, -1, 200);
 
   /*
    *The net-info frame
    */
-  frame4 = gtk_frame_new ("Info:");
-  gtk_widget_ref (frame4);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "frame4", frame4,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (frame4);
-  gtk_box_pack_start (GTK_BOX (hbox1), frame4, TRUE, TRUE, 0);
+  frame4 = gtk_frame_new("Info:");
+  gtk_widget_ref(frame4);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "frame4", frame4, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(frame4);
+  gtk_box_pack_start(GTK_BOX(hbox1), frame4, TRUE, TRUE, 0);
   //gtk_widget_set_size_request(frame4, 200, -1);
-  gtk_container_set_border_width (GTK_CONTAINER (frame4), 1);
+  gtk_container_set_border_width(GTK_CONTAINER(frame4), 1);
 
   /*
    *The net-info hbox
    */
-  net_vbox = gtk_vbox_new (FALSE, 0);
-  gtk_widget_ref (net_vbox);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "net_vbox", net_vbox,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (net_vbox);
-  gtk_container_add (GTK_CONTAINER (frame4), net_vbox);
+  net_vbox = gtk_vbox_new(FALSE, 0);
+  gtk_widget_ref(net_vbox);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "net_vbox", net_vbox, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(net_vbox);
+  gtk_container_add(GTK_CONTAINER(frame4), net_vbox);
 
   /*
    *The net-info label field
    */
-  net_label = gtk_label_new (NULL);
-  gtk_widget_ref (net_label);
-  gtk_misc_set_alignment ((GtkMisc *) net_label, 0, 0);
+  net_label = gtk_label_new(NULL);
+  gtk_widget_ref(net_label);
+  gtk_misc_set_alignment((GtkMisc *) net_label, 0, 0);
   //gtk_label_set_justify((GtkLabel *)net_label,GTK_JUSTIFY_LEFT);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "net_label", net_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "net_label", net_label, (GtkDestroyNotify) gtk_widget_unref);
 
   //set_net_info("Not connected...");
-  gtk_widget_show (net_label);
-  gtk_box_pack_start (GTK_BOX (net_vbox), net_label, TRUE, TRUE, 0);
+  gtk_widget_show(net_label);
+  gtk_box_pack_start(GTK_BOX(net_vbox), net_label, TRUE, TRUE, 0);
 
   //gtk_container_add (GTK_CONTAINER (frame4), net_label);
 
@@ -347,345 +319,294 @@ create_main_window (void)
    *The connect button
    */
 
-  connect_button = gtk_button_new_with_label ("Connect to host");
-  gtk_widget_ref (connect_button);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "connect_button",
-                            connect_button,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  connect_button = gtk_button_new_with_label("Connect to host");
+  gtk_widget_ref(connect_button);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "connect_button", connect_button, (GtkDestroyNotify) gtk_widget_unref);
   /* Connect the "clicked" signal of the button to our callback */
-  gtk_signal_connect (GTK_OBJECT (connect_button), "clicked",
-                      GTK_SIGNAL_FUNC (connect_callback), NULL);
-  gtk_widget_show (connect_button);
-  gtk_box_pack_start (GTK_BOX (net_vbox), connect_button, FALSE, FALSE, 1);
-  gtk_container_set_border_width (GTK_CONTAINER (connect_button), 5);
+  gtk_signal_connect(GTK_OBJECT(connect_button), "clicked", GTK_SIGNAL_FUNC(connect_callback), NULL);
+  gtk_widget_show(connect_button);
+  gtk_box_pack_start(GTK_BOX(net_vbox), connect_button, FALSE, FALSE, 1);
+  gtk_container_set_border_width(GTK_CONTAINER(connect_button), 5);
 
   /*
    *The node MPR info frame
    */
-  mpr_frame = gtk_frame_new ("MPR:");
-  gtk_widget_ref (mpr_frame);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "mpr_frame", mpr_frame,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (mpr_frame);
-  gtk_box_pack_start (GTK_BOX (hbox1), mpr_frame, FALSE, FALSE, 0);
+  mpr_frame = gtk_frame_new("MPR:");
+  gtk_widget_ref(mpr_frame);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "mpr_frame", mpr_frame, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(mpr_frame);
+  gtk_box_pack_start(GTK_BOX(hbox1), mpr_frame, FALSE, FALSE, 0);
   //gtk_widget_set_size_request(mid_frame, 125, -1);
-  gtk_container_set_border_width (GTK_CONTAINER (mpr_frame), 1);
+  gtk_container_set_border_width(GTK_CONTAINER(mpr_frame), 1);
 
   /*
    *The scrolledwindow to contain the MPR node info
    */
-  mpr_scrolledwindow = gtk_scrolled_window_new (NULL, NULL);
-  gtk_widget_ref (mpr_scrolledwindow);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "mpr_scrolledwindow",
-                            mpr_scrolledwindow,
-                            (GtkDestroyNotify) gtk_widget_unref);
-
-  gtk_widget_show (mpr_scrolledwindow);
-  gtk_container_add (GTK_CONTAINER (mpr_frame), mpr_scrolledwindow);
-  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (mpr_scrolledwindow),
-                                  GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
-  gtk_container_set_border_width (GTK_CONTAINER (mpr_scrolledwindow), 3);
+  mpr_scrolledwindow = gtk_scrolled_window_new(NULL, NULL);
+  gtk_widget_ref(mpr_scrolledwindow);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "mpr_scrolledwindow", mpr_scrolledwindow, (GtkDestroyNotify) gtk_widget_unref);
+
+  gtk_widget_show(mpr_scrolledwindow);
+  gtk_container_add(GTK_CONTAINER(mpr_frame), mpr_scrolledwindow);
+  gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(mpr_scrolledwindow), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
+  gtk_container_set_border_width(GTK_CONTAINER(mpr_scrolledwindow), 3);
 
   /*
    *The node MID info frame
    */
-  mid_frame = gtk_frame_new ("MID:");
-  gtk_widget_ref (mid_frame);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "mid_frame", mid_frame,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (mid_frame);
-  gtk_box_pack_start (GTK_BOX (hbox1), mid_frame, FALSE, FALSE, 0);
+  mid_frame = gtk_frame_new("MID:");
+  gtk_widget_ref(mid_frame);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "mid_frame", mid_frame, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(mid_frame);
+  gtk_box_pack_start(GTK_BOX(hbox1), mid_frame, FALSE, FALSE, 0);
   //gtk_widget_set_size_request(mid_frame, 125, -1);
-  gtk_container_set_border_width (GTK_CONTAINER (mid_frame), 1);
+  gtk_container_set_border_width(GTK_CONTAINER(mid_frame), 1);
 
   /*
    *The scrolledwindow to contain the MID node info
    */
-  mid_scrolledwindow = gtk_scrolled_window_new (NULL, NULL);
-  gtk_widget_ref (mid_scrolledwindow);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "mid_scrolledwindow",
-                            mid_scrolledwindow,
-                            (GtkDestroyNotify) gtk_widget_unref);
-
-  gtk_widget_show (mid_scrolledwindow);
-  gtk_container_add (GTK_CONTAINER (mid_frame), mid_scrolledwindow);
-  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (mid_scrolledwindow),
-                                  GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
-  gtk_container_set_border_width (GTK_CONTAINER (mid_scrolledwindow), 3);
+  mid_scrolledwindow = gtk_scrolled_window_new(NULL, NULL);
+  gtk_widget_ref(mid_scrolledwindow);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "mid_scrolledwindow", mid_scrolledwindow, (GtkDestroyNotify) gtk_widget_unref);
+
+  gtk_widget_show(mid_scrolledwindow);
+  gtk_container_add(GTK_CONTAINER(mid_frame), mid_scrolledwindow);
+  gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(mid_scrolledwindow), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
+  gtk_container_set_border_width(GTK_CONTAINER(mid_scrolledwindow), 3);
 
   /*
    *The MPR list
    */
-  mpr_list = gtk_clist_new (1);
-  gtk_widget_ref (mpr_list);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "mpr_list", mpr_list,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (mpr_list);
-  gtk_container_add (GTK_CONTAINER (mpr_scrolledwindow), mpr_list);
-  gtk_clist_set_column_width (GTK_CLIST (mpr_list), 0, 120);    /* IP */
-  gtk_clist_column_titles_hide (GTK_CLIST (mpr_list));
+  mpr_list = gtk_clist_new(1);
+  gtk_widget_ref(mpr_list);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "mpr_list", mpr_list, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(mpr_list);
+  gtk_container_add(GTK_CONTAINER(mpr_scrolledwindow), mpr_list);
+  gtk_clist_set_column_width(GTK_CLIST(mpr_list), 0, 120);      /* IP */
+  gtk_clist_column_titles_hide(GTK_CLIST(mpr_list));
 
   /*
    *The MID list
    */
-  mid_list = gtk_clist_new (1);
-  gtk_widget_ref (mid_list);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "mid_list", mid_list,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (mid_list);
-  gtk_container_add (GTK_CONTAINER (mid_scrolledwindow), mid_list);
-  gtk_clist_set_column_width (GTK_CLIST (mid_list), 0, 120);    /* IP */
-  gtk_clist_column_titles_hide (GTK_CLIST (mid_list));
+  mid_list = gtk_clist_new(1);
+  gtk_widget_ref(mid_list);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "mid_list", mid_list, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(mid_list);
+  gtk_container_add(GTK_CONTAINER(mid_scrolledwindow), mid_list);
+  gtk_clist_set_column_width(GTK_CLIST(mid_list), 0, 120);      /* IP */
+  gtk_clist_column_titles_hide(GTK_CLIST(mid_list));
 
   /*
    *The node HNA info frame
    */
-  hna_frame = gtk_frame_new ("HNA:");
-  gtk_widget_ref (hna_frame);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "hna_frame", hna_frame,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (hna_frame);
-  gtk_box_pack_start (GTK_BOX (hbox1), hna_frame, FALSE, FALSE, 0);
+  hna_frame = gtk_frame_new("HNA:");
+  gtk_widget_ref(hna_frame);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "hna_frame", hna_frame, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(hna_frame);
+  gtk_box_pack_start(GTK_BOX(hbox1), hna_frame, FALSE, FALSE, 0);
   //gtk_widget_set_size_request(mid_frame, 125, -1);
-  gtk_container_set_border_width (GTK_CONTAINER (hna_frame), 1);
+  gtk_container_set_border_width(GTK_CONTAINER(hna_frame), 1);
 
   /*
    *The HNA scrolled window
    */
-  hna_scrolledwindow = gtk_scrolled_window_new (NULL, NULL);
-  gtk_widget_ref (hna_scrolledwindow);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "hna_scrolledwindow",
-                            hna_scrolledwindow,
-                            (GtkDestroyNotify) gtk_widget_unref);
-
-  gtk_widget_show (hna_scrolledwindow);
-  gtk_container_add (GTK_CONTAINER (hna_frame), hna_scrolledwindow);
-  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (hna_scrolledwindow),
-                                  GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
-  gtk_container_set_border_width (GTK_CONTAINER (hna_scrolledwindow), 3);
+  hna_scrolledwindow = gtk_scrolled_window_new(NULL, NULL);
+  gtk_widget_ref(hna_scrolledwindow);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "hna_scrolledwindow", hna_scrolledwindow, (GtkDestroyNotify) gtk_widget_unref);
+
+  gtk_widget_show(hna_scrolledwindow);
+  gtk_container_add(GTK_CONTAINER(hna_frame), hna_scrolledwindow);
+  gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(hna_scrolledwindow), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
+  gtk_container_set_border_width(GTK_CONTAINER(hna_scrolledwindow), 3);
 
   /*
    *The HNA list
    */
-  hna_list = gtk_clist_new (1);
-  gtk_widget_ref (hna_list);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "hna_list", hna_list,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (hna_list);
-  gtk_container_add (GTK_CONTAINER (hna_scrolledwindow), hna_list);
-  gtk_clist_set_column_width (GTK_CLIST (hna_list), 0, 120);    /* IP */
-  gtk_clist_column_titles_hide (GTK_CLIST (hna_list));
+  hna_list = gtk_clist_new(1);
+  gtk_widget_ref(hna_list);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "hna_list", hna_list, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(hna_list);
+  gtk_container_add(GTK_CONTAINER(hna_scrolledwindow), hna_list);
+  gtk_clist_set_column_width(GTK_CLIST(hna_list), 0, 120);      /* IP */
+  gtk_clist_column_titles_hide(GTK_CLIST(hna_list));
 
   /*
    *The "main" notebook page
    */
-  Main = gtk_label_new ("Main");
-  gtk_widget_ref (Main);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "Main", Main,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (Main);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1),
-                              gtk_notebook_get_nth_page (GTK_NOTEBOOK
-                                                         (notebook1), 0),
-                              Main);
+  Main = gtk_label_new("Main");
+  gtk_widget_ref(Main);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "Main", Main, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(Main);
+  gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 0), Main);
 
   /*
    *The main hbox of the Packet page
    */
 
-  hbox2 = gtk_hbox_new (FALSE, 0);
-  gtk_widget_ref (hbox2);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "hbox2", hbox2,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (hbox2);
-  gtk_container_add (GTK_CONTAINER (notebook1), hbox2);
+  hbox2 = gtk_hbox_new(FALSE, 0);
+  gtk_widget_ref(hbox2);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "hbox2", hbox2, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(hbox2);
+  gtk_container_add(GTK_CONTAINER(notebook1), hbox2);
 
   /*
    *The packet hbox
    */
-  pack_vbox = gtk_vbox_new (FALSE, 0);
-  gtk_widget_ref (pack_vbox);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "pack_vbox", pack_vbox,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (pack_vbox);
-  gtk_box_pack_start (GTK_BOX (hbox2), pack_vbox, TRUE, TRUE, 0);
+  pack_vbox = gtk_vbox_new(FALSE, 0);
+  gtk_widget_ref(pack_vbox);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "pack_vbox", pack_vbox, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(pack_vbox);
+  gtk_box_pack_start(GTK_BOX(hbox2), pack_vbox, TRUE, TRUE, 0);
 
   /*
    *The packet frame
    */
 
-  frame2 = gtk_frame_new ("Packet");
-  gtk_widget_ref (frame2);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "frame2", frame2,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (frame2);
-  gtk_box_pack_start (GTK_BOX (pack_vbox), frame2, TRUE, TRUE, 0);      /* Do not expand */
+  frame2 = gtk_frame_new("Packet");
+  gtk_widget_ref(frame2);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "frame2", frame2, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(frame2);
+  gtk_box_pack_start(GTK_BOX(pack_vbox), frame2, TRUE, TRUE, 0);        /* Do not expand */
 
   /*
    *Packet list scrolled window
    */
-  scrolledwindow4 = gtk_scrolled_window_new (NULL, NULL);
-  gtk_widget_ref (scrolledwindow4);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "scrolledwindow4",
-                            scrolledwindow4,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  scrolledwindow4 = gtk_scrolled_window_new(NULL, NULL);
+  gtk_widget_ref(scrolledwindow4);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "scrolledwindow4", scrolledwindow4, (GtkDestroyNotify) gtk_widget_unref);
 
-  gtk_widget_show (scrolledwindow4);
-  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow4),
-                                  GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
+  gtk_widget_show(scrolledwindow4);
+  gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow4), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
 
-  gtk_container_add (GTK_CONTAINER (frame2), scrolledwindow4);
+  gtk_container_add(GTK_CONTAINER(frame2), scrolledwindow4);
 
   /*
    *The packet list
    */
 
-  packet_list = gtk_clist_new (3);
-  gtk_widget_ref (packet_list);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "packet_list",
-                            packet_list, (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (packet_list);
-  gtk_container_add (GTK_CONTAINER (scrolledwindow4), packet_list);
-  gtk_clist_set_column_width (GTK_CLIST (packet_list), 0, 80);  /* Type */
-  gtk_clist_set_column_width (GTK_CLIST (packet_list), 1, 150); /* Origin IP */
-  gtk_clist_set_column_width (GTK_CLIST (packet_list), 2, 20);  /* size */
-  gtk_clist_column_titles_show (GTK_CLIST (packet_list));
-
-  label17 = gtk_label_new ("Type");
-  gtk_widget_ref (label17);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "label17", label17,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label17);
-  gtk_clist_set_column_widget (GTK_CLIST (packet_list), 0, label17);
-
-  label18 = gtk_label_new ("Origin");
-  gtk_widget_ref (label18);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "label18", label18,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label18);
-  gtk_clist_set_column_widget (GTK_CLIST (packet_list), 1, label18);
-
-  label19 = gtk_label_new ("Size");
-  gtk_widget_ref (label19);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "label19", label19,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label19);
-  gtk_clist_set_column_widget (GTK_CLIST (packet_list), 2, label19);
+  packet_list = gtk_clist_new(3);
+  gtk_widget_ref(packet_list);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "packet_list", packet_list, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(packet_list);
+  gtk_container_add(GTK_CONTAINER(scrolledwindow4), packet_list);
+  gtk_clist_set_column_width(GTK_CLIST(packet_list), 0, 80);    /* Type */
+  gtk_clist_set_column_width(GTK_CLIST(packet_list), 1, 150);   /* Origin IP */
+  gtk_clist_set_column_width(GTK_CLIST(packet_list), 2, 20);    /* size */
+  gtk_clist_column_titles_show(GTK_CLIST(packet_list));
+
+  label17 = gtk_label_new("Type");
+  gtk_widget_ref(label17);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "label17", label17, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(label17);
+  gtk_clist_set_column_widget(GTK_CLIST(packet_list), 0, label17);
+
+  label18 = gtk_label_new("Origin");
+  gtk_widget_ref(label18);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "label18", label18, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(label18);
+  gtk_clist_set_column_widget(GTK_CLIST(packet_list), 1, label18);
+
+  label19 = gtk_label_new("Size");
+  gtk_widget_ref(label19);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "label19", label19, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(label19);
+  gtk_clist_set_column_widget(GTK_CLIST(packet_list), 2, label19);
 
   /*
    *Row selection callback
    */
-  gtk_signal_connect (GTK_OBJECT (packet_list), "select_row",
-                      GTK_SIGNAL_FUNC (packet_selection), NULL);
+  gtk_signal_connect(GTK_OBJECT(packet_list), "select_row", GTK_SIGNAL_FUNC(packet_selection), NULL);
 
   /*
    *The packet button
    */
 
-  packet_button = gtk_button_new_with_label ("Grab packets");
-  gtk_widget_ref (packet_button);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "packet_button",
-                            packet_button,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  packet_button = gtk_button_new_with_label("Grab packets");
+  gtk_widget_ref(packet_button);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "packet_button", packet_button, (GtkDestroyNotify) gtk_widget_unref);
 
   /* Connect the "clicked" signal of the button to our callback */
-  gtk_signal_connect (GTK_OBJECT (packet_button), "clicked",
-                      GTK_SIGNAL_FUNC (packet_callback), NULL);
-  gtk_widget_show (packet_button);
-  gtk_box_pack_start (GTK_BOX (pack_vbox), packet_button, FALSE, FALSE, 5);
+  gtk_signal_connect(GTK_OBJECT(packet_button), "clicked", GTK_SIGNAL_FUNC(packet_callback), NULL);
+  gtk_widget_show(packet_button);
+  gtk_box_pack_start(GTK_BOX(pack_vbox), packet_button, FALSE, FALSE, 5);
 
   /*
    *The packet disp hbox
    */
-  pack_disp_vbox = gtk_vbox_new (FALSE, 0);
-  gtk_widget_ref (pack_disp_vbox);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "pack_disp_vbox",
-                            pack_disp_vbox,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (pack_disp_vbox);
-  gtk_box_pack_start (GTK_BOX (hbox2), pack_disp_vbox, TRUE, TRUE, 0);
+  pack_disp_vbox = gtk_vbox_new(FALSE, 0);
+  gtk_widget_ref(pack_disp_vbox);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "pack_disp_vbox", pack_disp_vbox, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(pack_disp_vbox);
+  gtk_box_pack_start(GTK_BOX(hbox2), pack_disp_vbox, TRUE, TRUE, 0);
 
   /*
    *The packet disp frame
    */
 
-  disp_frame = gtk_frame_new ("Packet content");
-  gtk_widget_ref (disp_frame);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "disp_frame",
-                            disp_frame, (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (disp_frame);
-  gtk_box_pack_start (GTK_BOX (pack_disp_vbox), disp_frame, TRUE, TRUE, 0);     /* Do not expand */
+  disp_frame = gtk_frame_new("Packet content");
+  gtk_widget_ref(disp_frame);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "disp_frame", disp_frame, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(disp_frame);
+  gtk_box_pack_start(GTK_BOX(pack_disp_vbox), disp_frame, TRUE, TRUE, 0);       /* Do not expand */
 
   /*
    *Scrolled window for the packet display
    *list
    */
 
-  scrolledwindow3 = gtk_scrolled_window_new (NULL, NULL);
-  gtk_widget_ref (scrolledwindow3);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "scrolledwindow3",
-                            scrolledwindow3,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (scrolledwindow3);
-  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow3),
-                                  GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
+  scrolledwindow3 = gtk_scrolled_window_new(NULL, NULL);
+  gtk_widget_ref(scrolledwindow3);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "scrolledwindow3", scrolledwindow3, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(scrolledwindow3);
+  gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow3), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
 
-  gtk_container_add (GTK_CONTAINER (disp_frame), scrolledwindow3);
+  gtk_container_add(GTK_CONTAINER(disp_frame), scrolledwindow3);
 
   //gtk_box_pack_start (GTK_BOX (disp_frame), scrolledwindow3, TRUE, TRUE, 0);
 
   /*
    *The packet display list
    */
-  packet_content_list = gtk_clist_new (4);
-  gtk_widget_ref (packet_content_list);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "packet_content_list",
-                            packet_content_list,
-                            (GtkDestroyNotify) gtk_widget_unref);
-
-  gtk_widget_show (packet_content_list);
-  gtk_container_add (GTK_CONTAINER (scrolledwindow3), packet_content_list);
-  gtk_clist_set_column_width (GTK_CLIST (packet_content_list), 0, 70);  /* 0-7 */
-  gtk_clist_set_column_justification (GTK_CLIST (packet_content_list), 0,
-                                      GTK_JUSTIFY_CENTER);
-  gtk_clist_set_column_width (GTK_CLIST (packet_content_list), 1, 70);  /* 8-15 */
-  gtk_clist_set_column_justification (GTK_CLIST (packet_content_list), 1,
-                                      GTK_JUSTIFY_CENTER);
-  gtk_clist_set_column_width (GTK_CLIST (packet_content_list), 2, 70);  /* 16-23 */
-  gtk_clist_set_column_justification (GTK_CLIST (packet_content_list), 2,
-                                      GTK_JUSTIFY_CENTER);
-  gtk_clist_set_column_width (GTK_CLIST (packet_content_list), 3, 70);  /* 24-31 */
-  gtk_clist_set_column_justification (GTK_CLIST (packet_content_list), 3,
-                                      GTK_JUSTIFY_CENTER);
-  gtk_clist_column_titles_show (GTK_CLIST (packet_content_list));
-
-  label13 = gtk_label_new ("0 - 7");
-  gtk_widget_ref (label13);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "label13", label13,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label13);
-  gtk_clist_set_column_widget (GTK_CLIST (packet_content_list), 0, label13);
-
-  label14 = gtk_label_new ("8 - 15");
-  gtk_widget_ref (label14);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "label14", label14,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label14);
-  gtk_clist_set_column_widget (GTK_CLIST (packet_content_list), 1, label14);
-
-  label15 = gtk_label_new ("16 - 23");
-  gtk_widget_ref (label15);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "label15", label15,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label15);
-  gtk_clist_set_column_widget (GTK_CLIST (packet_content_list), 2, label15);
-
-  label16 = gtk_label_new ("24 - 31");
-  gtk_widget_ref (label16);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "label16", label16,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label16);
-  gtk_clist_set_column_widget (GTK_CLIST (packet_content_list), 3, label16);
+  packet_content_list = gtk_clist_new(4);
+  gtk_widget_ref(packet_content_list);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "packet_content_list",
+                           packet_content_list, (GtkDestroyNotify) gtk_widget_unref);
+
+  gtk_widget_show(packet_content_list);
+  gtk_container_add(GTK_CONTAINER(scrolledwindow3), packet_content_list);
+  gtk_clist_set_column_width(GTK_CLIST(packet_content_list), 0, 70);    /* 0-7 */
+  gtk_clist_set_column_justification(GTK_CLIST(packet_content_list), 0, GTK_JUSTIFY_CENTER);
+  gtk_clist_set_column_width(GTK_CLIST(packet_content_list), 1, 70);    /* 8-15 */
+  gtk_clist_set_column_justification(GTK_CLIST(packet_content_list), 1, GTK_JUSTIFY_CENTER);
+  gtk_clist_set_column_width(GTK_CLIST(packet_content_list), 2, 70);    /* 16-23 */
+  gtk_clist_set_column_justification(GTK_CLIST(packet_content_list), 2, GTK_JUSTIFY_CENTER);
+  gtk_clist_set_column_width(GTK_CLIST(packet_content_list), 3, 70);    /* 24-31 */
+  gtk_clist_set_column_justification(GTK_CLIST(packet_content_list), 3, GTK_JUSTIFY_CENTER);
+  gtk_clist_column_titles_show(GTK_CLIST(packet_content_list));
+
+  label13 = gtk_label_new("0 - 7");
+  gtk_widget_ref(label13);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "label13", label13, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(label13);
+  gtk_clist_set_column_widget(GTK_CLIST(packet_content_list), 0, label13);
+
+  label14 = gtk_label_new("8 - 15");
+  gtk_widget_ref(label14);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "label14", label14, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(label14);
+  gtk_clist_set_column_widget(GTK_CLIST(packet_content_list), 1, label14);
+
+  label15 = gtk_label_new("16 - 23");
+  gtk_widget_ref(label15);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "label15", label15, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(label15);
+  gtk_clist_set_column_widget(GTK_CLIST(packet_content_list), 2, label15);
+
+  label16 = gtk_label_new("24 - 31");
+  gtk_widget_ref(label16);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "label16", label16, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(label16);
+  gtk_clist_set_column_widget(GTK_CLIST(packet_content_list), 3, label16);
 
   //gtk_clist_set_selection_mode(GTK_CLIST (packet_content_list), GTK_SELECTION_NONE); /* no selections */
 
@@ -693,130 +614,106 @@ create_main_window (void)
    *The packet button
    */
 
-  packet_disp_button = gtk_button_new_with_label ("Display hex");
-  gtk_widget_ref (packet_disp_button);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "packet_disp_button",
-                            packet_disp_button,
-                            (GtkDestroyNotify) gtk_widget_unref);
+  packet_disp_button = gtk_button_new_with_label("Display hex");
+  gtk_widget_ref(packet_disp_button);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "packet_disp_button", packet_disp_button, (GtkDestroyNotify) gtk_widget_unref);
 
   /* Connect the "clicked" signal of the button to our callback */
-  gtk_signal_connect (GTK_OBJECT (packet_disp_button), "clicked",
-                      GTK_SIGNAL_FUNC (packet_disp_callback), NULL);
-  gtk_widget_show (packet_disp_button);
-  gtk_box_pack_start (GTK_BOX (pack_disp_vbox), packet_disp_button, FALSE,
-                      FALSE, 5);
+  gtk_signal_connect(GTK_OBJECT(packet_disp_button), "clicked", GTK_SIGNAL_FUNC(packet_disp_callback), NULL);
+  gtk_widget_show(packet_disp_button);
+  gtk_box_pack_start(GTK_BOX(pack_disp_vbox), packet_disp_button, FALSE, FALSE, 5);
 
   /*
    *The "packets" notebook
    */
 
-  label_packets = gtk_label_new ("Packets");
-  gtk_widget_ref (label_packets);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "label_packets",
-                            label_packets,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label_packets);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1),
-                              gtk_notebook_get_nth_page (GTK_NOTEBOOK
-                                                         (notebook1), 1),
-                              label_packets);
+  label_packets = gtk_label_new("Packets");
+  gtk_widget_ref(label_packets);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "label_packets", label_packets, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(label_packets);
+  gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 1), label_packets);
 
   /*
    *The route hbox
    */
-  route_hbox1 = gtk_hbox_new (FALSE, 0);
-  gtk_widget_ref (route_hbox1);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "route_hbox1",
-                            route_hbox1, (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (route_hbox1);
+  route_hbox1 = gtk_hbox_new(FALSE, 0);
+  gtk_widget_ref(route_hbox1);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "route_hbox1", route_hbox1, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(route_hbox1);
   //gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 1);
-  gtk_container_add (GTK_CONTAINER (notebook1), route_hbox1);
+  gtk_container_add(GTK_CONTAINER(notebook1), route_hbox1);
 
   /*
    *The routes frame
    */
 
-  route_frame = gtk_frame_new ("OLSR routes in kernel:");
-  gtk_widget_ref (route_frame);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "route_frame",
-                            route_frame, (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (route_frame);
+  route_frame = gtk_frame_new("OLSR routes in kernel:");
+  gtk_widget_ref(route_frame);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "route_frame", route_frame, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(route_frame);
 
   //gtk_container_add (GTK_CONTAINER (notebook1), route_frame);
-  gtk_widget_set_size_request (route_frame, 200, -1);
-  gtk_box_pack_start (GTK_BOX (route_hbox1), route_frame, TRUE, TRUE, 0);       /* Do not expand */
+  gtk_widget_set_size_request(route_frame, 200, -1);
+  gtk_box_pack_start(GTK_BOX(route_hbox1), route_frame, TRUE, TRUE, 0); /* Do not expand */
 
   /*
    *Scrolled window for the packet display
    *list
    */
 
-  route_scrolledwindow = gtk_scrolled_window_new (NULL, NULL);
-  gtk_widget_ref (route_scrolledwindow);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "route_scrolledwindow",
-                            route_scrolledwindow,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (route_scrolledwindow);
-  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (route_scrolledwindow),
-                                  GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
+  route_scrolledwindow = gtk_scrolled_window_new(NULL, NULL);
+  gtk_widget_ref(route_scrolledwindow);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "route_scrolledwindow",
+                           route_scrolledwindow, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(route_scrolledwindow);
+  gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(route_scrolledwindow), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
 
-  gtk_container_add (GTK_CONTAINER (route_frame), route_scrolledwindow);
+  gtk_container_add(GTK_CONTAINER(route_frame), route_scrolledwindow);
 
   //gtk_box_pack_start (GTK_BOX (route_frame), scrolledwindow3, TRUE, TRUE, 0);
 
   /*
    *The routes display list
    */
-  route_list = gtk_clist_new (4);
-  gtk_widget_ref (route_list);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "route_list",
-                            route_list, (GtkDestroyNotify) gtk_widget_unref);
-
-  gtk_widget_show (route_list);
-  gtk_container_add (GTK_CONTAINER (route_scrolledwindow), route_list);
-  gtk_clist_set_column_width (GTK_CLIST (route_list), 0, 120);  /* dest */
+  route_list = gtk_clist_new(4);
+  gtk_widget_ref(route_list);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "route_list", route_list, (GtkDestroyNotify) gtk_widget_unref);
+
+  gtk_widget_show(route_list);
+  gtk_container_add(GTK_CONTAINER(route_scrolledwindow), route_list);
+  gtk_clist_set_column_width(GTK_CLIST(route_list), 0, 120);    /* dest */
   //gtk_clist_set_column_justification(GTK_CLIST (route_list), 0, GTK_JUSTIFY_CENTER);
-  gtk_clist_set_column_width (GTK_CLIST (route_list), 1, 120);  /* gw */
+  gtk_clist_set_column_width(GTK_CLIST(route_list), 1, 120);    /* gw */
   //gtk_clist_set_column_justification(GTK_CLIST (route_list), 1, GTK_JUSTIFY_CENTER);
-  gtk_clist_set_column_width (GTK_CLIST (route_list), 2, 50);   /* weight */
-  gtk_clist_set_column_justification (GTK_CLIST (route_list), 2,
-                                      GTK_JUSTIFY_CENTER);
-  gtk_clist_set_column_width (GTK_CLIST (route_list), 3, 70);   /* interface */
-  gtk_clist_set_column_justification (GTK_CLIST (route_list), 3,
-                                      GTK_JUSTIFY_CENTER);
-  gtk_clist_column_titles_show (GTK_CLIST (route_list));
-
-  route_label1 = gtk_label_new ("Destination");
-  gtk_widget_ref (route_label1);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "route_label1",
-                            route_label1,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (route_label1);
-  gtk_clist_set_column_widget (GTK_CLIST (route_list), 0, route_label1);
-
-  route_label2 = gtk_label_new ("Gateway");
-  gtk_widget_ref (route_label2);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "route_label2",
-                            route_label2,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (route_label2);
-  gtk_clist_set_column_widget (GTK_CLIST (route_list), 1, route_label2);
-
-  route_label3 = gtk_label_new ("Weight");
-  gtk_widget_ref (route_label3);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "route_label3",
-                            route_label3,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (route_label3);
-  gtk_clist_set_column_widget (GTK_CLIST (route_list), 2, route_label3);
-
-  route_label4 = gtk_label_new ("Interface");
-  gtk_widget_ref (route_label4);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "route_label4",
-                            route_label4,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (route_label4);
-  gtk_clist_set_column_widget (GTK_CLIST (route_list), 3, route_label4);
+  gtk_clist_set_column_width(GTK_CLIST(route_list), 2, 50);     /* weight */
+  gtk_clist_set_column_justification(GTK_CLIST(route_list), 2, GTK_JUSTIFY_CENTER);
+  gtk_clist_set_column_width(GTK_CLIST(route_list), 3, 70);     /* interface */
+  gtk_clist_set_column_justification(GTK_CLIST(route_list), 3, GTK_JUSTIFY_CENTER);
+  gtk_clist_column_titles_show(GTK_CLIST(route_list));
+
+  route_label1 = gtk_label_new("Destination");
+  gtk_widget_ref(route_label1);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "route_label1", route_label1, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(route_label1);
+  gtk_clist_set_column_widget(GTK_CLIST(route_list), 0, route_label1);
+
+  route_label2 = gtk_label_new("Gateway");
+  gtk_widget_ref(route_label2);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "route_label2", route_label2, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(route_label2);
+  gtk_clist_set_column_widget(GTK_CLIST(route_list), 1, route_label2);
+
+  route_label3 = gtk_label_new("Weight");
+  gtk_widget_ref(route_label3);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "route_label3", route_label3, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(route_label3);
+  gtk_clist_set_column_widget(GTK_CLIST(route_list), 2, route_label3);
+
+  route_label4 = gtk_label_new("Interface");
+  gtk_widget_ref(route_label4);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "route_label4", route_label4, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(route_label4);
+  gtk_clist_set_column_widget(GTK_CLIST(route_list), 3, route_label4);
 
   //gtk_clist_set_selection_mode(GTK_CLIST (route_list), GTK_SELECTION_NONE); /* no selections */
 
@@ -824,132 +721,104 @@ create_main_window (void)
    *The routes stats frame
    */
 
-  route_stats_frame = gtk_frame_new ("Stats:");
-  gtk_widget_ref (route_stats_frame);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "route_stats_frame",
-                            route_stats_frame,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (route_stats_frame);
+  route_stats_frame = gtk_frame_new("Stats:");
+  gtk_widget_ref(route_stats_frame);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "route_stats_frame", route_stats_frame, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(route_stats_frame);
 
   //gtk_container_add (GTK_CONTAINER (notebook1), route_frame);
-  gtk_box_pack_start (GTK_BOX (route_hbox1), route_stats_frame, TRUE, TRUE,
-                      1);
+  gtk_box_pack_start(GTK_BOX(route_hbox1), route_stats_frame, TRUE, TRUE, 1);
 
   /*
    *The "routes" notebook
    */
-  label_routes = gtk_label_new ("Routes");
-  gtk_widget_ref (label_routes);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "label_routes",
-                            label_routes,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label_routes);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1),
-                              gtk_notebook_get_nth_page (GTK_NOTEBOOK
-                                                         (notebook1), 2),
-                              label_routes);
-
-  empty1 = gtk_vbox_new (FALSE, 0);
-  gtk_widget_show (empty1);
-  gtk_container_add (GTK_CONTAINER (notebook1), empty1);
+  label_routes = gtk_label_new("Routes");
+  gtk_widget_ref(label_routes);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "label_routes", label_routes, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(label_routes);
+  gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 2), label_routes);
+
+  empty1 = gtk_vbox_new(FALSE, 0);
+  gtk_widget_show(empty1);
+  gtk_container_add(GTK_CONTAINER(notebook1), empty1);
 
   /*
    *The "traffic" notebook
    */
-  traffic_label = gtk_label_new ("Traffic");
-  gtk_widget_ref (traffic_label);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "traffic_label",
-                            traffic_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (traffic_label);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1),
-                              gtk_notebook_get_nth_page (GTK_NOTEBOOK
-                                                         (notebook1), 3),
-                              traffic_label);
+  traffic_label = gtk_label_new("Traffic");
+  gtk_widget_ref(traffic_label);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "traffic_label", traffic_label, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(traffic_label);
+  gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 3), traffic_label);
 
   /*
    *The settings hbox
    */
-  settings_hbox1 = gtk_hbox_new (FALSE, 0);
-  gtk_widget_ref (settings_hbox1);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "settings_hbox1",
-                            settings_hbox1,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (settings_hbox1);
+  settings_hbox1 = gtk_hbox_new(FALSE, 0);
+  gtk_widget_ref(settings_hbox1);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "settings_hbox1", settings_hbox1, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(settings_hbox1);
   //gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 1);
-  gtk_container_add (GTK_CONTAINER (notebook1), settings_hbox1);
+  gtk_container_add(GTK_CONTAINER(notebook1), settings_hbox1);
 
   /*
    *The settings-info label field
    */
-  info_label = gtk_label_new (NULL);
-  gtk_widget_ref (info_label);
-  gtk_misc_set_alignment ((GtkMisc *) info_label, 0, 0);
+  info_label = gtk_label_new(NULL);
+  gtk_widget_ref(info_label);
+  gtk_misc_set_alignment((GtkMisc *) info_label, 0, 0);
   //gtk_label_set_justify((GtkLabel *)net_label,GTK_JUSTIFY_LEFT);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "info_label",
-                            info_label, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "info_label", info_label, (GtkDestroyNotify) gtk_widget_unref);
 
   //set_net_info("Not connected...");
-  gtk_widget_show (info_label);
-  gtk_box_pack_start (GTK_BOX (settings_hbox1), info_label, TRUE, TRUE, 0);
+  gtk_widget_show(info_label);
+  gtk_box_pack_start(GTK_BOX(settings_hbox1), info_label, TRUE, TRUE, 0);
 
   /*
    *The "settings" notebook
    */
-  settings_label = gtk_label_new ("Settings");
-  gtk_widget_ref (settings_label);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "settings_label",
-                            settings_label,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (settings_label);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1),
-                              gtk_notebook_get_nth_page (GTK_NOTEBOOK
-                                                         (notebook1), 4),
-                              settings_label);
+  settings_label = gtk_label_new("Settings");
+  gtk_widget_ref(settings_label);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "settings_label", settings_label, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(settings_label);
+  gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 4), settings_label);
 
   /*
    *The "about" hbox
    */
-  about_hbox1 = gtk_hbox_new (FALSE, 0);
-  gtk_widget_ref (about_hbox1);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "about_hbox1",
-                            about_hbox1, (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (about_hbox1);
+  about_hbox1 = gtk_hbox_new(FALSE, 0);
+  gtk_widget_ref(about_hbox1);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "about_hbox1", about_hbox1, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(about_hbox1);
   //gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 1);
-  gtk_container_add (GTK_CONTAINER (notebook1), about_hbox1);
-  gtk_container_set_border_width (GTK_CONTAINER (about_hbox1), 10);
+  gtk_container_add(GTK_CONTAINER(notebook1), about_hbox1);
+  gtk_container_set_border_width(GTK_CONTAINER(about_hbox1), 10);
 
   /*
    *The about label field
    */
-  about_label = gtk_label_new (NULL);
-  gtk_widget_ref (about_label);
-  gtk_misc_set_alignment ((GtkMisc *) about_label, 0, 0);
-  gtk_label_set_justify ((GtkLabel *) about_label, GTK_JUSTIFY_CENTER);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "about_label",
-                            about_label, (GtkDestroyNotify) gtk_widget_unref);
+  about_label = gtk_label_new(NULL);
+  gtk_widget_ref(about_label);
+  gtk_misc_set_alignment((GtkMisc *) about_label, 0, 0);
+  gtk_label_set_justify((GtkLabel *) about_label, GTK_JUSTIFY_CENTER);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "about_label", about_label, (GtkDestroyNotify) gtk_widget_unref);
 
   //set_net_info("Not connected...");
-  gtk_widget_show (about_label);
-  gtk_box_pack_start (GTK_BOX (about_hbox1), unik_logo, TRUE, TRUE, 0);
-  gtk_box_pack_start (GTK_BOX (about_hbox1), about_label, TRUE, TRUE, 0);
-  gtk_widget_show (unik_logo);
+  gtk_widget_show(about_label);
+  gtk_box_pack_start(GTK_BOX(about_hbox1), unik_logo, TRUE, TRUE, 0);
+  gtk_box_pack_start(GTK_BOX(about_hbox1), about_label, TRUE, TRUE, 0);
+  gtk_widget_show(unik_logo);
 
-  gtk_label_set_text ((GtkLabel *) about_label,
-                      "OLSRD-GUI by Andreas Tonnesen (andreto@ifi.uio.no)");
+  gtk_label_set_text((GtkLabel *) about_label, "OLSRD-GUI by Andreas Tonnesen (andreto@ifi.uio.no)");
 
   /*
    *The "about" notebook
    */
-  label3 = gtk_label_new ("About");
-  gtk_widget_ref (label3);
-  gtk_object_set_data_full (GTK_OBJECT (main_window), "About", label3,
-                            (GtkDestroyNotify) gtk_widget_unref);
-  gtk_widget_show (label3);
-  gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1),
-                              gtk_notebook_get_nth_page (GTK_NOTEBOOK
-                                                         (notebook1), 5),
-                              label3);
+  label3 = gtk_label_new("About");
+  gtk_widget_ref(label3);
+  gtk_object_set_data_full(GTK_OBJECT(main_window), "About", label3, (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show(label3);
+  gtk_notebook_set_tab_label(GTK_NOTEBOOK(notebook1), gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook1), 5), label3);
 
   return main_window;
 
@@ -959,16 +828,16 @@ create_main_window (void)
  *Add a node to the node list
  */
 void
-route_list_add (char *dest, char *gw, char *metric, char *dev)
+route_list_add(char *dest, char *gw, char *metric, char *dev)
 {
   gchar *tmp[4] = { dest, gw, dev, metric };
   route_list_size++;
 
-  gtk_clist_freeze (GTK_CLIST (route_list));
+  gtk_clist_freeze(GTK_CLIST(route_list));
 
-  gtk_clist_append (GTK_CLIST (route_list), tmp);
+  gtk_clist_append(GTK_CLIST(route_list), tmp);
 
-  gtk_clist_thaw (GTK_CLIST (route_list));
+  gtk_clist_thaw(GTK_CLIST(route_list));
 
 }
 
@@ -976,7 +845,7 @@ route_list_add (char *dest, char *gw, char *metric, char *dev)
  *Update the entyr with IP 'addr'
  */
 void
-route_list_update (char *addr)
+route_list_update(char *addr)
 {
 
 }
@@ -985,27 +854,25 @@ route_list_update (char *addr)
  *Delete a node from the node list
  */
 int
-route_list_del (char *dest)
+route_list_del(char *dest)
 {
   int i = 0;
   char *ip;
 
-  gtk_clist_freeze (GTK_CLIST (route_list));
-
-  for (i = 0; i < route_list_size; i++)
-    {
-      gtk_clist_get_text (GTK_CLIST (route_list), i, 0, (gchar **) & ip);
-      if (strcmp (dest, ip) == 0)
-        {
-          //printf("Found %d\n", i);
-          gtk_clist_remove (GTK_CLIST (route_list), i);
-          route_list_size--;
-          gtk_clist_thaw (GTK_CLIST (route_list));
-          return 1;
-        }
+  gtk_clist_freeze(GTK_CLIST(route_list));
+
+  for (i = 0; i < route_list_size; i++) {
+    gtk_clist_get_text(GTK_CLIST(route_list), i, 0, (gchar **) & ip);
+    if (strcmp(dest, ip) == 0) {
+      //printf("Found %d\n", i);
+      gtk_clist_remove(GTK_CLIST(route_list), i);
+      route_list_size--;
+      gtk_clist_thaw(GTK_CLIST(route_list));
+      return 1;
     }
+  }
 
-  gtk_clist_thaw (GTK_CLIST (route_list));
+  gtk_clist_thaw(GTK_CLIST(route_list));
   return 0;
 }
 
@@ -1013,23 +880,21 @@ route_list_del (char *dest)
  *Remove a node from the list
  */
 int
-remove_nodes_list (union olsr_ip_addr *node)
+remove_nodes_list(union olsr_ip_addr *node)
 {
   char *ip;
-  char *in_ip = ip_to_string (node);
+  char *in_ip = ip_to_string(node);
   int i;
 
-  for (i = 0; i < node_list_size; i++)
-    {
-      gtk_clist_get_text (GTK_CLIST (node_list), i, 0, (gchar **) & ip);
-      if (strcmp (in_ip, ip) == 0)
-        {
-          //printf("Found entry!\n");
-          gtk_clist_remove (GTK_CLIST (node_list), i);
-          node_list_size--;
-          return 1;
-        }
+  for (i = 0; i < node_list_size; i++) {
+    gtk_clist_get_text(GTK_CLIST(node_list), i, 0, (gchar **) & ip);
+    if (strcmp(in_ip, ip) == 0) {
+      //printf("Found entry!\n");
+      gtk_clist_remove(GTK_CLIST(node_list), i);
+      node_list_size--;
+      return 1;
     }
+  }
 
   return 0;
 }
@@ -1039,7 +904,7 @@ remove_nodes_list (union olsr_ip_addr *node)
  *update it. If not add it to the list
  */
 void
-update_nodes_list (struct node *node)
+update_nodes_list(struct node *node)
 {
   int i = 0;
   char *ip;
@@ -1050,103 +915,92 @@ update_nodes_list (struct node *node)
   struct tm *time_st;
   char itoa_buf[10];
 
-  if (memcmp (&node->addr, &main_addr, ipsize) == 0)
+  if (memcmp(&node->addr, &main_addr, ipsize) == 0)
     dest = "local";
   else
-    dest = ip_to_string (&node->addr);
+    dest = ip_to_string(&node->addr);
 
-  gtk_clist_freeze (GTK_CLIST (node_list));
+  gtk_clist_freeze(GTK_CLIST(node_list));
 
-  while ((i < node_list_size) && !found)
-    {
-      gtk_clist_get_text (GTK_CLIST (node_list), i, 0, (gchar **) & ip);
-      if (strcmp (dest, ip) == 0)
-        found = 1;
-      i++;
-    }
+  while ((i < node_list_size) && !found) {
+    gtk_clist_get_text(GTK_CLIST(node_list), i, 0, (gchar **) & ip);
+    if (strcmp(dest, ip) == 0)
+      found = 1;
+    i++;
+  }
 
   /* Update node */
-  if (found)
-    {
-      i--;                      /* Go backt to the right row */
-      //printf("Updating %s\n\n", ip_to_string(&node->addr));
-      /* don't update main addr */
-      /* Gateway */
-      if (memcmp (&node->addr, &main_addr, ipsize) != 0)
-        {
-          if (memcmp (&node->gw_addr, &null_addr, ipsize) != 0)
-            gtk_clist_set_text (GTK_CLIST (node_list), i, 1,
-                                ip_to_string (&node->gw_addr));
-          /* Weigth */
-          if (node->hopcount != 0)
-            {
-              gui_itoa (node->hopcount, itoa_buf);
-              gtk_clist_set_text (GTK_CLIST (node_list), i, 2, itoa_buf);
-            }
-          /* Device */
-          gtk_clist_set_text (GTK_CLIST (node_list), i, 3, &node->dev[0]);
-        }
-
-      /* Timer */
-      if (node->timer.tv_usec)
-        {
-          memset (&timer[0], 0, 20);
-          time_st = localtime ((time_t *) & node->timer.tv_sec);
-          sprintf (&timer[0], "%02d:%02d:%02d", time_st->tm_hour,
-                   time_st->tm_min, time_st->tm_sec);
-          gtk_clist_set_text (GTK_CLIST (node_list), i, 4, &timer[0]);
-        }
-
-      /* MID */
-      if (node->mid.next != &node->mid)
-        gtk_clist_set_text (GTK_CLIST (node_list), i, 5, "yes");
-      else
-        gtk_clist_set_text (GTK_CLIST (node_list), i, 5, "no");
-      /* HNA */
-      if (node->hna.next != &node->hna)
-        gtk_clist_set_text (GTK_CLIST (node_list), i, 6, "yes");
-      else
-        gtk_clist_set_text (GTK_CLIST (node_list), i, 6, "no");
+  if (found) {
+    i--;                        /* Go backt to the right row */
+    //printf("Updating %s\n\n", ip_to_string(&node->addr));
+    /* don't update main addr */
+    /* Gateway */
+    if (memcmp(&node->addr, &main_addr, ipsize) != 0) {
+      if (memcmp(&node->gw_addr, &null_addr, ipsize) != 0)
+        gtk_clist_set_text(GTK_CLIST(node_list), i, 1, ip_to_string(&node->gw_addr));
+      /* Weigth */
+      if (node->hopcount != 0) {
+        gui_itoa(node->hopcount, itoa_buf);
+        gtk_clist_set_text(GTK_CLIST(node_list), i, 2, itoa_buf);
+      }
+      /* Device */
+      gtk_clist_set_text(GTK_CLIST(node_list), i, 3, &node->dev[0]);
+    }
 
+    /* Timer */
+    if (node->timer.tv_usec) {
+      memset(&timer[0], 0, 20);
+      time_st = localtime((time_t *) & node->timer.tv_sec);
+      sprintf(&timer[0], "%02d:%02d:%02d", time_st->tm_hour, time_st->tm_min, time_st->tm_sec);
+      gtk_clist_set_text(GTK_CLIST(node_list), i, 4, &timer[0]);
     }
+
+    /* MID */
+    if (node->mid.next != &node->mid)
+      gtk_clist_set_text(GTK_CLIST(node_list), i, 5, "yes");
+    else
+      gtk_clist_set_text(GTK_CLIST(node_list), i, 5, "no");
+    /* HNA */
+    if (node->hna.next != &node->hna)
+      gtk_clist_set_text(GTK_CLIST(node_list), i, 6, "yes");
+    else
+      gtk_clist_set_text(GTK_CLIST(node_list), i, 6, "no");
+
+  }
   /* Add new node */
-  else
-    {
-      i = node_list_size;
-      /* Create entry */
-      gtk_clist_insert (GTK_CLIST (node_list), i, tmp);
-      /* Main address */
-      gtk_clist_set_text (GTK_CLIST (node_list), i, 0, dest);
-      if (memcmp (&node->addr, &main_addr, ipsize) == 0)
-        {
-          if (memcmp (&node->gw_addr, &null_addr, ipsize) != 0)
-            gtk_clist_set_text (GTK_CLIST (node_list), i, 1,
-                                ip_to_string (&node->gw_addr));
-          /* Weigth */
-          if (node->hopcount != 0)
-            {
-              gui_itoa (node->hopcount, itoa_buf);
-              gtk_clist_set_text (GTK_CLIST (node_list), i, 2, itoa_buf);
-            }
-          /* Device */
-          gtk_clist_set_text (GTK_CLIST (node_list), i, 3, &node->dev[0]);
-        }
-
-      /* MID */
-      if (node->mid.next != &node->mid)
-        gtk_clist_set_text (GTK_CLIST (node_list), i, 5, "yes");
-      else
-        gtk_clist_set_text (GTK_CLIST (node_list), i, 5, "no");
-      /* HNA */
-      if (node->hna.next != &node->hna)
-        gtk_clist_set_text (GTK_CLIST (node_list), i, 6, "yes");
-      else
-        gtk_clist_set_text (GTK_CLIST (node_list), i, 6, "no");
-
-      node_list_size++;
+  else {
+    i = node_list_size;
+    /* Create entry */
+    gtk_clist_insert(GTK_CLIST(node_list), i, tmp);
+    /* Main address */
+    gtk_clist_set_text(GTK_CLIST(node_list), i, 0, dest);
+    if (memcmp(&node->addr, &main_addr, ipsize) == 0) {
+      if (memcmp(&node->gw_addr, &null_addr, ipsize) != 0)
+        gtk_clist_set_text(GTK_CLIST(node_list), i, 1, ip_to_string(&node->gw_addr));
+      /* Weigth */
+      if (node->hopcount != 0) {
+        gui_itoa(node->hopcount, itoa_buf);
+        gtk_clist_set_text(GTK_CLIST(node_list), i, 2, itoa_buf);
+      }
+      /* Device */
+      gtk_clist_set_text(GTK_CLIST(node_list), i, 3, &node->dev[0]);
     }
 
-  gtk_clist_thaw (GTK_CLIST (node_list));
+    /* MID */
+    if (node->mid.next != &node->mid)
+      gtk_clist_set_text(GTK_CLIST(node_list), i, 5, "yes");
+    else
+      gtk_clist_set_text(GTK_CLIST(node_list), i, 5, "no");
+    /* HNA */
+    if (node->hna.next != &node->hna)
+      gtk_clist_set_text(GTK_CLIST(node_list), i, 6, "yes");
+    else
+      gtk_clist_set_text(GTK_CLIST(node_list), i, 6, "no");
+
+    node_list_size++;
+  }
+
+  gtk_clist_thaw(GTK_CLIST(node_list));
 
 }
 
@@ -1154,55 +1008,55 @@ update_nodes_list (struct node *node)
  *Add a packet to the packet list
  */
 void
-packet_list_add (char *type, char *from, char *length)
+packet_list_add(char *type, char *from, char *length)
 {
   gchar *nfo[3] = { type, from, length };
 
   //if(!freeze_packets)
   //{
   if (packet_list_size >= MAXPACKS)
-    gtk_clist_remove (GTK_CLIST (packet_list), MAXPACKS - 1);
+    gtk_clist_remove(GTK_CLIST(packet_list), MAXPACKS - 1);
   else
     packet_list_size++;
 
-  gtk_clist_prepend (GTK_CLIST (packet_list), nfo);
+  gtk_clist_prepend(GTK_CLIST(packet_list), nfo);
 
   //}
 
 }
 
 void
-set_net_info (gchar * info, int disp_button)
+set_net_info(gchar * info, int disp_button)
 {
   gchar title[255];
 
-  memset (&title[0], 0, 255);
-  gtk_label_set_text ((GtkLabel *) info_label, info);
-  gtk_label_set_text ((GtkLabel *) net_label, "Connected");
+  memset(&title[0], 0, 255);
+  gtk_label_set_text((GtkLabel *) info_label, info);
+  gtk_label_set_text((GtkLabel *) net_label, "Connected");
 
-  strcat (title, olsrd_version);
-  strcat (title, " - ");
-  strcat (title, ip_to_string (&main_addr));
+  strcat(title, olsrd_version);
+  strcat(title, " - ");
+  strcat(title, ip_to_string(&main_addr));
 
-  gtk_window_set_title (GTK_WINDOW (main_window), title);
+  gtk_window_set_title(GTK_WINDOW(main_window), title);
 
   if (disp_button)
-    gtk_widget_show (connect_button);
+    gtk_widget_show(connect_button);
   else
-    gtk_widget_hide (connect_button);
+    gtk_widget_hide(connect_button);
 }
 
 void
-set_net_info_offline ()
+set_net_info_offline()
 {
-  gtk_label_set_text ((GtkLabel *) net_label, "Connection refused...");
-  gtk_widget_show (connect_button);
+  gtk_label_set_text((GtkLabel *) net_label, "Connection refused...");
+  gtk_widget_show(connect_button);
 }
 
 void
-set_net_info_connecting ()
+set_net_info_connecting()
 {
-  gtk_label_set_text ((GtkLabel *) net_label, "Connecting...");
+  gtk_label_set_text((GtkLabel *) net_label, "Connecting...");
 }
 
 /*
index 20c0026..d60ed5c 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
@@ -47,28 +48,25 @@ GtkWidget *mpr_list;
 GtkWidget *hna_list;
 GtkWidget *route_list;
 
-void fill_clist (GtkCList *);
+void fill_clist(GtkCList *);
 
-void selection_made (GtkWidget * clist, gint row, gint column,
-                     GdkEventButton * event, gpointer data);
+void selection_made(GtkWidget * clist, gint row, gint column, GdkEventButton * event, gpointer data);
 
-void set_net_info_connecting ();
+void set_net_info_connecting();
 
-void column_clicked_callback (GtkWidget *, gint);
+void column_clicked_callback(GtkWidget *, gint);
 
-void connect_callback (GtkWidget * widget, gpointer data);
+void connect_callback(GtkWidget * widget, gpointer data);
 
-void packet_callback (GtkWidget * widget, gpointer data);
+void packet_callback(GtkWidget * widget, gpointer data);
 
-void packet_disp_callback (GtkWidget * widget, gpointer data);
+void packet_disp_callback(GtkWidget * widget, gpointer data);
 
-void packet_selection (GtkWidget * clist, gint row, gint column,
-                       GdkEventButton * event, gpointer data);
+void packet_selection(GtkWidget * clist, gint row, gint column, GdkEventButton * event, gpointer data);
 
-void node_selection (GtkWidget * clist, gint row, gint column,
-                     GdkEventButton * event, gpointer data);
+void node_selection(GtkWidget * clist, gint row, gint column, GdkEventButton * event, gpointer data);
 
-void gui_shutdown (GtkObject *, gpointer);
+void gui_shutdown(GtkObject *, gpointer);
 
 /*
  * Local Variables:
index 6b1b48b..bc405a7 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
 int ipc_socket = 0;
 
 int
-ipc_close ()
+ipc_close()
 {
 
-  if (close (ipc_socket))
+  if (close(ipc_socket))
     return 1;
 
   return 0;
 }
 
 int
-ipc_connect (struct sockaddr_in *pin)
+ipc_connect(struct sockaddr_in *pin)
 {
 #ifdef WIN32
   int On = 1;
@@ -59,169 +60,151 @@ ipc_connect (struct sockaddr_in *pin)
   connected = 0;
 
   if (!ipc_socket)
-    if ((ipc_socket = socket (AF_INET, SOCK_STREAM, 0)) == -1)
-      {
-        perror ("socket");
-        exit (1);
-      }
+    if ((ipc_socket = socket(AF_INET, SOCK_STREAM, 0)) == -1) {
+      perror("socket");
+      exit(1);
+    }
 
-  printf ("Attempting connect...");
+  printf("Attempting connect...");
 
   /* connect to PORT on HOST */
-  if (connect (ipc_socket, (struct sockaddr *) pin, sizeof (*pin)) < 0)
-    {
-      fprintf (stderr, "Error connecting %d - %s\n", errno, strerror (errno));
-      set_net_info_offline ();
-      printf ("connection refused\n");
-    }
-  else
-    {
-      set_net_info ("Connected!", FALSE);
-      printf ("Connected!!\n");
+  if (connect(ipc_socket, (struct sockaddr *)pin, sizeof(*pin)) < 0) {
+    fprintf(stderr, "Error connecting %d - %s\n", errno, strerror(errno));
+    set_net_info_offline();
+    printf("connection refused\n");
+  } else {
+    set_net_info("Connected!", FALSE);
+    printf("Connected!!\n");
 
-      /* Setting socket non-blocking */
+    /* Setting socket non-blocking */
 
 #ifdef WIN32
-      if (WSAIoctl
-          (ipc_socket, FIONBIO, &On, sizeof (On), NULL, 0, &Len, NULL,
-           NULL) < 0)
-        {
-          fprintf (stderr, "Error while making socket non-blocking!\n");
-          exit (1);
-        }
+    if (WSAIoctl(ipc_socket, FIONBIO, &On, sizeof(On), NULL, 0, &Len, NULL, NULL) < 0) {
+      fprintf(stderr, "Error while making socket non-blocking!\n");
+      exit(1);
+    }
 #else
-      if ((flags = fcntl (ipc_socket, F_GETFL, 0)) < 0)
-        {
-          fprintf (stderr, "Error getting socket flags!\n");
-          exit (1);
-        }
+    if ((flags = fcntl(ipc_socket, F_GETFL, 0)) < 0) {
+      fprintf(stderr, "Error getting socket flags!\n");
+      exit(1);
+    }
 
-      if (fcntl (ipc_socket, F_SETFL, flags | O_NONBLOCK) < 0)
-        {
-          fprintf (stderr, "Error setting socket flags!\n");
-          exit (1);
-        }
+    if (fcntl(ipc_socket, F_SETFL, flags | O_NONBLOCK) < 0) {
+      fprintf(stderr, "Error setting socket flags!\n");
+      exit(1);
+    }
 #endif
-      connected = 1;
+    connected = 1;
 
-      return 1;
-    }
+    return 1;
+  }
 
   return 0;
 
 }
 
 int
-ipc_read ()
+ipc_read()
 {
   //int x, i;
   int bytes, tmp_len;
   char *tmp;
   union olsr_message *msg;
-  union
-  {
+  union {
     char buf[BUFFSIZE + 1];
     union olsr_message olsr_msg;
   } inbuf;
   //char buf[BUFFSIZE+1];
 
   //printf(".");fflush(stdout);
-  memset (&inbuf, 0, sizeof (BUFFSIZE + 1));
+  memset(&inbuf, 0, sizeof(BUFFSIZE + 1));
   //buf[0] = '\0';
 
-  if (connected)
-    {
-      bytes = recv (ipc_socket, (char *) &inbuf, BUFFSIZE, 0);
-      if (bytes == 0)
-        {
-          shutdown (ipc_socket, SHUT_RDWR);
-          set_net_info ("Disconnected from server...", TRUE);
-          connected = 0;
-          close (ipc_socket);
-        }
+  if (connected) {
+    bytes = recv(ipc_socket, (char *)&inbuf, BUFFSIZE, 0);
+    if (bytes == 0) {
+      shutdown(ipc_socket, SHUT_RDWR);
+      set_net_info("Disconnected from server...", TRUE);
+      connected = 0;
+      close(ipc_socket);
+    }
 
-      if (bytes > 0)
-        {
-
-          tmp = (char *) &inbuf.olsr_msg;
-
-          /*
-             x = 0;
-             printf("\n\t");
-             for(i = 0; i < bytes;i++)
-             {
-             if(x == 4)
-             {
-             x = 0;
-             printf("\n\t");
-             }
-             x++;
-             printf(" %03i", (u_char) tmp[i]);
-             }
-
-             printf("\n\nBytes read: %d - msg_size: %d\n", bytes, ntohs(inbuf.olsr.v4.olsr_packlen));
-           */
-
-          msg = &inbuf.olsr_msg;
-
-          /* There can be(there probably are!) several packets in the buffer */
-
-          /* Should be the same for v4 and v6 */
-          if (ntohs (inbuf.olsr_msg.v4.olsr_msgsize) < bytes)
-            {
-              //printf("chomping...\n");
-              while (ntohs (msg->v4.olsr_msgsize) < bytes)
-                {
-                  ipc_evaluate_message (msg);
-
-                  tmp_len = ntohs (msg->v4.olsr_msgsize);
-                  msg = (union olsr_message *) &tmp[tmp_len];
-                  tmp = &tmp[tmp_len];
-                  if (tmp_len == 0)
-                    break;
-                  bytes = bytes - tmp_len;
-
-                  tmp_len = ntohs (msg->v4.olsr_msgsize);
-
-                  //printf("%d/%d ", tmp_len, bytes);
-                  /* Copy to start of buffer */
-                  if (tmp_len > bytes)
-                    {
-                      /* Copy the buffer */
-                      //printf("READING END OF MESSAGE. %d bytes\n", tmp_len-bytes);
-                      //printf("\tCopying %d bytes\n", bytes);
-                      memcpy (&inbuf, tmp, bytes);
-                      //printf("\tRecieving %d bytes to buffer[%d]\n", tmp_len-bytes, bytes);
-                      bytes =
-                        recv (ipc_socket, (char *) &inbuf.buf[bytes],
-                              tmp_len - bytes, 0);
-                      //printf("\tBytes: %d Size: %d\n", bytes, ntohs(msgs->v4.olsr_packlen));
-                      tmp = (char *) &inbuf.olsr_msg;
-                      msg = (union olsr_message *) tmp;
-                    }
-                }
-              //printf("\n");
-            }
-
-          /* Only one (or the last) message */
-          ipc_evaluate_message (msg);
+    if (bytes > 0) {
+
+      tmp = (char *)&inbuf.olsr_msg;
+
+      /*
+         x = 0;
+         printf("\n\t");
+         for(i = 0; i < bytes;i++)
+         {
+         if(x == 4)
+         {
+         x = 0;
+         printf("\n\t");
+         }
+         x++;
+         printf(" %03i", (u_char) tmp[i]);
+         }
+
+         printf("\n\nBytes read: %d - msg_size: %d\n", bytes, ntohs(inbuf.olsr.v4.olsr_packlen));
+       */
 
+      msg = &inbuf.olsr_msg;
+
+      /* There can be(there probably are!) several packets in the buffer */
+
+      /* Should be the same for v4 and v6 */
+      if (ntohs(inbuf.olsr_msg.v4.olsr_msgsize) < bytes) {
+        //printf("chomping...\n");
+        while (ntohs(msg->v4.olsr_msgsize) < bytes) {
+          ipc_evaluate_message(msg);
+
+          tmp_len = ntohs(msg->v4.olsr_msgsize);
+          msg = (union olsr_message *)&tmp[tmp_len];
+          tmp = &tmp[tmp_len];
+          if (tmp_len == 0)
+            break;
+          bytes = bytes - tmp_len;
+
+          tmp_len = ntohs(msg->v4.olsr_msgsize);
+
+          //printf("%d/%d ", tmp_len, bytes);
+          /* Copy to start of buffer */
+          if (tmp_len > bytes) {
+            /* Copy the buffer */
+            //printf("READING END OF MESSAGE. %d bytes\n", tmp_len-bytes);
+            //printf("\tCopying %d bytes\n", bytes);
+            memcpy(&inbuf, tmp, bytes);
+            //printf("\tRecieving %d bytes to buffer[%d]\n", tmp_len-bytes, bytes);
+            bytes = recv(ipc_socket, (char *)&inbuf.buf[bytes], tmp_len - bytes, 0);
+            //printf("\tBytes: %d Size: %d\n", bytes, ntohs(msgs->v4.olsr_packlen));
+            tmp = (char *)&inbuf.olsr_msg;
+            msg = (union olsr_message *)tmp;
+          }
         }
+        //printf("\n");
+      }
+
+      /* Only one (or the last) message */
+      ipc_evaluate_message(msg);
 
     }
 
+  }
+
   return 1;
 }
 
 int
-ipc_send ()
+ipc_send()
 {
 
   return 1;
 }
 
 int
-ipc_evaluate_message (union olsr_message *olsr_in)
+ipc_evaluate_message(union olsr_message *olsr_in)
 {
   int ipc_pack = 0;
   olsr_u8_t type;
@@ -232,120 +215,97 @@ ipc_evaluate_message (union olsr_message *olsr_in)
 
   /* Find size, vtime, originator and type - same for IPv4 and 6 */
   type = olsr_in->v4.olsr_msgtype;
-  msgsize = ntohs (olsr_in->v4.olsr_msgsize);
+  msgsize = ntohs(olsr_in->v4.olsr_msgsize);
   vtime = olsr_in->v4.olsr_vtime;
-  originator = (union olsr_ip_addr *) &olsr_in->v4.originator;
+  originator = (union olsr_ip_addr *)&olsr_in->v4.originator;
 
-  gui_itoa (msgsize, itoa_buf);
+  gui_itoa(msgsize, itoa_buf);
 
-  switch (type)
-    {
-    case HELLO_MESSAGE:
-      //printf("Recieved HELLO packet\n");
-      if (!freeze_packets)
-        packet_list_add ("HELLO", ip_to_string (originator), itoa_buf);
-
-      if (ipversion == AF_INET)
-        {
-          process_hello (msgsize, vtime, originator,
-                         (union hello_message *) &olsr_in->v4.message.hello);
-        }
-      else
-        {
-          process_hello (msgsize, vtime, originator,
-                         (union hello_message *) &olsr_in->v6.message.hello);
-        }
-      break;
-
-    case TC_MESSAGE:
-      if (!freeze_packets)
-        packet_list_add ("TC", ip_to_string (originator), itoa_buf);
-
-      if (ipversion == AF_INET)
-        {
-          process_tc (msgsize, vtime, originator,
-                      (union tc_message *) &olsr_in->v4.message.tc);
-          //printf("Recieved TC packet from %s\n", ip_to_string(&m->olsr_tc->tc_origaddr));
-        }
-      else
-        {
-          process_tc (msgsize, vtime, originator,
-                      (union tc_message *) &olsr_in->v6.message.tc);
-          //printf("Recieved TC packet from %s\n", ip_to_string(&m->olsr_tc->tc_origaddr));
-        }
-      break;
-
-    case MID_MESSAGE:
-      if (!freeze_packets)
-        packet_list_add ("MID", ip_to_string (originator), itoa_buf);
-      if (ipversion == AF_INET)
-        {
-          process_mid (msgsize, vtime, originator,
-                       (union mid_message *) &olsr_in->v4.message.mid);
-          //printf("Recieved MID packet from %s\n", ip_to_string(&m->olsr_mid->mid_origaddr));
-        }
-      else
-        {
-          process_mid (msgsize, vtime, originator,
-                       (union mid_message *) &olsr_in->v6.message.mid);
-          //printf("Recieved MID packet from %s\n", ip_to_string(&m->olsr_mid->mid_origaddr));
-        }
+  switch (type) {
+  case HELLO_MESSAGE:
+    //printf("Recieved HELLO packet\n");
+    if (!freeze_packets)
+      packet_list_add("HELLO", ip_to_string(originator), itoa_buf);
 
-      break;
+    if (ipversion == AF_INET) {
+      process_hello(msgsize, vtime, originator, (union hello_message *)&olsr_in->v4.message.hello);
+    } else {
+      process_hello(msgsize, vtime, originator, (union hello_message *)&olsr_in->v6.message.hello);
+    }
+    break;
+
+  case TC_MESSAGE:
+    if (!freeze_packets)
+      packet_list_add("TC", ip_to_string(originator), itoa_buf);
+
+    if (ipversion == AF_INET) {
+      process_tc(msgsize, vtime, originator, (union tc_message *)&olsr_in->v4.message.tc);
+      //printf("Recieved TC packet from %s\n", ip_to_string(&m->olsr_tc->tc_origaddr));
+    } else {
+      process_tc(msgsize, vtime, originator, (union tc_message *)&olsr_in->v6.message.tc);
+      //printf("Recieved TC packet from %s\n", ip_to_string(&m->olsr_tc->tc_origaddr));
+    }
+    break;
+
+  case MID_MESSAGE:
+    if (!freeze_packets)
+      packet_list_add("MID", ip_to_string(originator), itoa_buf);
+    if (ipversion == AF_INET) {
+      process_mid(msgsize, vtime, originator, (union mid_message *)&olsr_in->v4.message.mid);
+      //printf("Recieved MID packet from %s\n", ip_to_string(&m->olsr_mid->mid_origaddr));
+    } else {
+      process_mid(msgsize, vtime, originator, (union mid_message *)&olsr_in->v6.message.mid);
+      //printf("Recieved MID packet from %s\n", ip_to_string(&m->olsr_mid->mid_origaddr));
+    }
 
-    case HNA_MESSAGE:
+    break;
 
-      if (!freeze_packets)
-        packet_list_add ("HNA", ip_to_string (originator), itoa_buf);
-      if (ipversion == AF_INET)
-        {
-          process_hna (msgsize, vtime, originator,
-                       (union hna_message *) &olsr_in->v4.message.hna);
-          //printf("Recieved HNA packet\n");
-        }
-      else
-        {
-          process_hna (msgsize, vtime, originator,
-                       (union hna_message *) &olsr_in->v6.message.hna);
-          //printf("Recieved HNA packet\n");
-        }
-
-      break;
-
-    case IPC_MESSAGE:
-      //printf("Recieved IPC packet\n");
-      ipc_pack = 1;             /* Don't add to buffer */
-      ipc_eval_route_packet ((struct routemsg *) olsr_in);
-      break;
-    case IPC_NET:
-      //printf("Recieved IPC packet\n");
-      ipc_pack = 1;             /* Don't add to buffer */
-      ipc_eval_net_info ((struct netmsg *) olsr_in);
-      break;
-    default:
-      if (!freeze_packets)
-        {
-          char unk_label[8];
-          sprintf (unk_label, "%d", type);
-          packet_list_add (unk_label, ip_to_string (originator), itoa_buf);
-        }
-      printf ("Unknown packet type %d\n", type);
+  case HNA_MESSAGE:
 
+    if (!freeze_packets)
+      packet_list_add("HNA", ip_to_string(originator), itoa_buf);
+    if (ipversion == AF_INET) {
+      process_hna(msgsize, vtime, originator, (union hna_message *)&olsr_in->v4.message.hna);
+      //printf("Recieved HNA packet\n");
+    } else {
+      process_hna(msgsize, vtime, originator, (union hna_message *)&olsr_in->v6.message.hna);
+      //printf("Recieved HNA packet\n");
     }
 
-  if (!freeze_packets && !ipc_pack)
-    {
-      add_packet_to_buffer (olsr_in, msgsize);
+    break;
+
+  case IPC_MESSAGE:
+    //printf("Recieved IPC packet\n");
+    ipc_pack = 1;               /* Don't add to buffer */
+    ipc_eval_route_packet((struct routemsg *)olsr_in);
+    break;
+  case IPC_NET:
+    //printf("Recieved IPC packet\n");
+    ipc_pack = 1;               /* Don't add to buffer */
+    ipc_eval_net_info((struct netmsg *)olsr_in);
+    break;
+  default:
+    if (!freeze_packets) {
+      char unk_label[8];
+      sprintf(unk_label, "%d", type);
+      packet_list_add(unk_label, ip_to_string(originator), itoa_buf);
     }
+    printf("Unknown packet type %d\n", type);
+
+  }
+
+  if (!freeze_packets && !ipc_pack) {
+    add_packet_to_buffer(olsr_in, msgsize);
+  }
 
   return 1;
 }
 
 int
-ipc_eval_net_info (struct netmsg *msg)
+ipc_eval_net_info(struct netmsg *msg)
 {
   char info[256];
-  printf ("Evaluating NET info...\n");
+  printf("Evaluating NET info...\n");
 
   /*
      printf("\tMain address: %s\n", ip_to_string(&msg->main_addr));
@@ -357,92 +317,82 @@ ipc_eval_net_info (struct netmsg *msg)
      printf("\tNeighbor hold time: %d\n", ntohs(msg->neigh_hold));
      printf("\tTopology hold: %d\n", ntohs(msg->topology_hold));
    */
-  if (msg->ipv6 == 0)
-    {
-      ipversion = AF_INET;
-      ipsize = sizeof (struct in_addr);
-      sprintf (&info[0],
-               "IP version 4\nMain address: %s\nMid addresses: %d\nHna addresses: %d\nHELLO interval: %d\nHELLO LAN interval: %d\nTC interval: %d\nNeighbor hold time: %d\nTopology hold: %d\n",
-               ip_to_string (&msg->main_addr), msg->mids, msg->hnas,
-               ntohs (msg->hello_int), ntohs (msg->hello_lan_int),
-               ntohs (msg->tc_int), ntohs (msg->neigh_hold),
-               ntohs (msg->topology_hold));
-    }
-  else
-    {
-      ipversion = AF_INET6;
-      ipsize = sizeof (struct in6_addr);
-      sprintf (&info[0],
-               "IP version 6\nMain address: %s\nMid addresses: %d\nHna addresses: %d\nHELLO interval: %d\nHELLO LAN interval: %d\nTC interval: %d\nNeighbor hold time: %d\nTopology hold: %d\n",
-               ip_to_string (&msg->main_addr), msg->mids, msg->hnas,
-               ntohs (msg->hello_int), ntohs (msg->hello_lan_int),
-               ntohs (msg->tc_int), ntohs (msg->neigh_hold),
-               ntohs (msg->topology_hold));
-    }
-
-  memcpy (&main_addr, &msg->main_addr, ipsize);
-
-  set_net_info (&info[0], 0);
+  if (msg->ipv6 == 0) {
+    ipversion = AF_INET;
+    ipsize = sizeof(struct in_addr);
+    sprintf(&info[0],
+            "IP version 4\nMain address: %s\nMid addresses: %d\nHna addresses: %d\nHELLO interval: %d\nHELLO LAN interval: %d\nTC interval: %d\nNeighbor hold time: %d\nTopology hold: %d\n",
+            ip_to_string(&msg->main_addr), msg->mids, msg->hnas,
+            ntohs(msg->hello_int), ntohs(msg->hello_lan_int),
+            ntohs(msg->tc_int), ntohs(msg->neigh_hold), ntohs(msg->topology_hold));
+  } else {
+    ipversion = AF_INET6;
+    ipsize = sizeof(struct in6_addr);
+    sprintf(&info[0],
+            "IP version 6\nMain address: %s\nMid addresses: %d\nHna addresses: %d\nHELLO interval: %d\nHELLO LAN interval: %d\nTC interval: %d\nNeighbor hold time: %d\nTopology hold: %d\n",
+            ip_to_string(&msg->main_addr), msg->mids, msg->hnas,
+            ntohs(msg->hello_int), ntohs(msg->hello_lan_int),
+            ntohs(msg->tc_int), ntohs(msg->neigh_hold), ntohs(msg->topology_hold));
+  }
+
+  memcpy(&main_addr, &msg->main_addr, ipsize);
+
+  set_net_info(&info[0], 0);
 
   return 0;
 }
 
 int
-ipc_eval_route_packet (struct routemsg *msg)
+ipc_eval_route_packet(struct routemsg *msg)
 {
   struct route_entry rt_ent;
   char dev[5];
   char gw[16];
   char itoa_buf[10];
   dev[4] = '\0';
-  memset (&gw[0], 0, 16);
+  memset(&gw[0], 0, 16);
 
-  printf ("Processing route packet\n");
+  printf("Processing route packet\n");
 
-  memset (rt_ent.if_name, 0, MAX_IF_NAMESIZ);
+  memset(rt_ent.if_name, 0, MAX_IF_NAMESIZ);
 
   /* Fill struct */
 
-  memcpy (&rt_ent.gw, &msg->gateway_addr, ipsize);
-  memcpy (&rt_ent.dst, &msg->target_addr, ipsize);
-  memcpy (rt_ent.if_name, msg->device, 4);
+  memcpy(&rt_ent.gw, &msg->gateway_addr, ipsize);
+  memcpy(&rt_ent.dst, &msg->target_addr, ipsize);
+  memcpy(rt_ent.if_name, msg->device, 4);
   rt_ent.hopcnt = msg->metric;
 
-  if (msg->add)
-    {
-      memcpy (&dev[0], &msg->device[0], 4);
+  if (msg->add) {
+    memcpy(&dev[0], &msg->device[0], 4);
 
-      /*Add node to node list */
-      memcpy (&gw[0], ip_to_string (&msg->gateway_addr), 16);
+    /*Add node to node list */
+    memcpy(&gw[0], ip_to_string(&msg->gateway_addr), 16);
 
-      gui_itoa (msg->metric, itoa_buf);
+    gui_itoa(msg->metric, itoa_buf);
 
-      route_list_add (ip_to_string (&msg->target_addr), gw, dev, itoa_buf);
+    route_list_add(ip_to_string(&msg->target_addr), gw, dev, itoa_buf);
 
-      printf ("\tRoute to %s(hc %d) added\n",
-              ip_to_string (&msg->target_addr), rt_ent.hopcnt);
+    printf("\tRoute to %s(hc %d) added\n", ip_to_string(&msg->target_addr), rt_ent.hopcnt);
 
-      /*
-         printf("\tRoute to %s added\n", ip_to_string(&msg->target_addr));
-         printf("\tGateway %s\n", gw);
-         printf("\tInterface %s\n", msg->device);
-         printf("\tMetric %d\n", msg->metric);
-       */
-    }
-  else
-    {
+    /*
+       printf("\tRoute to %s added\n", ip_to_string(&msg->target_addr));
+       printf("\tGateway %s\n", gw);
+       printf("\tInterface %s\n", msg->device);
+       printf("\tMetric %d\n", msg->metric);
+     */
+  } else {
 
-      if (route_list_del (ip_to_string (&msg->target_addr)) < 1)
-        printf ("COULD NOT FIND ROUTE TO DELETE!\n\n");
+    if (route_list_del(ip_to_string(&msg->target_addr)) < 1)
+      printf("COULD NOT FIND ROUTE TO DELETE!\n\n");
 
-      printf ("\tRoute to %s deleted\n", ip_to_string (&msg->target_addr));
-    }
+    printf("\tRoute to %s deleted\n", ip_to_string(&msg->target_addr));
+  }
   return 1;
 }
 
 int
-process_hello (int size, olsr_u8_t vtime, union olsr_ip_addr *originator,
-               union hello_message *m)
+process_hello(int size, olsr_u8_t vtime, union olsr_ip_addr *originator, union hello_message *m)
 {
   struct hellinfo *neigh;
   struct hellinfo6 *neigh6;
@@ -450,11 +400,10 @@ process_hello (int size, olsr_u8_t vtime, union olsr_ip_addr *originator,
   int nsize;
   int type, link;
 
-  printf ("Processing HELLO from %s size = %d\n", ip_to_string (originator),
-          size);
+  printf("Processing HELLO from %s size = %d\n", ip_to_string(originator), size);
 
-  if (!update_timer_node (originator, vtime))
-    add_node (originator, vtime);
+  if (!update_timer_node(originator, vtime))
+    add_node(originator, vtime);
 
   /* Add neighbors if any */
   size = size - 4 - 8 - ipsize; /* size of neighbors(size - olsrheder- helloheader) */
@@ -468,87 +417,71 @@ process_hello (int size, olsr_u8_t vtime, union olsr_ip_addr *originator,
 
   //printf("HELLO Size: %d\n", size);
 
-  while (size > 0)
-    {
+  while (size > 0) {
+
+    //printf("\tNEIGH: 0x%x\n", (int)neigh);
+    if (ipversion == AF_INET) {
+      nsize = ntohs(neigh->size);
+      type = EXTRACT_STATUS(ntohs(neigh->link_code));
+      link = EXTRACT_LINK(ntohs(neigh->link_code));
+      //printf("TYPE: %d\n", neigh->link_code);
+    } else {
+      nsize = ntohs(neigh6->size);
+      type = EXTRACT_STATUS(ntohs(neigh6->link_code));
+      link = EXTRACT_LINK(ntohs(neigh6->link_code));
+    }
+
+    size -= nsize;
+
+    nsize = nsize - 4;          /* - hellinfo header */
+    //printf("Size left: %d Current hellinfo: %d\n", size, nsize);
+    i = 0;
+    while (nsize > 0) {
+      //printf("Adding neighbor %s...\n", ip_to_string((union olsr_ip_addr *)&neigh->neigh_addr[i]));
+      /*
+         if(MPR)
+         update_timer_mpr((union olsr_ip_addr *)&mprsinfo->addr, originator);
+       */
 
-      //printf("\tNEIGH: 0x%x\n", (int)neigh);
-      if (ipversion == AF_INET)
-        {
-          nsize = ntohs (neigh->size);
-          type = EXTRACT_STATUS (ntohs (neigh->link_code));
-          link = EXTRACT_LINK (ntohs (neigh->link_code));
-          //printf("TYPE: %d\n", neigh->link_code);
+      if (ipversion == AF_INET) {       /* Update MPRs */
+        if (type == MPR_NEIGH) {
+          //printf("MPR from HELLO\n");
+          update_timer_mpr((union olsr_ip_addr *)&neigh->neigh_addr[i], originator, vtime);
         }
-      else
-        {
-          nsize = ntohs (neigh6->size);
-          type = EXTRACT_STATUS (ntohs (neigh6->link_code));
-          link = EXTRACT_LINK (ntohs (neigh6->link_code));
+        add_node((union olsr_ip_addr *)&neigh->neigh_addr[i++], vtime);
+      } else {
+        if (type == MPR_NEIGH) {        /* Update MPRs */
+          //printf("MPR from HELLO\n");
+          update_timer_mpr((union olsr_ip_addr *)&neigh6->neigh_addr[i], originator, vtime);
         }
+        add_node((union olsr_ip_addr *)&neigh6->neigh_addr[i++], vtime);
+      }
 
-      size -= nsize;
-
-      nsize = nsize - 4;        /* - hellinfo header */
-      //printf("Size left: %d Current hellinfo: %d\n", size, nsize);
-      i = 0;
-      while (nsize > 0)
-        {
-          //printf("Adding neighbor %s...\n", ip_to_string((union olsr_ip_addr *)&neigh->neigh_addr[i]));
-          /*
-             if(MPR)
-             update_timer_mpr((union olsr_ip_addr *)&mprsinfo->addr, originator);
-           */
-
-          if (ipversion == AF_INET)     /* Update MPRs */
-            {
-              if (type == MPR_NEIGH)
-                {
-                  //printf("MPR from HELLO\n");
-                  update_timer_mpr ((union olsr_ip_addr *) &neigh->
-                                    neigh_addr[i], originator, vtime);
-                }
-              add_node ((union olsr_ip_addr *) &neigh->neigh_addr[i++],
-                        vtime);
-            }
-          else
-            {
-              if (type == MPR_NEIGH)    /* Update MPRs */
-                {
-                  //printf("MPR from HELLO\n");
-                  update_timer_mpr ((union olsr_ip_addr *) &neigh6->
-                                    neigh_addr[i], originator, vtime);
-                }
-              add_node ((union olsr_ip_addr *) &neigh6->neigh_addr[i++],
-                        vtime);
-            }
-
-          nsize = nsize - ipsize;
-          //printf("Nsize: %d\n", nsize);
-        }
+      nsize = nsize - ipsize;
+      //printf("Nsize: %d\n", nsize);
+    }
 
-      neigh = (struct hellinfo *) &neigh->neigh_addr[i];
-      neigh6 = (struct hellinfo6 *) &neigh6->neigh_addr[i];
+    neigh = (struct hellinfo *)&neigh->neigh_addr[i];
+    neigh6 = (struct hellinfo6 *)&neigh6->neigh_addr[i];
 
-    }
+  }
   //printf("DONE\n");
 
   return 0;
 }
 
 int
-process_tc (int size, olsr_u8_t vtime, union olsr_ip_addr *originator,
-            union tc_message *m)
+process_tc(int size, olsr_u8_t vtime, union olsr_ip_addr *originator, union tc_message *m)
 {
 
   struct neigh_info *mprsinfo;
   struct neigh_info6 *mprsinfo6;
 
-  printf ("Processing TC from %s size = %d\n", ip_to_string (originator),
-          size);
+  printf("Processing TC from %s size = %d\n", ip_to_string(originator), size);
 
   /* Updating timer */
-  if (!update_timer_node (originator, vtime))
-    add_node (originator, vtime);
+  if (!update_timer_node(originator, vtime))
+    add_node(originator, vtime);
 
   /* Calculate size of the mprsinfo */
   size = size - 4 - 8 - ipsize;
@@ -560,42 +493,34 @@ process_tc (int size, olsr_u8_t vtime, union olsr_ip_addr *originator,
   else
     mprsinfo6 = &m->v6.neigh[0];
 
-  while (size > 0)
-    {
-      if (ipversion == AF_INET)
-        {
-          //printf("\tprocessing TC: %s\n", ip_to_string((union olsr_ip_addr *)&mprsinfo->addr));
-          add_node ((union olsr_ip_addr *) &mprsinfo->addr, vtime);
-          update_timer_mpr ((union olsr_ip_addr *) &mprsinfo->addr,
-                            originator, vtime);
-          mprsinfo++;
-        }
-      else
-        {
-          //printf("\tprocessing TC: %s\n", ip_to_string((union olsr_ip_addr *)&mprsinfo6->addr));
-          //printf("TC: add node %s\n", ip_to_string((union olsr_ip_addr *)&mprsinfo6->addr));
-          add_node ((union olsr_ip_addr *) &mprsinfo6->addr, vtime);
-          update_timer_mpr ((union olsr_ip_addr *) &mprsinfo6->addr,
-                            originator, vtime);
-          mprsinfo6++;
-        }
-      size = size - ipsize;
-      //printf("\tsize: %d\n", size);
+  while (size > 0) {
+    if (ipversion == AF_INET) {
+      //printf("\tprocessing TC: %s\n", ip_to_string((union olsr_ip_addr *)&mprsinfo->addr));
+      add_node((union olsr_ip_addr *)&mprsinfo->addr, vtime);
+      update_timer_mpr((union olsr_ip_addr *)&mprsinfo->addr, originator, vtime);
+      mprsinfo++;
+    } else {
+      //printf("\tprocessing TC: %s\n", ip_to_string((union olsr_ip_addr *)&mprsinfo6->addr));
+      //printf("TC: add node %s\n", ip_to_string((union olsr_ip_addr *)&mprsinfo6->addr));
+      add_node((union olsr_ip_addr *)&mprsinfo6->addr, vtime);
+      update_timer_mpr((union olsr_ip_addr *)&mprsinfo6->addr, originator, vtime);
+      mprsinfo6++;
     }
+    size = size - ipsize;
+    //printf("\tsize: %d\n", size);
+  }
   //printf("DONE\n");
 
   return 0;
 }
 
 int
-process_mid (int size, olsr_u8_t vtime, union olsr_ip_addr *originator,
-             union mid_message *m)
+process_mid(int size, olsr_u8_t vtime, union olsr_ip_addr *originator, union mid_message *m)
 {
   struct midaddr *midaddr;
   struct midaddr6 *midaddr6;
 
-  printf ("Processing MID from %s size = %d\n", ip_to_string (originator),
-          size);
+  printf("Processing MID from %s size = %d\n", ip_to_string(originator), size);
 
   /* Calculate size of the midinfo */
   size = size - 4 - 4 - ipsize;
@@ -607,35 +532,28 @@ process_mid (int size, olsr_u8_t vtime, union olsr_ip_addr *originator,
 
   //printf("MID size: %d\n", size);
 
-  while (size > 0)
-    {
-      if (ipversion == AF_INET)
-        {
-          //printf("MID: add node %s\n", ip_to_string((union olsr_ip_addr *)&midaddr->addr));
-          add_mid_node (originator, (union olsr_ip_addr *) &midaddr->addr,
-                        vtime);
-          midaddr++;
-        }
-      else
-        {
-          add_mid_node (originator, (union olsr_ip_addr *) &midaddr6->addr,
-                        vtime);
-          //printf("MID: add node %s\n", ip_to_string((union olsr_ip_addr *)&midaddr6->addr));
-          midaddr6++;
-        }
-      size = size - ipsize;
+  while (size > 0) {
+    if (ipversion == AF_INET) {
+      //printf("MID: add node %s\n", ip_to_string((union olsr_ip_addr *)&midaddr->addr));
+      add_mid_node(originator, (union olsr_ip_addr *)&midaddr->addr, vtime);
+      midaddr++;
+    } else {
+      add_mid_node(originator, (union olsr_ip_addr *)&midaddr6->addr, vtime);
+      //printf("MID: add node %s\n", ip_to_string((union olsr_ip_addr *)&midaddr6->addr));
+      midaddr6++;
     }
+    size = size - ipsize;
+  }
 
   //printf("DONE\n");
   return 0;
 }
 
 int
-process_hna (int size, olsr_u8_t vtime, union olsr_ip_addr *originator,
-             union hna_message *m)
+process_hna(int size, olsr_u8_t vtime, union olsr_ip_addr *originator, union hna_message *m)
 {
 
-  printf ("Processing HNA size = %d\n", size);
+  printf("Processing HNA size = %d\n", size);
   struct hnapair *hnapairs;
   struct hnapair6 *hnapairs6;
 
@@ -647,63 +565,52 @@ process_hna (int size, olsr_u8_t vtime, union olsr_ip_addr *originator,
   else
     hnapairs6 = &m->v6.hna_net[0];
 
-  while (size > 0)
-    {
-      if (ipversion == AF_INET)
-        {
-          //printf("\tHNA:%s\n", ip_to_string((union olsr_ip_addr *)&hnapairs->addr));
-          add_hna_node (originator, (union olsr_ip_addr *) &hnapairs->addr,
-                        (union olsr_ip_addr *) &hnapairs->netmask, vtime);
-          hnapairs++;
-        }
-      else
-        {
-          add_hna_node (originator, (union olsr_ip_addr *) &hnapairs6->addr,
-                        (union olsr_ip_addr *) &hnapairs6->netmask, vtime);
-          hnapairs6++;
-        }
-
-      size = size - ipsize - ipsize;
+  while (size > 0) {
+    if (ipversion == AF_INET) {
+      //printf("\tHNA:%s\n", ip_to_string((union olsr_ip_addr *)&hnapairs->addr));
+      add_hna_node(originator, (union olsr_ip_addr *)&hnapairs->addr, (union olsr_ip_addr *)&hnapairs->netmask, vtime);
+      hnapairs++;
+    } else {
+      add_hna_node(originator, (union olsr_ip_addr *)&hnapairs6->addr, (union olsr_ip_addr *)&hnapairs6->netmask, vtime);
+      hnapairs6++;
     }
 
+    size = size - ipsize - ipsize;
+  }
+
   return 0;
 }
 
 char *
-ip_to_string (union olsr_ip_addr *addr)
+ip_to_string(union olsr_ip_addr *addr)
 {
   char *ret;
   struct in_addr in;
 
-  if (ipversion == AF_INET)
-    {
-      in.s_addr = addr->v4;
-      ret = inet_ntoa (in);
-    }
-  else
-    {
-      /* IPv6 */
-      ret =
-        (char *) inet_ntop (AF_INET6, &addr->v6, ipv6_buf, sizeof (ipv6_buf));
-    }
+  if (ipversion == AF_INET) {
+    in.s_addr = addr->v4;
+    ret = inet_ntoa(in);
+  } else {
+    /* IPv6 */
+    ret = (char *)inet_ntop(AF_INET6, &addr->v6, ipv6_buf, sizeof(ipv6_buf));
+  }
 
   return ret;
 
 }
 
 int
-gui_itoa (int i, char *buf)
+gui_itoa(int i, char *buf)
 {
   char tmp[10];
 
-  if (sprintf (buf, "%hd", i))
-    {
-      /* This shitty string needs to be converted to UTF-8 */
-      strcpy (tmp, g_locale_to_utf8 (buf, -1, NULL, NULL, NULL));
-      strcpy (buf, tmp);
-      return 1;
-      //return ret;
-    }
+  if (sprintf(buf, "%hd", i)) {
+    /* This shitty string needs to be converted to UTF-8 */
+    strcpy(tmp, g_locale_to_utf8(buf, -1, NULL, NULL, NULL));
+    strcpy(buf, tmp);
+    return 1;
+    //return ret;
+  }
   return 0;
 }
 
index 4d9f527..a02611b 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
@@ -46,8 +47,7 @@ int connected;
  *and add
  */
 
-struct routemsg
-{
+struct routemsg {
   olsr_u8_t msgtype;
   olsr_u16_t size;
   olsr_u8_t metric;
@@ -57,12 +57,11 @@ struct routemsg
   char device[4];
 };
 
-struct netmsg
-{
+struct netmsg {
   olsr_u8_t msgtype;
   olsr_u16_t size;
-  olsr_u8_t mids;               /* No. of extra interfaces */
-  olsr_u8_t hnas;               /* No. of HNA nets */
+  olsr_u8_t mids;                      /* No. of extra interfaces */
+  olsr_u8_t hnas;                      /* No. of HNA nets */
   olsr_u8_t unused1;
   olsr_u16_t hello_int;
   olsr_u16_t hello_lan_int;
@@ -77,22 +76,21 @@ struct netmsg
  *Private functions
  */
 
-int ipc_get_socket ();
+int ipc_get_socket();
 
-int ipc_evaluate_message (union olsr_message *);
+int ipc_evaluate_message(union olsr_message *);
 
-int ipc_eval_route_packet (struct routemsg *);
+int ipc_eval_route_packet(struct routemsg *);
 
-int ipc_eval_net_info (struct netmsg *);
+int ipc_eval_net_info(struct netmsg *);
 
-int process_hello (int, olsr_u8_t, union olsr_ip_addr *,
-                   union hello_message *);
+int process_hello(int, olsr_u8_t, union olsr_ip_addr *, union hello_message *);
 
-int process_tc (int, olsr_u8_t, union olsr_ip_addr *, union tc_message *);
+int process_tc(int, olsr_u8_t, union olsr_ip_addr *, union tc_message *);
 
-int process_mid (int, olsr_u8_t, union olsr_ip_addr *, union mid_message *);
+int process_mid(int, olsr_u8_t, union olsr_ip_addr *, union mid_message *);
 
-int process_hna (int, olsr_u8_t, union olsr_ip_addr *, union hna_message *);
+int process_hna(int, olsr_u8_t, union olsr_ip_addr *, union hna_message *);
 
 /*
  * Local Variables:
index bca2ea3..4ece91c 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
@@ -25,7 +26,7 @@
 #include "ipc.h"
 
 int
-main (int argc, char *argv[])
+main(int argc, char *argv[])
 {
   struct hostent *hp;
   struct in_addr in;
@@ -37,60 +38,58 @@ main (int argc, char *argv[])
   GtkWidget *main_window;
 
 #ifdef WIN32
-  if (WSAStartup (0x0202, &WsaData))
-    {
-      fprintf (stderr, "Could not initialize WinSock.\n");
-      exit (1);
-    }
+  if (WSAStartup(0x0202, &WsaData)) {
+    fprintf(stderr, "Could not initialize WinSock.\n");
+    exit(1);
+  }
 #endif
 
   /* Get IP */
-  if ((hp = gethostbyname (argc > 1 ? argv[1] : "localhost")) == 0)
-    {
-      fprintf (stderr, "Not a valid host \"%s\"\n", argv[1]);
-      exit (1);
-    }
+  if ((hp = gethostbyname(argc > 1 ? argv[1] : "localhost")) == 0) {
+    fprintf(stderr, "Not a valid host \"%s\"\n", argv[1]);
+    exit(1);
+  }
 
-  in.s_addr = ((struct in_addr *) (hp->h_addr))->s_addr;
-  printf ("Address: %s\n", inet_ntoa (in));
+  in.s_addr = ((struct in_addr *)(hp->h_addr))->s_addr;
+  printf("Address: %s\n", inet_ntoa(in));
 
   /* fill in the socket structure with host information */
-  memset (&pin, 0, sizeof (pin));
+  memset(&pin, 0, sizeof(pin));
   pin.sin_family = AF_INET;
-  pin.sin_addr.s_addr = ((struct in_addr *) (hp->h_addr))->s_addr;
-  pin.sin_port = htons (IPC_PORT);
+  pin.sin_addr.s_addr = ((struct in_addr *)(hp->h_addr))->s_addr;
+  pin.sin_port = htons(IPC_PORT);
 
-  gtk_init (&argc, &argv);
+  gtk_init(&argc, &argv);
 
-  init_nodes ();
+  init_nodes();
 
   freeze_packets = 1;
   display_dec = 1;
 
   /* "Failsafe" values */
   ipversion = AF_INET;
-  ipsize = sizeof (struct in_addr);
+  ipsize = sizeof(struct in_addr);
 
-  main_window = create_main_window ();
-  gtk_widget_show (main_window);
+  main_window = create_main_window();
+  gtk_widget_show(main_window);
 
-  printf ("Done building GUI\n");
+  printf("Done building GUI\n");
 
-  memset (&main_addr, 0, sizeof (union olsr_ip_addr));
-  memset (&null_addr, 0, sizeof (union olsr_ip_addr));
+  memset(&main_addr, 0, sizeof(union olsr_ip_addr));
+  memset(&null_addr, 0, sizeof(union olsr_ip_addr));
 
   /* Terminate signal */
-  signal (SIGINT, shutdown_);
+  signal(SIGINT, shutdown_);
 
   /* Init node timeout */
   nodes_timeout = NEIGHB_HOLD_TIME_NW;
-  init_timer ((olsr_u32_t) (nodes_timeout * 1000), &hold_time_nodes);
+  init_timer((olsr_u32_t) (nodes_timeout * 1000), &hold_time_nodes);
 
-  ipc_connect (&pin);
+  ipc_connect(&pin);
 
-  add_timeouts ();
+  add_timeouts();
 
-  gtk_main ();
+  gtk_main();
   return 0;
 }
 
@@ -99,42 +98,42 @@ main (int argc, char *argv[])
  */
 
 int
-add_timeouts ()
+add_timeouts()
 {
 
   /*
    *Check socket for messages every IPC_INTERVAL
    *milliseconds
    */
-  gtk_timeout_add (IPC_INTERVAL, ipc_timeout, NULL);
+  gtk_timeout_add(IPC_INTERVAL, ipc_timeout, NULL);
 
   /*
    *Time out nodes
    */
   timeouts = 5;                 /* Wait 5 times befor starting timing out nodes */
-  gtk_timeout_add (TOP_HOLD_TIME, time_out_nodes, NULL);
+  gtk_timeout_add(TOP_HOLD_TIME, time_out_nodes, NULL);
 
   return 1;
 }
 
 gint
-ipc_timeout (gpointer data)
+ipc_timeout(gpointer data)
 {
 
-  ipc_read ();
+  ipc_read();
   return 1;
 }
 
 void
-shutdown_ (int signal)
+shutdown_(int signal)
 {
-  printf ("Cleaning up...\n");
+  printf("Cleaning up...\n");
 
-  if (ipc_close () < 0)
-    printf ("Could not close socket!\n");
+  if (ipc_close() < 0)
+    printf("Could not close socket!\n");
 
-  printf ("BYE-BYE!\n");
-  exit (signal);
+  printf("BYE-BYE!\n");
+  exit(signal);
 }
 
 /*
index 1938806..4005c45 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
 
 int timeouts;
 
-int add_timeouts ();
+int add_timeouts();
 
-gint ipc_timeout (gpointer);
+gint ipc_timeout(gpointer);
 
-void shutdown_ (int);
+void shutdown_(int);
 
 /*
  * Local Variables:
index 671e759..6e8b8bb 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
@@ -25,7 +26,7 @@
 #include <math.h>
 
 void
-init_nodes ()
+init_nodes()
 {
 
   nodes.next = &nodes;
@@ -37,20 +38,18 @@ init_nodes ()
  *NB! The list is NOT checked for duplicates!!
  */
 struct node *
-insert_node (struct node *n, olsr_u8_t vtime)
+insert_node(struct node *n, olsr_u8_t vtime)
 {
   struct node *new_node;
 
-  printf ("Inserting node %s\n",
-          ip_to_string ((union olsr_ip_addr *) &n->addr));
+  printf("Inserting node %s\n", ip_to_string((union olsr_ip_addr *)&n->addr));
 
-  if ((new_node = malloc (sizeof (struct node))) == 0)
-    {
-      fprintf (stderr, "OUT OF MEMORY!\n");
-      exit (1);
-    }
+  if ((new_node = malloc(sizeof(struct node))) == 0) {
+    fprintf(stderr, "OUT OF MEMORY!\n");
+    exit(1);
+  }
 
-  memcpy (new_node, n, sizeof (struct node));
+  memcpy(new_node, n, sizeof(struct node));
 
   /* queue */
   nodes.next->prev = new_node;
@@ -65,7 +64,7 @@ insert_node (struct node *n, olsr_u8_t vtime)
   new_node->mpr.next = &new_node->mpr;
   new_node->mpr.prev = &new_node->mpr;
 
-  update_timer_node (&n->addr, vtime);
+  update_timer_node(&n->addr, vtime);
 
   return new_node;
 }
@@ -74,7 +73,7 @@ insert_node (struct node *n, olsr_u8_t vtime)
  *Add a new node to the set
  */
 int
-add_node (union olsr_ip_addr *node, olsr_u8_t vtime)
+add_node(union olsr_ip_addr *node, olsr_u8_t vtime)
 {
   struct node new;
   struct node *tmp_nodes;
@@ -83,61 +82,55 @@ add_node (union olsr_ip_addr *node, olsr_u8_t vtime)
   olsr_u32_t time_value;
   struct mid *tmp_mid;
 
-  dbl_time = me_to_double (vtime);
+  dbl_time = me_to_double(vtime);
   time_value = (olsr_u32_t) dbl_time *1000;
 
   tmp_timer.tv_sec = time_value / 1000;
   tmp_timer.tv_usec = (time_value - (tmp_timer.tv_sec * 1000)) * 1000;
 
   /* Check if node exists */
-  for (tmp_nodes = nodes.next; tmp_nodes != &nodes;
-       tmp_nodes = tmp_nodes->next)
-    {
-      if (memcmp (&tmp_nodes->addr, node, ipsize) == 0)
-        {
-          //printf("updating timer for node %s\n", ip_to_string(node));
-          //printf("Updatimng timer for: %s\n", ip_to_string(node));
-          //printf("Secs: %d, usecs: %d\n", (int)tmp_timer.tv_sec, (int)tmp_timer.tv_usec);
-          gettimeofday (&now, (struct timezone *) NULL);
-          timeradd (&now, &tmp_timer, &tmp_nodes->timer);
-          return 0;
-        }
-      /* Check MID */
-      for (tmp_mid = tmp_nodes->mid.next; tmp_mid != &tmp_nodes->mid;
-           tmp_mid = tmp_mid->next)
-        {
-          if (memcmp (&tmp_mid->alias, node, ipsize) == 0)
-            {
-              //printf("updating timer for node %s\n", ip_to_string(node));
-              //printf("Updatimng timer for (MID): %s\n", ip_to_string(&tmp_nodes->addr));
-              //printf("Secs: %d, usecs: %d\n", (int)tmp_timer.tv_sec, (int)tmp_timer.tv_usec);
-              gettimeofday (&now, (struct timezone *) NULL);
-              timeradd (&now, &tmp_timer, &tmp_nodes->timer);
-              return 0;
-            }
-        }
+  for (tmp_nodes = nodes.next; tmp_nodes != &nodes; tmp_nodes = tmp_nodes->next) {
+    if (memcmp(&tmp_nodes->addr, node, ipsize) == 0) {
+      //printf("updating timer for node %s\n", ip_to_string(node));
+      //printf("Updatimng timer for: %s\n", ip_to_string(node));
+      //printf("Secs: %d, usecs: %d\n", (int)tmp_timer.tv_sec, (int)tmp_timer.tv_usec);
+      gettimeofday(&now, (struct timezone *)NULL);
+      timeradd(&now, &tmp_timer, &tmp_nodes->timer);
+      return 0;
     }
+    /* Check MID */
+    for (tmp_mid = tmp_nodes->mid.next; tmp_mid != &tmp_nodes->mid; tmp_mid = tmp_mid->next) {
+      if (memcmp(&tmp_mid->alias, node, ipsize) == 0) {
+        //printf("updating timer for node %s\n", ip_to_string(node));
+        //printf("Updatimng timer for (MID): %s\n", ip_to_string(&tmp_nodes->addr));
+        //printf("Secs: %d, usecs: %d\n", (int)tmp_timer.tv_sec, (int)tmp_timer.tv_usec);
+        gettimeofday(&now, (struct timezone *)NULL);
+        timeradd(&now, &tmp_timer, &tmp_nodes->timer);
+        return 0;
+      }
+    }
+  }
 
   /* New node */
-  memset (&new, 0, sizeof (struct node));
-  memcpy (&new.addr, node, ipsize);
+  memset(&new, 0, sizeof(struct node));
+  memcpy(&new.addr, node, ipsize);
   new.display = 1;
-  printf ("1:");
-  insert_node (&new, vtime);
-  update_nodes_list (&new);
+  printf("1:");
+  insert_node(&new, vtime);
+  update_nodes_list(&new);
 
   return 1;
 }
 
 int
-update_timer_node (union olsr_ip_addr *node, olsr_u8_t vtime)
+update_timer_node(union olsr_ip_addr *node, olsr_u8_t vtime)
 {
   struct node *tmp_nodes;
   struct timeval tmp_timer;
   double dbl_time;
   olsr_u32_t time_value;
 
-  dbl_time = me_to_double (vtime);
+  dbl_time = me_to_double(vtime);
   time_value = (olsr_u32_t) dbl_time *1000;
 
   tmp_timer.tv_sec = time_value / 1000;
@@ -146,19 +139,16 @@ update_timer_node (union olsr_ip_addr *node, olsr_u8_t vtime)
   //printf("Updatimng timer for: %s\n", ip_to_string(node));
   //printf("Secs: %d, usecs: %d\n", (int)tmp_timer.tv_sec, (int)tmp_timer.tv_usec);
 
-  for (tmp_nodes = nodes.next; tmp_nodes != &nodes;
-       tmp_nodes = tmp_nodes->next)
-    {
-      if (memcmp (&tmp_nodes->addr, node, ipsize) == 0)
-        {
-          //printf("updating timer for node %s\n", ip_to_string(node));
-          gettimeofday (&now, (struct timezone *) NULL);
-          timeradd (&now, &tmp_timer, &tmp_nodes->timer);
-          if (tmp_nodes->display)
-            update_nodes_list (tmp_nodes);
-          return 1;
-        }
+  for (tmp_nodes = nodes.next; tmp_nodes != &nodes; tmp_nodes = tmp_nodes->next) {
+    if (memcmp(&tmp_nodes->addr, node, ipsize) == 0) {
+      //printf("updating timer for node %s\n", ip_to_string(node));
+      gettimeofday(&now, (struct timezone *)NULL);
+      timeradd(&now, &tmp_timer, &tmp_nodes->timer);
+      if (tmp_nodes->display)
+        update_nodes_list(tmp_nodes);
+      return 1;
     }
+  }
 
   return 0;
 }
@@ -172,8 +162,7 @@ update_timer_node (union olsr_ip_addr *node, olsr_u8_t vtime)
  *@return 0 if node was added, 1 if not
  */
 int
-update_timer_mpr (union olsr_ip_addr *node, union olsr_ip_addr *mpr,
-                  olsr_u8_t vtime)
+update_timer_mpr(union olsr_ip_addr *node, union olsr_ip_addr *mpr, olsr_u8_t vtime)
 {
   struct node *tmp_nodes;
   struct mpr *tmp_mpr;
@@ -181,7 +170,7 @@ update_timer_mpr (union olsr_ip_addr *node, union olsr_ip_addr *mpr,
   double dbl_time;
   olsr_u32_t time_value;
 
-  dbl_time = me_to_double (vtime);
+  dbl_time = me_to_double(vtime);
   time_value = (olsr_u32_t) dbl_time *1000;
 
   tmp_timer.tv_sec = time_value / 1000;
@@ -191,35 +180,28 @@ update_timer_mpr (union olsr_ip_addr *node, union olsr_ip_addr *mpr,
   //printf("Secs: %d, usecs: %d\n", (int)tmp_timer.tv_sec, (int)tmp_timer.tv_usec);
 
   //printf("Updatimng timer for: %s\n", ip_to_string(node));
-  for (tmp_nodes = nodes.next; tmp_nodes != &nodes;
-       tmp_nodes = tmp_nodes->next)
-    {
-      if (memcmp (&tmp_nodes->addr, node, ipsize) == 0)
-        {
-          for (tmp_mpr = tmp_nodes->mpr.next; tmp_mpr != &tmp_nodes->mpr;
-               tmp_mpr = tmp_mpr->next)
-            {
-              if (memcmp (&tmp_mpr->addr, mpr, ipsize) == 0)
-                {
-                  //printf("updating timer for MPR %s ", ip_to_string(mpr));
-                  //printf("node %s\n", ip_to_string(node));
-                  gettimeofday (&now, (struct timezone *) NULL);
-                  timeradd (&now, &tmp_timer, &tmp_mpr->timer);
-                  return 1;
-                }
-            }
-          /* Only add if parent is added */
-          add_mpr (node, mpr, &tmp_timer);
-          return 0;
+  for (tmp_nodes = nodes.next; tmp_nodes != &nodes; tmp_nodes = tmp_nodes->next) {
+    if (memcmp(&tmp_nodes->addr, node, ipsize) == 0) {
+      for (tmp_mpr = tmp_nodes->mpr.next; tmp_mpr != &tmp_nodes->mpr; tmp_mpr = tmp_mpr->next) {
+        if (memcmp(&tmp_mpr->addr, mpr, ipsize) == 0) {
+          //printf("updating timer for MPR %s ", ip_to_string(mpr));
+          //printf("node %s\n", ip_to_string(node));
+          gettimeofday(&now, (struct timezone *)NULL);
+          timeradd(&now, &tmp_timer, &tmp_mpr->timer);
+          return 1;
         }
+      }
+      /* Only add if parent is added */
+      add_mpr(node, mpr, &tmp_timer);
+      return 0;
     }
+  }
 
   return 0;
 }
 
 int
-add_mid_node (union olsr_ip_addr *node, union olsr_ip_addr *alias,
-              olsr_u8_t vtime)
+add_mid_node(union olsr_ip_addr *node, union olsr_ip_addr *alias, olsr_u8_t vtime)
 {
 
   struct node *tmp_nodes;
@@ -230,71 +212,63 @@ add_mid_node (union olsr_ip_addr *node, union olsr_ip_addr *alias,
 
   //update_timer_node(node, vtime);
 
-  for (tmp_nodes = nodes.next; tmp_nodes != &nodes;
-       tmp_nodes = tmp_nodes->next)
-    {
-      if (memcmp (&tmp_nodes->addr, node, ipsize) == 0)
-        {
-          for (tmp_mid = tmp_nodes->mid.next; tmp_mid != &tmp_nodes->mid;
-               tmp_mid = tmp_mid->next)
-            {
-              if (memcmp (&tmp_mid->alias, alias, ipsize) == 0)
-                return 0;
-            }
-
-          /* we didn't find the address */
-          printf ("(1)NEW MID %s ", ip_to_string (alias));
-          printf ("ADDED FOR %s\n", ip_to_string (node));
-          if ((tmp_mid = malloc (sizeof (struct mid))) == 0)
-            {
-              fprintf (stderr, "OUT OF MEMORY\n");
-              exit (1);
-            }
-
-          memcpy (&tmp_mid->alias, alias, ipsize);
-
-          tmp_nodes->mid.next->prev = tmp_mid;
-          tmp_mid->next = tmp_nodes->mid.next;
-          tmp_nodes->mid.next = tmp_mid;
-          tmp_mid->prev = &tmp_nodes->mid;
-
-          remove_node_addr (alias);     // Remove if already registered as a node
-
-          update_nodes_list (tmp_nodes);
-          return 1;
+  for (tmp_nodes = nodes.next; tmp_nodes != &nodes; tmp_nodes = tmp_nodes->next) {
+    if (memcmp(&tmp_nodes->addr, node, ipsize) == 0) {
+      for (tmp_mid = tmp_nodes->mid.next; tmp_mid != &tmp_nodes->mid; tmp_mid = tmp_mid->next) {
+        if (memcmp(&tmp_mid->alias, alias, ipsize) == 0)
+          return 0;
+      }
+
+      /* we didn't find the address */
+      printf("(1)NEW MID %s ", ip_to_string(alias));
+      printf("ADDED FOR %s\n", ip_to_string(node));
+      if ((tmp_mid = malloc(sizeof(struct mid))) == 0) {
+        fprintf(stderr, "OUT OF MEMORY\n");
+        exit(1);
+      }
+
+      memcpy(&tmp_mid->alias, alias, ipsize);
+
+      tmp_nodes->mid.next->prev = tmp_mid;
+      tmp_mid->next = tmp_nodes->mid.next;
+      tmp_nodes->mid.next = tmp_mid;
+      tmp_mid->prev = &tmp_nodes->mid;
+
+      remove_node_addr(alias);  // Remove if already registered as a node
+
+      update_nodes_list(tmp_nodes);
+      return 1;
 
-        }
     }
+  }
 
   /*New node */
 
-  printf ("ADDING NEW NODE %s FROM MID...\n", ip_to_string (node));
+  printf("ADDING NEW NODE %s FROM MID...\n", ip_to_string(node));
   /* We don't know wery much... */
-  memset (&new, 0, sizeof (struct node));
-  memcpy (&new.addr, node, ipsize);
-  inserted = insert_node (&new, vtime);
-
-  if ((tmp_mid = malloc (sizeof (struct mid))) == 0)
-    {
-      fprintf (stderr, "OUT OF MEMORY!\n");
-      exit (1);
-    }
+  memset(&new, 0, sizeof(struct node));
+  memcpy(&new.addr, node, ipsize);
+  inserted = insert_node(&new, vtime);
+
+  if ((tmp_mid = malloc(sizeof(struct mid))) == 0) {
+    fprintf(stderr, "OUT OF MEMORY!\n");
+    exit(1);
+  }
 
-  memcpy (&tmp_mid->alias, alias, ipsize);
+  memcpy(&tmp_mid->alias, alias, ipsize);
 
   tmp_mid->next = &inserted->mid;
   tmp_mid->prev = &inserted->mid;
   inserted->mid.next = tmp_mid;
   inserted->mid.prev = tmp_mid;
 
-  update_nodes_list (inserted);
+  update_nodes_list(inserted);
 
   return 2;
 }
 
 int
-add_hna_node (union olsr_ip_addr *node, union olsr_ip_addr *net,
-              union olsr_ip_addr *mask, olsr_u8_t vtime)
+add_hna_node(union olsr_ip_addr *node, union olsr_ip_addr *net, union olsr_ip_addr *mask, olsr_u8_t vtime)
 {
 
   struct node *tmp_nodes;
@@ -303,65 +277,58 @@ add_hna_node (union olsr_ip_addr *node, union olsr_ip_addr *net,
 
   //printf("HNA: %s\n", ip_to_string(&net));
 
-  update_timer_node (node, vtime);
-
-  for (tmp_nodes = nodes.next; tmp_nodes != &nodes;
-       tmp_nodes = tmp_nodes->next)
-    {
-      if (memcmp (&tmp_nodes->addr, node, ipsize) == 0)
-        {
-          for (tmp_hna = tmp_nodes->hna.next; tmp_hna != &tmp_nodes->hna;
-               tmp_hna = tmp_hna->next)
-            {
-              if ((memcmp (&tmp_hna->net, net, ipsize) == 0)
-                  && (memcmp (&tmp_hna->mask, mask, ipsize) == 0))
-                return 0;
-            }
-
-          //printf("NEW HNA ADDED FOR %s ", ip_to_string(node));
-          //printf("net: %s \n", ip_to_string(&net));
-          /* we didn't find the address */
-          if ((tmp_hna = malloc (sizeof (struct hna))) == 0)
-            {
-              fprintf (stderr, "OUT OF MEMORY\n");
-              exit (1);
-            }
-
-          memcpy (&tmp_hna->net, net, ipsize);
-          memcpy (&tmp_hna->mask, mask, ipsize);
-
-          /* queue */
-          tmp_nodes->hna.next->prev = tmp_hna;
-          tmp_hna->next = tmp_nodes->hna.next;
-          tmp_nodes->hna.next = tmp_hna;
-          tmp_hna->prev = &tmp_nodes->hna;
-
-          update_nodes_list (tmp_nodes);
-          return 1;
-        }
+  update_timer_node(node, vtime);
+
+  for (tmp_nodes = nodes.next; tmp_nodes != &nodes; tmp_nodes = tmp_nodes->next) {
+    if (memcmp(&tmp_nodes->addr, node, ipsize) == 0) {
+      for (tmp_hna = tmp_nodes->hna.next; tmp_hna != &tmp_nodes->hna; tmp_hna = tmp_hna->next) {
+        if ((memcmp(&tmp_hna->net, net, ipsize) == 0)
+            && (memcmp(&tmp_hna->mask, mask, ipsize) == 0))
+          return 0;
+      }
+
+      //printf("NEW HNA ADDED FOR %s ", ip_to_string(node));
+      //printf("net: %s \n", ip_to_string(&net));
+      /* we didn't find the address */
+      if ((tmp_hna = malloc(sizeof(struct hna))) == 0) {
+        fprintf(stderr, "OUT OF MEMORY\n");
+        exit(1);
+      }
+
+      memcpy(&tmp_hna->net, net, ipsize);
+      memcpy(&tmp_hna->mask, mask, ipsize);
+
+      /* queue */
+      tmp_nodes->hna.next->prev = tmp_hna;
+      tmp_hna->next = tmp_nodes->hna.next;
+      tmp_nodes->hna.next = tmp_hna;
+      tmp_hna->prev = &tmp_nodes->hna;
+
+      update_nodes_list(tmp_nodes);
+      return 1;
     }
+  }
 
-  printf ("ADDING NEW NODE %s FROM HNA...\n", ip_to_string (node));
+  printf("ADDING NEW NODE %s FROM HNA...\n", ip_to_string(node));
   /* We don't know wery much... */
-  memset (&new, 0, sizeof (struct node));
-  memcpy (&new.addr, node, ipsize);
-  inserted = insert_node (&new, vtime);
-
-  if ((tmp_hna = malloc (sizeof (struct hna))) == 0)
-    {
-      fprintf (stderr, "OUT OF MEMORY!\n");
-      exit (1);
-    }
+  memset(&new, 0, sizeof(struct node));
+  memcpy(&new.addr, node, ipsize);
+  inserted = insert_node(&new, vtime);
 
-  memcpy (&tmp_hna->net, net, ipsize);
-  memcpy (&tmp_hna->mask, mask, ipsize);
+  if ((tmp_hna = malloc(sizeof(struct hna))) == 0) {
+    fprintf(stderr, "OUT OF MEMORY!\n");
+    exit(1);
+  }
+
+  memcpy(&tmp_hna->net, net, ipsize);
+  memcpy(&tmp_hna->mask, mask, ipsize);
 
   tmp_hna->next = &inserted->hna;
   tmp_hna->prev = &inserted->hna;
   inserted->hna.next = tmp_hna;
   inserted->hna.prev = tmp_hna;
 
-  update_nodes_list (inserted);
+  update_nodes_list(inserted);
 
   return 2;
 }
@@ -375,95 +342,85 @@ add_hna_node (union olsr_ip_addr *node, union olsr_ip_addr *net,
  *@return negative if node already registered or node not found
  */
 int
-add_mpr (union olsr_ip_addr *node, union olsr_ip_addr *mpr,
-         struct timeval *tmp_timer)
+add_mpr(union olsr_ip_addr *node, union olsr_ip_addr *mpr, struct timeval *tmp_timer)
 {
 
   struct node *tmp_nodes;
   struct mpr *mprs;
   struct mpr *tmp_mpr;
 
-  for (tmp_nodes = nodes.next; tmp_nodes != &nodes;
-       tmp_nodes = tmp_nodes->next)
-    {
-      if (memcmp (&tmp_nodes->addr, node, ipsize) == 0)
-        {
-          for (mprs = tmp_nodes->mpr.next; mprs != &tmp_nodes->mpr;
-               mprs = mprs->next)
-            {
-              if (memcmp (&mprs->addr, mpr, ipsize) == 0)
-                return 0;
-            }
-
-          //printf("Adding MPR %s to ", ip_to_string(mpr));
-          //printf("%s\n", ip_to_string(node));
-          /* Add mpr */
-
-          if ((tmp_mpr = malloc (sizeof (struct mpr))) == 0)
-            {
-              fprintf (stderr, "OUT OF MEMORY\n");
-              exit (1);
-            }
-
-          memcpy (&tmp_mpr->addr, mpr, ipsize);
-
-          gettimeofday (&now, (struct timezone *) NULL);
-          timeradd (&now, tmp_timer, &tmp_mpr->timer);
-
-          /* queue */
-          tmp_nodes->mpr.next->prev = tmp_mpr;
-          tmp_mpr->next = tmp_nodes->mpr.next;
-          tmp_nodes->mpr.next = tmp_mpr;
-          tmp_mpr->prev = &tmp_nodes->mpr;
-
-          update_nodes_list (tmp_nodes);
-          return 1;
+  for (tmp_nodes = nodes.next; tmp_nodes != &nodes; tmp_nodes = tmp_nodes->next) {
+    if (memcmp(&tmp_nodes->addr, node, ipsize) == 0) {
+      for (mprs = tmp_nodes->mpr.next; mprs != &tmp_nodes->mpr; mprs = mprs->next) {
+        if (memcmp(&mprs->addr, mpr, ipsize) == 0)
+          return 0;
+      }
+
+      //printf("Adding MPR %s to ", ip_to_string(mpr));
+      //printf("%s\n", ip_to_string(node));
+      /* Add mpr */
+
+      if ((tmp_mpr = malloc(sizeof(struct mpr))) == 0) {
+        fprintf(stderr, "OUT OF MEMORY\n");
+        exit(1);
+      }
+
+      memcpy(&tmp_mpr->addr, mpr, ipsize);
+
+      gettimeofday(&now, (struct timezone *)NULL);
+      timeradd(&now, tmp_timer, &tmp_mpr->timer);
+
+      /* queue */
+      tmp_nodes->mpr.next->prev = tmp_mpr;
+      tmp_mpr->next = tmp_nodes->mpr.next;
+      tmp_nodes->mpr.next = tmp_mpr;
+      tmp_mpr->prev = &tmp_nodes->mpr;
+
+      update_nodes_list(tmp_nodes);
+      return 1;
 
-        }
     }
+  }
 
   return 1;
 }
 
 int
-remove_node (struct node *node)
+remove_node(struct node *node)
 {
   struct hna *tmp_hna, *tmp_hna2;
   struct mid *tmp_mid, *tmp_mid2;
   struct mpr *tmp_mpr, *tmp_mpr2;
 
-  printf ("Remove node %s\n", ip_to_string (&node->addr));
+  printf("Remove node %s\n", ip_to_string(&node->addr));
 
   tmp_hna = node->hna.next;
-  while (tmp_hna != &node->hna)
-    {
-      tmp_hna2 = tmp_hna;
-      tmp_hna = tmp_hna->next;
-      free (tmp_hna2);
-    }
+  while (tmp_hna != &node->hna) {
+    tmp_hna2 = tmp_hna;
+    tmp_hna = tmp_hna->next;
+    free(tmp_hna2);
+  }
   tmp_mpr = node->mpr.next;
-  while (tmp_mpr != &node->mpr)
-    {
-      tmp_mpr2 = tmp_mpr;
-      tmp_mpr = tmp_mpr->next;
-      free (tmp_mpr2);
-    }
+  while (tmp_mpr != &node->mpr) {
+    tmp_mpr2 = tmp_mpr;
+    tmp_mpr = tmp_mpr->next;
+    free(tmp_mpr2);
+  }
   tmp_mid = node->mid.next;
-  while (tmp_mid != &node->mid)
-    {
-      tmp_mid2 = tmp_mid;
-      tmp_mid = tmp_mid->next;
-      free (tmp_mid2);
-    }
+  while (tmp_mid != &node->mid) {
+    tmp_mid2 = tmp_mid;
+    tmp_mid = tmp_mid->next;
+    free(tmp_mid2);
+  }
 
   /* Gemove form GUI */
-  remove_nodes_list (&node->addr);
+  remove_nodes_list(&node->addr);
 
   /* Dequeue */
   node->prev->next = node->next;
   node->next->prev = node->prev;
 
-  free (node);
+  free(node);
 
   return 1;
 }
@@ -473,91 +430,81 @@ remove_node (struct node *node)
  */
 
 int
-remove_node_addr (union olsr_ip_addr *node)
+remove_node_addr(union olsr_ip_addr *node)
 {
   struct node *tmp_nodes;
   struct hna *tmp_hna, *tmp_hna2;
   struct mid *tmp_mid, *tmp_mid2;
   struct mpr *tmp_mpr, *tmp_mpr2;
 
-  printf ("Remove node %s\n", ip_to_string (node));
+  printf("Remove node %s\n", ip_to_string(node));
 
   tmp_nodes = nodes.next;
 
-  while (tmp_nodes != &nodes)
-    {
-      if (memcmp (&tmp_nodes->addr, node, ipsize) == 0)
-        {
-          printf ("(2)Deleting node %s\n",
-                  ip_to_string ((union olsr_ip_addr *) &tmp_nodes->addr));
-
-          tmp_hna = tmp_nodes->hna.next;
-          while (tmp_hna != &tmp_nodes->hna)
-            {
-              tmp_hna2 = tmp_hna;
-              tmp_hna = tmp_hna->next;
-              free (tmp_hna2);
-            }
-          tmp_mpr = tmp_nodes->mpr.next;
-          while (tmp_mpr != &tmp_nodes->mpr)
-            {
-              tmp_mpr2 = tmp_mpr;
-              tmp_mpr = tmp_mpr->next;
-              free (tmp_mpr2);
-            }
-          tmp_mid = tmp_nodes->mid.next;
-          while (tmp_mid != &tmp_nodes->mid)
-            {
-              tmp_mid2 = tmp_mid;
-              tmp_mid = tmp_mid->next;
-              free (tmp_mid2);
-            }
-
-          /* Gemove form GUI */
-          remove_nodes_list (&tmp_nodes->addr);
+  while (tmp_nodes != &nodes) {
+    if (memcmp(&tmp_nodes->addr, node, ipsize) == 0) {
+      printf("(2)Deleting node %s\n", ip_to_string((union olsr_ip_addr *)&tmp_nodes->addr));
+
+      tmp_hna = tmp_nodes->hna.next;
+      while (tmp_hna != &tmp_nodes->hna) {
+        tmp_hna2 = tmp_hna;
+        tmp_hna = tmp_hna->next;
+        free(tmp_hna2);
+      }
+      tmp_mpr = tmp_nodes->mpr.next;
+      while (tmp_mpr != &tmp_nodes->mpr) {
+        tmp_mpr2 = tmp_mpr;
+        tmp_mpr = tmp_mpr->next;
+        free(tmp_mpr2);
+      }
+      tmp_mid = tmp_nodes->mid.next;
+      while (tmp_mid != &tmp_nodes->mid) {
+        tmp_mid2 = tmp_mid;
+        tmp_mid = tmp_mid->next;
+        free(tmp_mid2);
+      }
+
+      /* Gemove form GUI */
+      remove_nodes_list(&tmp_nodes->addr);
+
+      /* Dequeue */
+      tmp_nodes->prev->next = tmp_nodes->next;
+      tmp_nodes->next->prev = tmp_nodes->prev;
+
+      free(tmp_nodes);
 
-          /* Dequeue */
-          tmp_nodes->prev->next = tmp_nodes->next;
-          tmp_nodes->next->prev = tmp_nodes->prev;
-
-          free (tmp_nodes);
-
-          return 1;
-        }
-
-      tmp_nodes = tmp_nodes->next;
+      return 1;
     }
 
+    tmp_nodes = tmp_nodes->next;
+  }
+
   return 0;
 }
 
 struct node *
-find_node (char *ip)
+find_node(char *ip)
 {
   struct node *tmp_nodes;
 
-  for (tmp_nodes = nodes.next; tmp_nodes != &nodes;
-       tmp_nodes = tmp_nodes->next)
-    {
-      if (strcmp (ip_to_string ((union olsr_ip_addr *) &tmp_nodes->addr), ip)
-          == 0)
-        return tmp_nodes;
-    }
+  for (tmp_nodes = nodes.next; tmp_nodes != &nodes; tmp_nodes = tmp_nodes->next) {
+    if (strcmp(ip_to_string((union olsr_ip_addr *)&tmp_nodes->addr), ip)
+        == 0)
+      return tmp_nodes;
+  }
 
   return NULL;
 }
 
 struct node *
-find_node_t (union olsr_ip_addr *ip)
+find_node_t(union olsr_ip_addr *ip)
 {
   struct node *tmp_nodes;
 
-  for (tmp_nodes = nodes.next; tmp_nodes != &nodes;
-       tmp_nodes = tmp_nodes->next)
-    {
-      if (memcmp (&tmp_nodes->addr, ip, ipsize) == 0)
-        return tmp_nodes;
-    }
+  for (tmp_nodes = nodes.next; tmp_nodes != &nodes; tmp_nodes = tmp_nodes->next) {
+    if (memcmp(&tmp_nodes->addr, ip, ipsize) == 0)
+      return tmp_nodes;
+  }
 
   return 0;
 }
@@ -566,41 +513,35 @@ find_node_t (union olsr_ip_addr *ip)
  *Remove timed out nodes
  */
 gint
-time_out_nodes (gpointer data)
+time_out_nodes(gpointer data)
 {
   struct node *tmp_nodes;
   struct node *node_to_delete;
 
   /* Wait before starting timing out */
-  if (timeouts)
-    {
-      timeouts--;
-      //printf("Waiting...\n");
-      return 1;
-    }
-
+  if (timeouts) {
+    timeouts--;
+    //printf("Waiting...\n");
+    return 1;
+  }
   //printf("Timing out nodes...\n");
-  gettimeofday (&now, (struct timezone *) NULL);
+  gettimeofday(&now, (struct timezone *)NULL);
 
   tmp_nodes = nodes.next;
 
-  while (tmp_nodes != &nodes)
-    {
-      //printf("%s: %6d < %6d\n", ip_to_string(&tmp_nodes->addr), tmp_nodes->timer.tv_sec, now.tv_sec);
-      if (timercmp (&tmp_nodes->timer, &now, <))
-        {
-          printf ("Node %s timed out...\n",
-                  ip_to_string ((union olsr_ip_addr *) &tmp_nodes->addr));
-          node_to_delete = tmp_nodes;
+  while (tmp_nodes != &nodes) {
+    //printf("%s: %6d < %6d\n", ip_to_string(&tmp_nodes->addr), tmp_nodes->timer.tv_sec, now.tv_sec);
+    if (timercmp(&tmp_nodes->timer, &now, <)) {
+      printf("Node %s timed out...\n", ip_to_string((union olsr_ip_addr *)&tmp_nodes->addr));
+      node_to_delete = tmp_nodes;
 
-          tmp_nodes = tmp_nodes->next;
+      tmp_nodes = tmp_nodes->next;
 
-          remove_nodes_list (&node_to_delete->addr);
-          remove_node (node_to_delete);
-        }
-      else
-        tmp_nodes = tmp_nodes->next;
-    }
+      remove_nodes_list(&node_to_delete->addr);
+      remove_node(node_to_delete);
+    } else
+      tmp_nodes = tmp_nodes->next;
+  }
 
   return 1;
 }
@@ -612,14 +553,14 @@ time_out_nodes (gpointer data)
  *@return negative if node not found
  */
 int
-time_out_mprs (union olsr_ip_addr *node)
+time_out_mprs(union olsr_ip_addr *node)
 {
 
   struct node *tmp_nodes;
   struct mpr *mpr_to_delete;
   struct mpr *tmp_mpr;
 
-  gettimeofday (&now, (struct timezone *) NULL);
+  gettimeofday(&now, (struct timezone *)NULL);
 
   /* W A R N I N G !
    *
@@ -627,47 +568,37 @@ time_out_mprs (union olsr_ip_addr *node)
    * -Andreas
    */
 
-  for (tmp_nodes = nodes.next; tmp_nodes != &nodes;
-       tmp_nodes = tmp_nodes->next)
-    {
-      if (memcmp (&tmp_nodes->addr, node, ipsize) == 0)
-        {
-          tmp_mpr = tmp_nodes->mpr.next;
-
-          while (tmp_mpr != &tmp_nodes->mpr)
-            {
-              if (timercmp (&tmp_mpr->timer, &now, <))
-                {
-                  printf ("MPR %s OF NODE ",
-                          ip_to_string ((union olsr_ip_addr *) &tmp_mpr->
-                                        addr));
-                  printf ("%s TIMIED OUT ",
-                          ip_to_string ((union olsr_ip_addr *) &tmp_nodes->
-                                        addr));
-                  fflush (stdout);
-
-                  mpr_to_delete = tmp_mpr;
-                  tmp_mpr = tmp_mpr->next;
-
-                  /* Dequeue */
-                  mpr_to_delete->next->prev = mpr_to_delete->prev;
-                  mpr_to_delete->prev->next = mpr_to_delete->next;
-                  /* Delete */
-                  free (mpr_to_delete);
-                }
-              else
-                tmp_mpr = tmp_mpr->next;
-            }
+  for (tmp_nodes = nodes.next; tmp_nodes != &nodes; tmp_nodes = tmp_nodes->next) {
+    if (memcmp(&tmp_nodes->addr, node, ipsize) == 0) {
+      tmp_mpr = tmp_nodes->mpr.next;
 
-          return 1;
-        }
+      while (tmp_mpr != &tmp_nodes->mpr) {
+        if (timercmp(&tmp_mpr->timer, &now, <)) {
+          printf("MPR %s OF NODE ", ip_to_string((union olsr_ip_addr *)&tmp_mpr->addr));
+          printf("%s TIMIED OUT ", ip_to_string((union olsr_ip_addr *)&tmp_nodes->addr));
+          fflush(stdout);
+
+          mpr_to_delete = tmp_mpr;
+          tmp_mpr = tmp_mpr->next;
+
+          /* Dequeue */
+          mpr_to_delete->next->prev = mpr_to_delete->prev;
+          mpr_to_delete->prev->next = mpr_to_delete->next;
+          /* Delete */
+          free(mpr_to_delete);
+        } else
+          tmp_mpr = tmp_mpr->next;
+      }
+
+      return 1;
     }
+  }
 
   return 0;
 }
 
 void
-init_timer (olsr_u32_t time_value, struct timeval *hold_timer)
+init_timer(olsr_u32_t time_value, struct timeval *hold_timer)
 {
   olsr_u16_t time_value_sec = 0;
   olsr_u16_t time_value_msec = 0;
@@ -695,12 +626,11 @@ init_timer (olsr_u32_t time_value, struct timeval *hold_timer)
  *@return a double value
  */
 double
-me_to_double (olsr_u8_t me)
+me_to_double(olsr_u8_t me)
 {
   int a = me >> 4;
   int b = me - a * 16;
-  return (double) (VTIME_SCALE_FACTOR * (1 + (double) a / 16) *
-                   (double) pow (2, b));
+  return (double)(VTIME_SCALE_FACTOR * (1 + (double)a / 16) * (double)pow(2, b));
 }
 
 /*
index d691199..e5b3039 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
 //#include <time.h>
 
 struct timeval now;
-struct timeval hold_time_nodes; /* Timeout for all nodes */
+struct timeval hold_time_nodes;        /* Timeout for all nodes */
 
 /* The node list */
 struct node nodes;
 
-struct node *insert_node (struct node *, olsr_u8_t);
+struct node *insert_node(struct node *, olsr_u8_t);
 
-int remove_node (struct node *);
+int remove_node(struct node *);
 
-int remove_node_addr (union olsr_ip_addr *);
+int remove_node_addr(union olsr_ip_addr *);
 
-double me_to_double (olsr_u8_t);
+double me_to_double(olsr_u8_t);
 
 /*
  * Local Variables:
index bacc77b..6fbd32c 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
index a6aa635..a458a7c 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
@@ -58,8 +59,7 @@ typedef int32_t olsr_32_t;
 /* IPv6 address format in6_addr */
 #include <netinet/in.h>
 
-union olsr_ip_addr
-{
+union olsr_ip_addr {
   olsr_u32_t v4;
   struct in6_addr v6;
 };
@@ -80,6 +80,7 @@ union olsr_ip_addr
  */
 
 #define NEIGHB_HOLD_TIME      3 * REFRESH_INTERVAL
+
 /*extra: time to delete for non-wireless interfaces */
 #define NEIGHB_HOLD_TIME_NW   NEIGHB_HOLD_TIME * 2
 #define TOP_HOLD_TIME         3 * TC_INTERVAL
@@ -192,16 +193,14 @@ union olsr_ip_addr
 /*
  *Hello info
  */
-struct hellinfo
-{
+struct hellinfo {
   olsr_u8_t link_code;
   olsr_u8_t reserved;
   olsr_u16_t size;
-  olsr_u32_t neigh_addr[1];     /* neighbor IP address(es) */
+  olsr_u32_t neigh_addr[1];            /* neighbor IP address(es) */
 };
 
-struct hellomsg
-{
+struct hellomsg {
   olsr_u16_t reserved;
   olsr_u8_t htime;
   olsr_u8_t willingness;
@@ -212,16 +211,14 @@ struct hellomsg
  *IPv6
  */
 
-struct hellinfo6
-{
+struct hellinfo6 {
   olsr_u8_t link_code;
   olsr_u8_t reserved;
   olsr_u16_t size;
-  struct in6_addr neigh_addr[1];        /* neighbor IP address(es) */
+  struct in6_addr neigh_addr[1];       /* neighbor IP address(es) */
 };
 
-struct hellomsg6
-{
+struct hellomsg6 {
   olsr_u16_t reserved;
   olsr_u8_t htime;
   olsr_u8_t willingness;
@@ -232,13 +229,11 @@ struct hellomsg6
  * Topology Control packet
  */
 
-struct neigh_info
-{
+struct neigh_info {
   olsr_u32_t addr;
 };
 
-struct olsr_tcmsg
-{
+struct olsr_tcmsg {
   olsr_u16_t ansn;
   olsr_u16_t reserved;
   struct neigh_info neigh[1];
@@ -248,13 +243,11 @@ struct olsr_tcmsg
  *IPv6
  */
 
-struct neigh_info6
-{
+struct neigh_info6 {
   struct in6_addr addr;
 };
 
-struct olsr_tcmsg6
-{
+struct olsr_tcmsg6 {
   olsr_u16_t ansn;
   olsr_u16_t reserved;
   struct neigh_info6 neigh[1];
@@ -269,40 +262,34 @@ struct olsr_tcmsg6
  * For example: do we want to tell what type of interface
  * is associated whit each address?
  */
-struct midaddr
-{
+struct midaddr {
   olsr_u32_t addr;
 };
 
-struct midmsg
-{
+struct midmsg {
   struct midaddr mid_addr[1];
 };
 
 /*
  *IPv6
  */
-struct midaddr6
-{
+struct midaddr6 {
   struct in6_addr addr;
 };
 
-struct midmsg6
-{
+struct midmsg6 {
   struct midaddr6 mid_addr[1];
 };
 
 /*
  * Host and Network Association message
  */
-struct hnapair
-{
+struct hnapair {
   olsr_u32_t addr;
   olsr_u32_t netmask;
 };
 
-struct hnamsg
-{
+struct hnamsg {
   struct hnapair hna_net[1];
 };
 
@@ -310,14 +297,12 @@ struct hnamsg
  *IPv6
  */
 
-struct hnapair6
-{
+struct hnapair6 {
   struct in6_addr addr;
   struct in6_addr netmask;
 };
 
-struct hnamsg6
-{
+struct hnamsg6 {
   struct hnapair6 hna_net[1];
 };
 
@@ -325,8 +310,7 @@ struct hnamsg6
  * OLSR message (several can exist in one OLSR packet)
  */
 
-struct olsrmsg
-{
+struct olsrmsg {
   olsr_u8_t olsr_msgtype;
   olsr_u8_t olsr_vtime;
   olsr_u16_t olsr_msgsize;
@@ -335,8 +319,7 @@ struct olsrmsg
   olsr_u8_t hopcnt;
   olsr_u16_t seqno;
 
-  union
-  {
+  union {
     struct hellomsg hello;
     struct olsr_tcmsg tc;
     struct hnamsg hna;
@@ -349,8 +332,7 @@ struct olsrmsg
  *IPv6
  */
 
-struct olsrmsg6
-{
+struct olsrmsg6 {
   olsr_u8_t olsr_msgtype;
   olsr_u8_t olsr_vtime;
   olsr_u16_t olsr_msgsize;
@@ -359,8 +341,7 @@ struct olsrmsg6
   olsr_u8_t hopcnt;
   olsr_u16_t seqno;
 
-  union
-  {
+  union {
     struct hellomsg6 hello;
     struct olsr_tcmsg6 tc;
     struct hnamsg6 hna;
@@ -373,30 +354,26 @@ struct olsrmsg6
  * Generic OLSR packet
  */
 
-struct olsr
-{
-  olsr_u16_t olsr_packlen;      /* packet length */
+struct olsr {
+  olsr_u16_t olsr_packlen;             /* packet length */
   olsr_u16_t olsr_seqno;
-  struct olsrmsg olsr_msg[1];   /* variable messages */
+  struct olsrmsg olsr_msg[1];          /* variable messages */
 };
 
-struct olsr6
-{
-  olsr_u16_t olsr_packlen;      /* packet length */
+struct olsr6 {
+  olsr_u16_t olsr_packlen;             /* packet length */
   olsr_u16_t olsr_seqno;
-  struct olsrmsg6 olsr_msg[1];  /* variable messages */
+  struct olsrmsg6 olsr_msg[1];         /* variable messages */
 };
 
 /* IPv4 <-> IPv6 compability */
 
-union olsr_message
-{
+union olsr_message {
   struct olsrmsg v4;
   struct olsrmsg6 v6;
 };
 
-union olsr_packet
-{
+union olsr_packet {
   struct olsr v4;
   struct olsr6 v6;
 };
index 84d8b36..8177c66 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
@@ -38,61 +39,55 @@ int no_packets = 0;
  *the cached packets
  */
 int
-add_packet_to_buffer (union olsr_message *p, int size)
+add_packet_to_buffer(union olsr_message *p, int size)
 {
   struct packnode *tmp;
   /* Should be the same for v4 and v6 */
 
   /* If this is the first packet */
-  if (!packets)
-    {
-      //printf("Adding first packet\n");
-      packets = malloc (sizeof (struct packnode));
-      packets->packet = malloc (size);
-      memcpy (packets->packet, p, size);
-      packets->next = NULL;
+  if (!packets) {
+    //printf("Adding first packet\n");
+    packets = malloc(sizeof(struct packnode));
+    packets->packet = malloc(size);
+    memcpy(packets->packet, p, size);
+    packets->next = NULL;
+    no_packets++;
+    return 1;
+  } else {
+    /* If the buffer is not full */
+    if (no_packets < MAXPACKS) {
+      //printf("Buffer not filled yet..\n");
+      tmp = packets;
+      packets = malloc(sizeof(struct packnode));
+      packets->packet = malloc(size);
+      memcpy(packets->packet, p, size);
+      packets->next = tmp;
       no_packets++;
       return 1;
     }
-  else
-    {
-      /* If the buffer is not full */
-      if (no_packets < MAXPACKS)
-        {
-          //printf("Buffer not filled yet..\n");
-          tmp = packets;
-          packets = malloc (sizeof (struct packnode));
-          packets->packet = malloc (size);
-          memcpy (packets->packet, p, size);
-          packets->next = tmp;
-          no_packets++;
-          return 1;
-        }
-      /* If buffer is full */
-      else
-        {
-          //printf("Buffer full - deleting...\n");
-          tmp = packets;
-          /* Find second last packet */
-          while (tmp->next->next)
-            {
-              tmp = tmp->next;
-            }
-          /* Delete last packet */
-          free (tmp->next->packet);
-          free (tmp->next);
-          tmp->next = NULL;
-
-          /*Add the new packet */
-          tmp = packets;
-          packets = malloc (sizeof (struct packnode));
-          packets->packet = malloc (size);
-          memcpy (packets->packet, p, size);
-          packets->next = tmp;
-          return 1;
-        }
+    /* If buffer is full */
+    else {
+      //printf("Buffer full - deleting...\n");
+      tmp = packets;
+      /* Find second last packet */
+      while (tmp->next->next) {
+        tmp = tmp->next;
+      }
+      /* Delete last packet */
+      free(tmp->next->packet);
+      free(tmp->next);
+      tmp->next = NULL;
 
+      /*Add the new packet */
+      tmp = packets;
+      packets = malloc(sizeof(struct packnode));
+      packets->packet = malloc(size);
+      memcpy(packets->packet, p, size);
+      packets->next = tmp;
+      return 1;
     }
+
+  }
   return 0;
 }
 
@@ -100,7 +95,7 @@ add_packet_to_buffer (union olsr_message *p, int size)
  *Get the packet with index 'index'
  */
 union olsr_message *
-get_packet (int index)
+get_packet(int index)
 {
   int i = 0;
   struct packnode *tmp;
@@ -113,11 +108,10 @@ get_packet (int index)
 
   tmp = packets;
 
-  while (i != index)
-    {
-      tmp = tmp->next;
-      i++;
-    }
+  while (i != index) {
+    tmp = tmp->next;
+    i++;
+  }
   return tmp->packet;
 
 }
index 7f9fb0f..96ac5bc 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
@@ -30,8 +31,7 @@
 #ifndef _PACKET_H
 #define _PACKET_H
 
-struct packnode
-{
+struct packnode {
   union olsr_message *packet;
   struct packnode *next;
 };
@@ -40,26 +40,22 @@ struct packnode
  * Unions for IPv4 <-> IPv6 compability
  */
 
-union hello_message
-{
+union hello_message {
   struct hellomsg v4;
   struct hellomsg6 v6;
 };
 
-union tc_message
-{
+union tc_message {
   struct olsr_tcmsg v4;
   struct olsr_tcmsg6 v6;
 };
 
-union mid_message
-{
+union mid_message {
   struct midmsg v4;
   struct midmsg6 v6;
 };
 
-union hna_message
-{
+union hna_message {
   struct hnamsg v4;
   struct hnamsg6 v6;
 };
index f401f35..cf863ff 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
index b97d981..9269b97 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
@@ -31,7 +32,7 @@
 #include "routes.h"
 
 int
-init_route_entries ()
+init_route_entries()
 {
   route_count = 0;
 
@@ -42,15 +43,14 @@ init_route_entries ()
 }
 
 int
-add_route_entry (struct route_entry *entry)
+add_route_entry(struct route_entry *entry)
 {
   struct route_entry *new_entry;
 
-  if ((new_entry = malloc (sizeof (struct route_entry))) == 0)
-    {
-      fprintf (stderr, "OUT OF MEMORY!\n");
-      exit (1);
-    }
+  if ((new_entry = malloc(sizeof(struct route_entry))) == 0) {
+    fprintf(stderr, "OUT OF MEMORY!\n");
+    exit(1);
+  }
 
   /* queue */
   new_entry->next = route_set.next;
@@ -65,7 +65,7 @@ add_route_entry (struct route_entry *entry)
 }
 
 int
-del_route_entry (struct route_entry *entry)
+del_route_entry(struct route_entry *entry)
 {
 
   route_count--;
index b2d99e8..e1211fd 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR ad-hoc routing table management protocol GUI front-end
  * Copyright (C) 2003 Andreas Tonnesen (andreto@ifi.uio.no)
@@ -35,8 +36,7 @@
 
 #define MAX_IF_NAMESIZ  10
 
-struct route_entry
-{
+struct route_entry {
   union olsr_ip_addr gw;
   union olsr_ip_addr dst;
   olsr_u16_t hopcnt;
@@ -53,11 +53,11 @@ olsr_u32_t route_count;
 
 /* Functions */
 
-int init_route_entries ();
+int init_route_entries();
 
-int add_route_entry (struct route_entry *);
+int add_route_entry(struct route_entry *);
 
-int del_route_entry (struct route_entry *);
+int del_route_entry(struct route_entry *);
 
 #endif
 
index e0ba280..2a9e28d 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
 
 class TrayIcon;
 
-class CFrontendApp:public CWinApp
-{
+class CFrontendApp:public CWinApp {
 public:
-  CFrontendApp ();
+  CFrontendApp();
 
-  int RedirectStdHandles (void);
-  unsigned int RedirectThreadFunc (void);
+  int RedirectStdHandles(void);
+  unsigned int RedirectThreadFunc(void);
 
   HANDLE OutRead;
   TrayIcon *tray_icon;
 
   //{{AFX_VIRTUAL(CFrontendApp)
 public:
-    virtual BOOL InitInstance ();
+    virtual BOOL InitInstance();
   //}}AFX_VIRTUAL
 
   //{{AFX_MSG(CFrontendApp)
   //}}AFX_MSG
-  DECLARE_MESSAGE_MAP ()};
+  DECLARE_MESSAGE_MAP()};
 
 //{{AFX_INSERT_LOCATION}}
 
index 081e04f..088f5e9 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
 #define PIPE_MODE_RUN 0
 #define PIPE_MODE_INT 1
 
-class CFrontendDlg:public CDialog
-{
+class CFrontendDlg:public CDialog {
 public:
-  CFrontendDlg (CWnd * pParent = NULL);
+  CFrontendDlg(CWnd * pParent = NULL);
 
   //{{AFX_DATA(CFrontendDlg)
-  enum
-  { IDD = IDD_FRONTEND_DIALOG };
+  enum { IDD = IDD_FRONTEND_DIALOG };
   CButton m_StopButton;
   CButton m_StartButton;
   MyTabCtrl m_TabCtrl;
   //}}AFX_DATA
 
-  unsigned int LogThreadFunc (void);
-  unsigned int NetThreadFunc (void);
+  unsigned int LogThreadFunc(void);
+  unsigned int NetThreadFunc(void);
 
   CString ConfigFile;
 protected:
 
   //{{AFX_VIRTUAL(CFrontendDlg)
-    virtual void DoDataExchange (CDataExchange * pDX);
+    virtual void DoDataExchange(CDataExchange * pDX);
   //}}AFX_VIRTUAL
 
 public:
   //{{AFX_MSG(CFrontendDlg)
-    virtual BOOL OnInitDialog ();
-  afx_msg void OnOK ();
-  afx_msg void OnCancel ();
-  afx_msg void OnStartButton ();
-  afx_msg void OnStopButton ();
-  afx_msg void OnExitButton ();
+    virtual BOOL OnInitDialog();
+  afx_msg void OnOK();
+  afx_msg void OnCancel();
+  afx_msg void OnStartButton();
+  afx_msg void OnStopButton();
+  afx_msg void OnExitButton();
   //}}AFX_MSG
 
 protected:
-    DECLARE_MESSAGE_MAP () int StartOlsrd (void);
-  int StopOlsrd (void);
+    DECLARE_MESSAGE_MAP() int StartOlsrd(void);
+  int StopOlsrd(void);
 
-  int GetInterfaces (void);
+  int GetInterfaces(void);
 
   HANDLE Event;
 
@@ -97,7 +96,7 @@ protected:
   SOCKET SockHand;
 
   int PipeMode;
-  int ExecutePipe (const char *, HANDLE *, HANDLE *, HANDLE *);
+  int ExecutePipe(const char *, HANDLE *, HANDLE *, HANDLE *);
 
   CWinThread *LogThread;
   CWinThread *NetThread;
@@ -109,21 +108,21 @@ protected:
   HANDLE OutRead, InWrite;
   HANDLE ShimProc;
 
-  void HandleIpcRoute (struct IpcRoute *);
-  void HandleIpcConfig (struct IpcConfig *);
-  void HandleOlsrHello (struct OlsrHello *, int);
-  void HandleOlsrTc (struct OlsrTc *, int);
-  void HandleOlsrMid (struct OlsrHeader *);
-  void HandleOlsrHna (struct OlsrHeader *);
+  void HandleIpcRoute(struct IpcRoute *);
+  void HandleIpcConfig(struct IpcConfig *);
+  void HandleOlsrHello(struct OlsrHello *, int);
+  void HandleOlsrTc(struct OlsrTc *, int);
+  void HandleOlsrMid(struct OlsrHeader *);
+  void HandleOlsrHna(struct OlsrHeader *);
 
-  void AddNode (unsigned int, unsigned int);
-  void AddMpr (unsigned int, unsigned int, unsigned int);
-  void AddMid (unsigned int, unsigned int, unsigned int);
-  void AddHna (unsigned int, unsigned int, unsigned int, unsigned int);
+  void AddNode(unsigned int, unsigned int);
+  void AddMpr(unsigned int, unsigned int, unsigned int);
+  void AddMid(unsigned int, unsigned int, unsigned int);
+  void AddHna(unsigned int, unsigned int, unsigned int, unsigned int);
 
     CList < class NodeEntry, class NodeEntry & >NodeList;
 
-  void Timeout (void);
+  void Timeout(void);
 
   unsigned __int64 Now;
 
index 411e030..1af7501 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
 #if !defined TL_HNAENTRY_H
 #define TL_HNAENTRY_H
 
-class HnaEntry
-{
+class HnaEntry {
 public:
   unsigned int Addr;
   unsigned int Mask;
   unsigned __int64 Timeout;
 
-  class HnaEntry & HnaEntry::operator= (class HnaEntry &);
-  BOOL HnaEntry::operator== (const class HnaEntry &) const;
+  class HnaEntry & HnaEntry::operator=(class HnaEntry &);
+  BOOL HnaEntry::operator==(const class HnaEntry &) const;
 };
 
 #endif
index 51ba449..23c266f 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
@@ -53,8 +54,7 @@
 
 #pragma pack(push, BeforeIpcMessages, 1)
 
-struct OlsrHeader
-{
+struct OlsrHeader {
   unsigned char Type;
   unsigned char VTime;
   unsigned short Size;
@@ -64,8 +64,7 @@ struct OlsrHeader
   unsigned short SeqNo;
 };
 
-struct OlsrHello
-{
+struct OlsrHello {
   struct OlsrHeader Header;
 
   unsigned short Reserved;
@@ -73,36 +72,31 @@ struct OlsrHello
   unsigned char Will;
 };
 
-struct OlsrHelloLink
-{
+struct OlsrHelloLink {
   unsigned char LinkCode;
   unsigned char Reserved;
   unsigned short Size;
 };
 
-struct OlsrTc
-{
+struct OlsrTc {
   struct OlsrHeader Header;
 
   unsigned short Ansn;
   unsigned short Reserved;
 };
 
-union IpcIpAddr
-{
+union IpcIpAddr {
   unsigned int v4;
   unsigned char v6[16];
 };
 
-struct IpcHeader
-{
+struct IpcHeader {
   unsigned char Type;
   unsigned char Reserved;
   unsigned short Size;
 };
 
-struct IpcRoute
-{
+struct IpcRoute {
   struct IpcHeader Header;
 
   unsigned char Metric;
@@ -113,8 +107,7 @@ struct IpcRoute
   char Int[4];
 };
 
-struct IpcConfig
-{
+struct IpcConfig {
   struct IpcHeader Header;
 
   unsigned char NumMid;
index a6cce17..e676cfc 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
 #if !defined TL_MIDENTRY_H
 #define TL_MIDENTRY_H
 
-class MidEntry
-{
+class MidEntry {
 public:
   unsigned int Addr;
   unsigned __int64 Timeout;
 
-  class MidEntry & MidEntry::operator= (class MidEntry &);
-  BOOL MidEntry::operator== (const class MidEntry &) const;
+  class MidEntry & MidEntry::operator=(class MidEntry &);
+  BOOL MidEntry::operator==(const class MidEntry &) const;
 };
 
 #endif
index 239b794..000d2f0 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
 #if !defined TL_MPRENTRY_H
 #define TL_MPRENTRY_H
 
-class MprEntry
-{
+class MprEntry {
 public:
   unsigned int Addr;
   unsigned __int64 Timeout;
 
-  class MprEntry & MprEntry::operator= (class MprEntry &);
-  BOOL MprEntry::operator== (const class MprEntry &) const;
+  class MprEntry & MprEntry::operator=(class MprEntry &);
+  BOOL MprEntry::operator==(const class MprEntry &) const;
 };
 
 #endif
index 97e3851..b5f0365 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
 #pragma once
 #endif
 
-class MyDialog1:public CDialog
-{
+class MyDialog1:public CDialog {
 public:
-  MyDialog1 (CWnd * pParent = NULL);
+  MyDialog1(CWnd * pParent = NULL);
 
-  BOOL Create (CWnd * Parent);
+  BOOL Create(CWnd * Parent);
 
-  void AddOutputLine (CString);
-  void SetFrozen (int);
-  void HandleStart (void);
-  void HandleStop (void);
+  void AddOutputLine(CString);
+  void SetFrozen(int);
+  void HandleStart(void);
+  void HandleStop(void);
 
   //{{AFX_DATA(MyDialog1)
-  enum
-  { IDD = IDD_DIALOG1 };
+  enum { IDD = IDD_DIALOG1 };
   CButton m_SaveButton;
   CButton m_FreezeButton;
   CButton m_ContinueButton;
@@ -69,22 +68,22 @@ public:
 
   //{{AFX_VIRTUAL(MyDialog1)
 protected:
-    virtual void DoDataExchange (CDataExchange * pDX);
+    virtual void DoDataExchange(CDataExchange * pDX);
   //}}AFX_VIRTUAL
 
 protected:
 
   //{{AFX_MSG(MyDialog1)
-    afx_msg void OnOK ();
-  afx_msg void OnCancel ();
-  virtual BOOL OnInitDialog ();
-  afx_msg void OnClearButton ();
-  afx_msg void OnContinueButton ();
-  afx_msg void OnFreezeButton ();
-  afx_msg HBRUSH OnCtlColor (CDC * pDC, CWnd * pWnd, UINT nCtlColor);
-  afx_msg void OnSaveButton ();
+    afx_msg void OnOK();
+  afx_msg void OnCancel();
+  virtual BOOL OnInitDialog();
+  afx_msg void OnClearButton();
+  afx_msg void OnContinueButton();
+  afx_msg void OnFreezeButton();
+  afx_msg HBRUSH OnCtlColor(CDC * pDC, CWnd * pWnd, UINT nCtlColor);
+  afx_msg void OnSaveButton();
   //}}AFX_MSG
-    DECLARE_MESSAGE_MAP () CCriticalSection CritSect;
+    DECLARE_MESSAGE_MAP() CCriticalSection CritSect;
   CString Output;
   int NumLines;
 
index 935a63a..f50020e 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
 #include <olsr_cfg.h>
 #include "afxwin.h"
 
-class MyDialog2:public CDialog
-{
+class MyDialog2:public CDialog {
 public:
-  MyDialog2 (CWnd * pParent = NULL);
+  MyDialog2(CWnd * pParent = NULL);
 
-  BOOL Create (CWnd * Parent);
+  BOOL Create(CWnd * Parent);
 
-  int OpenConfigFile (CString);
-  int SaveConfigFile (CString, int);
+  int OpenConfigFile(CString);
+  int SaveConfigFile(CString, int);
 
   CStringArray *Interfaces;
   CStringArray *Addresses;
@@ -69,8 +69,7 @@ public:
   struct olsrd_config *Conf;
 
   //{{AFX_DATA(MyDialog2)
-  enum
-  { IDD = IDD_DIALOG2 };
+  enum { IDD = IDD_DIALOG2 };
   CComboBox m_LqAlgo;
   CComboBox m_TcRed;
   CEdit m_MprCov;
@@ -100,32 +99,32 @@ public:
 
   //{{AFX_VIRTUAL(MyDialog2)
 protected:
-    virtual void DoDataExchange (CDataExchange * pDX);
+    virtual void DoDataExchange(CDataExchange * pDX);
   //}}AFX_VIRTUAL
 
 protected:
 
   //{{AFX_MSG(MyDialog2)
-    afx_msg void OnOK ();
-  afx_msg void OnCancel ();
-  afx_msg void OnHScroll (UINT nSBCode, UINT nPos, CScrollBar * pScrollBar);
-  virtual BOOL OnInitDialog ();
-  afx_msg void OnHystCheck ();
-  afx_msg void OnOpenButton ();
-  afx_msg void OnSaveButton ();
-  afx_msg void OnResetButton ();
-  afx_msg void OnEtxCheck ();
-  afx_msg void OnEtxRadio1 ();
-  afx_msg void OnEtxRadio2 ();
+    afx_msg void OnOK();
+  afx_msg void OnCancel();
+  afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar * pScrollBar);
+  virtual BOOL OnInitDialog();
+  afx_msg void OnHystCheck();
+  afx_msg void OnOpenButton();
+  afx_msg void OnSaveButton();
+  afx_msg void OnResetButton();
+  afx_msg void OnEtxCheck();
+  afx_msg void OnEtxRadio1();
+  afx_msg void OnEtxRadio2();
   //}}AFX_MSG
-    DECLARE_MESSAGE_MAP () CFont EditFont;
+    DECLARE_MESSAGE_MAP() CFont EditFont;
 
   int DebugLevel;
-  void SetDebugLevel (int);
+  void SetDebugLevel(int);
 
-  void Reset (void);
+  void Reset(void);
 
-  void OnEtxCheckWorker (void);
+  void OnEtxCheckWorker(void);
 };
 
 //{{AFX_INSERT_LOCATION}}
index 8063837..54ea7d7 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
 
 #include "NodeEntry.h"
 
-class NodeInfo
-{
+class NodeInfo {
 public:
   CStringArray MprList;
   CStringArray MidList;
   CStringArray HnaList;
 };
 
-class MyDialog3:public CDialog
-{
+class MyDialog3:public CDialog {
 public:
-  MyDialog3 (CWnd * pParent = NULL);
+  MyDialog3(CWnd * pParent = NULL);
 
-  BOOL Create (CWnd * Parent);
+  BOOL Create(CWnd * Parent);
 
-  void UpdateNodeInfo (CList < class NodeEntry, class NodeEntry & >&);
-  void ClearNodeInfo (void);
+  void UpdateNodeInfo(CList < class NodeEntry, class NodeEntry & >&);
+  void ClearNodeInfo(void);
 
   //{{AFX_DATA(MyDialog3)
-  enum
-  { IDD = IDD_DIALOG3 };
+  enum { IDD = IDD_DIALOG3 };
   CListCtrl m_HnaList;
   CListCtrl m_MidList;
   CListCtrl m_MprList;
@@ -76,7 +74,7 @@ public:
 
   //{{AFX_VIRTUAL(MyDialog3)
 protected:
-    virtual void DoDataExchange (CDataExchange * pDX);
+    virtual void DoDataExchange(CDataExchange * pDX);
   //}}AFX_VIRTUAL
 
 protected:
@@ -84,12 +82,12 @@ protected:
   class NodeInfo *Info;
 
   //{{AFX_MSG(MyDialog3)
-  afx_msg void OnOK ();
-  afx_msg void OnCancel ();
-  virtual BOOL OnInitDialog ();
-  afx_msg void OnItemchangedNodeList (NMHDR * pNMHDR, LRESULT * pResult);
+  afx_msg void OnOK();
+  afx_msg void OnCancel();
+  virtual BOOL OnInitDialog();
+  afx_msg void OnItemchangedNodeList(NMHDR * pNMHDR, LRESULT * pResult);
   //}}AFX_MSG
-  DECLARE_MESSAGE_MAP ()};
+  DECLARE_MESSAGE_MAP()};
 
 //{{AFX_INSERT_LOCATION}}
 
index d899cf4..6112538 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
 #pragma once
 #endif
 
-class MyDialog4:public CDialog
-{
+class MyDialog4:public CDialog {
 public:
-  MyDialog4 (CWnd * pParent = NULL);
+  MyDialog4(CWnd * pParent = NULL);
 
-  BOOL Create (CWnd * Parent);
+  BOOL Create(CWnd * Parent);
 
-  void AddRoute (unsigned int, unsigned int, int, char *);
-  void DeleteRoute (unsigned int);
-  void ClearRoutes (void);
+  void AddRoute(unsigned int, unsigned int, int, char *);
+  void DeleteRoute(unsigned int);
+  void ClearRoutes(void);
 
   //{{AFX_DATA(MyDialog4)
-  enum
-  { IDD = IDD_DIALOG4 };
+  enum { IDD = IDD_DIALOG4 };
   CListCtrl m_RoutingTable;
   //}}AFX_DATA
 
   //{{AFX_VIRTUAL(MyDialog4)
 protected:
-    virtual void DoDataExchange (CDataExchange * pDX);
+    virtual void DoDataExchange(CDataExchange * pDX);
   //}}AFX_VIRTUAL
 
 protected:
 
   //{{AFX_MSG(MyDialog4)
-    afx_msg void OnOK ();
-  afx_msg void OnCancel ();
-  virtual BOOL OnInitDialog ();
+    afx_msg void OnOK();
+  afx_msg void OnCancel();
+  virtual BOOL OnInitDialog();
   //}}AFX_MSG
-  DECLARE_MESSAGE_MAP ()};
+  DECLARE_MESSAGE_MAP()};
 
 //{{AFX_INSERT_LOCATION}}
 
index 1839844..3d73aed 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
 #pragma once
 #endif
 
-class MyEdit:public CEdit
-{
+class MyEdit:public CEdit {
 public:
 
-  MyEdit ();
+  MyEdit();
 
   //{{AFX_VIRTUAL(MyEdit)
   //}}AFX_VIRTUAL
 
-  virtual ~ MyEdit ();
+  virtual ~ MyEdit();
 
 protected:
   //{{AFX_MSG(MyEdit)
-  afx_msg void OnChar (UINT nChar, UINT nRepCnt, UINT nFlags);
-  afx_msg void OnKillFocus (CWnd * pNewWnd);
+  afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags);
+  afx_msg void OnKillFocus(CWnd * pNewWnd);
   //}}AFX_MSG
 
-  DECLARE_MESSAGE_MAP ()};
+  DECLARE_MESSAGE_MAP()};
 
 //{{AFX_INSERT_LOCATION}}
 
index 4474c12..d809740 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
 #include "MyDialog3.h"
 #include "MyDialog4.h"
 
-class MyTabCtrl:public CTabCtrl
-{
+class MyTabCtrl:public CTabCtrl {
 public:
-  MyTabCtrl ();
+  MyTabCtrl();
 
   class MyDialog1 m_Dialog1;
   class MyDialog2 m_Dialog2;
   class MyDialog3 m_Dialog3;
   class MyDialog4 m_Dialog4;
 
-  void InitTabDialogs (CStringArray *, CStringArray *, CStringArray *);
-  void DisplayTabDialog (void);
+  void InitTabDialogs(CStringArray *, CStringArray *, CStringArray *);
+  void DisplayTabDialog(void);
 
   //{{AFX_VIRTUAL(MyTabCtrl)
   //}}AFX_VIRTUAL
 
-    virtual ~ MyTabCtrl ();
+    virtual ~ MyTabCtrl();
 
 protected:
     CDialog * Dialogs[4];
@@ -74,10 +74,10 @@ protected:
   int Sel;
 
   //{{AFX_MSG(MyTabCtrl)
-  afx_msg void OnSelchange (NMHDR * pNMHDR, LRESULT * pResult);
+  afx_msg void OnSelchange(NMHDR * pNMHDR, LRESULT * pResult);
   //}}AFX_MSG
 
-  DECLARE_MESSAGE_MAP ()};
+  DECLARE_MESSAGE_MAP()};
 
 //{{AFX_INSERT_LOCATION}}
 
index 6442370..f8b9697 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
@@ -45,8 +46,7 @@
 #include "MidEntry.h"
 #include "HnaEntry.h"
 
-class NodeEntry
-{
+class NodeEntry {
 public:
   unsigned int Addr;
   unsigned __int64 Timeout;
@@ -55,12 +55,12 @@ public:
     CList < class MidEntry, class MidEntry & >MidList;
     CList < class HnaEntry, class HnaEntry & >HnaList;
 
-  void AddMpr (unsigned int, unsigned __int64);
-  void AddMid (unsigned int, unsigned __int64);
-  void AddHna (unsigned int, unsigned int, unsigned __int64);
+  void AddMpr(unsigned int, unsigned __int64);
+  void AddMid(unsigned int, unsigned __int64);
+  void AddHna(unsigned int, unsigned int, unsigned __int64);
 
-  class NodeEntry & NodeEntry::operator= (class NodeEntry &);
-  BOOL NodeEntry::operator== (const class NodeEntry &) const;
+  class NodeEntry & NodeEntry::operator=(class NodeEntry &);
+  BOOL NodeEntry::operator==(const class NodeEntry &) const;
 };
 
 #endif
index 7baec14..22480e0 100644 (file)
@@ -3,32 +3,27 @@
 
 class CFrontendDlg;
 
-class TrayIcon
-{
+class TrayIcon {
 public:
-  TrayIcon (CFrontendDlg &, HINSTANCE);
-  ~TrayIcon ();
+  TrayIcon(CFrontendDlg &, HINSTANCE);
+  ~TrayIcon();
 
-  void displayPopup ();
+  void displayPopup();
 
-  static TrayIcon *getInstance ()
-  {
+  static TrayIcon *getInstance() {
     return instance;
-  }
+  } enum status { CONNECTED, ON, OFF };
 
-  enum status
-  { CONNECTED, ON, OFF };
-
-  void setStatus (status con_status, const char *message);
+  void setStatus(status con_status, const char *message);
 
 private:
-  void setTrayAppearance (bool, unsigned int, const char *message);
+  void setTrayAppearance(bool, unsigned int, const char *message);
 
   HINSTANCE hInst;
 
   CFrontendDlg & main_dlg;
 
-  friend LRESULT CALLBACK TrayIconProc (HWND, UINT, WPARAM, LPARAM);
+  friend LRESULT CALLBACK TrayIconProc(HWND, UINT, WPARAM, LPARAM);
   static TrayIcon *instance;
 };
 
index 6df0712..184b149 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * The olsr.org Optimized Link-State Routing daemon (olsrd)
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
@@ -41,7 +42,7 @@
 #include <windows.h>
 
 int
-main (int argc, char *argv[])
+main(int argc, char *argv[])
 {
   STARTUPINFO StartInfo;
   PROCESS_INFORMATION ProcInfo;
@@ -53,38 +54,33 @@ main (int argc, char *argv[])
   unsigned long Res;
   int Quotes;
 
-  Handles[0] = OpenEvent (EVENT_ALL_ACCESS, FALSE, "TheOlsrdShimEvent");
+  Handles[0] = OpenEvent(EVENT_ALL_ACCESS, FALSE, "TheOlsrdShimEvent");
 
-  if (Handles[0] == NULL)
-    {
-      MessageBox (NULL, "Cannot open event.", "Shim Error",
-                  MB_ICONERROR | MB_OK);
-      ExitProcess (1);
-    }
+  if (Handles[0] == NULL) {
+    MessageBox(NULL, "Cannot open event.", "Shim Error", MB_ICONERROR | MB_OK);
+    ExitProcess(1);
+  }
 
-  CmdLine = GetCommandLine ();
+  CmdLine = GetCommandLine();
 
   Quotes = 0;
 
-  while (*CmdLine != 0)
-    {
-      if (*CmdLine == '"')
-        Quotes = !Quotes;
+  while (*CmdLine != 0) {
+    if (*CmdLine == '"')
+      Quotes = !Quotes;
 
-      else if (*CmdLine == ' ' && !Quotes)
-        break;
+    else if (*CmdLine == ' ' && !Quotes)
+      break;
 
-      CmdLine++;
-    }
+    CmdLine++;
+  }
 
-  if (*CmdLine == 0)
-    {
-      MessageBox (NULL, "Missing arguments.", "Shim Error",
-                  MB_ICONERROR | MB_OK);
-      ExitProcess (1);
-    }
+  if (*CmdLine == 0) {
+    MessageBox(NULL, "Missing arguments.", "Shim Error", MB_ICONERROR | MB_OK);
+    ExitProcess(1);
+  }
 
-  GetModuleFileName (NULL, NewCmdLine, MAX_PATH);
+  GetModuleFileName(NULL, NewCmdLine, MAX_PATH);
 
   for (Walker = NewCmdLine; *Walker != 0; Walker++);
 
@@ -107,34 +103,29 @@ main (int argc, char *argv[])
 
   while ((*Walker++ = *CmdLine++) != 0);
 
-  for (i = 0; i < sizeof (STARTUPINFO); i++)
-    ((char *) &StartInfo)[i] = 0;
+  for (i = 0; i < sizeof(STARTUPINFO); i++)
+    ((char *)&StartInfo)[i] = 0;
 
-  StartInfo.cb = sizeof (STARTUPINFO);
+  StartInfo.cb = sizeof(STARTUPINFO);
 
-  if (!CreateProcess
-      (NULL, NewCmdLine, NULL, NULL, TRUE, CREATE_NEW_PROCESS_GROUP, NULL,
-       NULL, &StartInfo, &ProcInfo))
-    {
-      MessageBox (NULL, "Cannot execute OLSR server.", "Shim Error",
-                  MB_ICONERROR | MB_OK);
-      ExitProcess (1);
-    }
+  if (!CreateProcess(NULL, NewCmdLine, NULL, NULL, TRUE, CREATE_NEW_PROCESS_GROUP, NULL, NULL, &StartInfo, &ProcInfo)) {
+    MessageBox(NULL, "Cannot execute OLSR server.", "Shim Error", MB_ICONERROR | MB_OK);
+    ExitProcess(1);
+  }
 
   Handles[1] = ProcInfo.hProcess;
 
-  Res = WaitForMultipleObjects (2, Handles, FALSE, INFINITE);
+  Res = WaitForMultipleObjects(2, Handles, FALSE, INFINITE);
 
-  if (Res == WAIT_OBJECT_0)
-    {
-      GenerateConsoleCtrlEvent (CTRL_BREAK_EVENT, ProcInfo.dwProcessId);
-      WaitForSingleObject (ProcInfo.hProcess, INFINITE);
-    }
+  if (Res == WAIT_OBJECT_0) {
+    GenerateConsoleCtrlEvent(CTRL_BREAK_EVENT, ProcInfo.dwProcessId);
+    WaitForSingleObject(ProcInfo.hProcess, INFINITE);
+  }
 
-  CloseHandle (ProcInfo.hThread);
-  CloseHandle (ProcInfo.hProcess);
+  CloseHandle(ProcInfo.hThread);
+  CloseHandle(ProcInfo.hProcess);
 
-  ExitProcess (0);
+  ExitProcess(0);
 }
 
 /*
index 67ea485..b35f253 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * Copyright (c) 2007, Sven-Ola Tuecke <sven-ola-aet-gmx.de>
  * Copyright (c) 2004, Andreas Tonnesen(andreto-at-olsr.org)
@@ -64,7 +65,7 @@
  * Used by main olsrd to check plugin interface version
  */
 int
-olsrd_plugin_interface_version (void)
+olsrd_plugin_interface_version(void)
 {
   return PLUGIN_INTERFACE_VERSION;
 }
@@ -73,15 +74,13 @@ static const struct olsrd_plugin_parameters plugin_parameters[] = {
 };
 
 void
-olsrd_get_plugin_parameters (const struct olsrd_plugin_parameters **params,
-                             int *size)
+olsrd_get_plugin_parameters(const struct olsrd_plugin_parameters **params, int *size)
 {
   *params = plugin_parameters;
-  *size = sizeof (plugin_parameters) / sizeof (*plugin_parameters);
+  *size = sizeof(plugin_parameters) / sizeof(*plugin_parameters);
 }
 
-typedef struct
-{
+typedef struct {
   struct ethhdr eth;
   struct iphdr ip;
   struct udphdr udp;
@@ -95,69 +94,60 @@ static const int arprefresh_portnum = 698;
  * called from olsrd main thread
  */
 static void
-olsr_arp_event (void *foo __attribute__ ((unused)))
+olsr_arp_event(void *foo __attribute__ ((unused)))
 {
-  if (0 <= arprefresh_sockfd)
-    {
-      arprefresh_buf buf;
-      struct sockaddr_ll from;
-      socklen_t fromlen = sizeof (from);
-
-      /*
-       * Grab a single snapshot on the packet socket. This only works
-       * if not too much IP traffic is currently flowing through.
-       */
-      ssize_t size = recvfrom (arprefresh_sockfd, &buf, sizeof (buf),
-                               MSG_TRUNC, (struct sockaddr *) &from,
-                               &fromlen);
-
-      if (0 <= size && size >= (ssize_t) sizeof (buf)
+  if (0 <= arprefresh_sockfd) {
+    arprefresh_buf buf;
+    struct sockaddr_ll from;
+    socklen_t fromlen = sizeof(from);
+
+    /*
+     * Grab a single snapshot on the packet socket. This only works
+     * if not too much IP traffic is currently flowing through.
+     */
+    ssize_t size = recvfrom(arprefresh_sockfd, &buf, sizeof(buf),
+                            MSG_TRUNC, (struct sockaddr *)&from,
+                            &fromlen);
+
+    if (0 <= size && size >= (ssize_t) sizeof(buf)
+
                                                  /*** &&
                    ETH_P_IP == ntohs(buf.eth.h_proto) &&
                    IPPROTO_UDP == buf.ip.protocol &&
                    arprefresh_portnum == ntohs(buf.udp.source) &&
-                   arprefresh_portnum == ntohs(buf.udp.dest) ***/ )
-        {
-          union
-          {
-            struct arpreq arp;
-            struct sockaddr_in in_pa;
-            struct sockaddr_in6 in_pa6;
-          } req;
-
-          memset (&req, 0, sizeof (req));
-          req.in_pa.sin_family = AF_INET;
-          memcpy (&req.in_pa.sin_addr, &buf.ip.saddr, sizeof (buf.ip.saddr));
-          req.arp.arp_ha.sa_family = AF_LOCAL;
-          memcpy (&req.arp.arp_ha.sa_data, &buf.eth.h_source,
-                  sizeof (buf.eth.h_source));
-          req.arp.arp_flags = ATF_COM;
-          if_indextoname (from.sll_ifindex, req.arp.arp_dev);
+                   arprefresh_portnum == ntohs(buf.udp.dest) ***/
+      ) {
+      union {
+        struct arpreq arp;
+        struct sockaddr_in in_pa;
+        struct sockaddr_in6 in_pa6;
+      } req;
+
+      memset(&req, 0, sizeof(req));
+      req.in_pa.sin_family = AF_INET;
+      memcpy(&req.in_pa.sin_addr, &buf.ip.saddr, sizeof(buf.ip.saddr));
+      req.arp.arp_ha.sa_family = AF_LOCAL;
+      memcpy(&req.arp.arp_ha.sa_data, &buf.eth.h_source, sizeof(buf.eth.h_source));
+      req.arp.arp_flags = ATF_COM;
+      if_indextoname(from.sll_ifindex, req.arp.arp_dev);
 #ifdef ARPREFRESH_DEBUG
-          {
-            int i;
-            OLSR_PRINTF (0, "Refresh on %s, %s=", req.arp.arp_dev,
-                         inet_ntoa (*((struct in_addr *) &buf.ip.saddr)));
-            for (i = 0; i < (ssize_t) sizeof (buf.eth.h_source); i++)
-              {
-                OLSR_PRINTF (0, "%02x%s",
-                             ((unsigned char *) &buf.eth.h_source)[i],
-                             i <
-                             (ssize_t) sizeof (buf.eth.h_source) -
-                             1 ? ":" : "\n");
-              }
-          }
-#endif
-          if (ioctl (arprefresh_sockfd, SIOCSARP, &req) < 0)
-            {
-              OLSR_PRINTF (1, "*** ARPREFRESH: SIOCSARP: %s\n",
-                           strerror (errno));
-              close (arprefresh_sockfd);
-              arprefresh_sockfd = -1;
-              return;
-            }
+      {
+        int i;
+        OLSR_PRINTF(0, "Refresh on %s, %s=", req.arp.arp_dev, inet_ntoa(*((struct in_addr *)&buf.ip.saddr)));
+        for (i = 0; i < (ssize_t) sizeof(buf.eth.h_source); i++) {
+          OLSR_PRINTF(0, "%02x%s",
+                      ((unsigned char *)&buf.eth.h_source)[i], i < (ssize_t) sizeof(buf.eth.h_source) - 1 ? ":" : "\n");
         }
+      }
+#endif
+      if (ioctl(arprefresh_sockfd, SIOCSARP, &req) < 0) {
+        OLSR_PRINTF(1, "*** ARPREFRESH: SIOCSARP: %s\n", strerror(errno));
+        close(arprefresh_sockfd);
+        arprefresh_sockfd = -1;
+        return;
+      }
     }
+  }
 }
 
 /**
@@ -165,58 +155,47 @@ olsr_arp_event (void *foo __attribute__ ((unused)))
  * Called after all parameters are passed
  */
 int
-olsrd_plugin_init (void)
+olsrd_plugin_init(void)
 {
   int ret = 0;
-  if (AF_INET == olsr_cnf->ip_version)
-    {
-      int flags;
-      struct sock_fprog filter;
-      struct sock_filter BPF_code[] = {
-        /* tcpdump -s [sizeof(arprefresh_buf)] -ni lo udp and dst port [arprefresh_portnum] -dd */
-        {0x28, 0, 0, 0x0000000c},
-        {0x15, 0, 4, 0x000086dd},
-        {0x30, 0, 0, 0x00000014},
-        {0x15, 0, 11, 0x00000011},
-        {0x28, 0, 0, 0x00000038},
-        {0x15, 8, 9, arprefresh_portnum},
-        {0x15, 0, 8, 0x00000800},
-        {0x30, 0, 0, 0x00000017},
-        {0x15, 0, 6, 0x00000011},
-        {0x28, 0, 0, 0x00000014},
-        {0x45, 4, 0, 0x00001fff},
-        {0xb1, 0, 0, 0x0000000e},
-        {0x48, 0, 0, 0x00000010},
-        {0x15, 0, 1, arprefresh_portnum},
-        {0x6, 0, 0, sizeof (arprefresh_buf)}
-        ,
-        {0x6, 0, 0, 0x00000000}
-      };
-      filter.len = sizeof (BPF_code) / sizeof (BPF_code[0]);
-      filter.filter = BPF_code;
-      if (0 <=
-          (arprefresh_sockfd = socket (PF_PACKET, SOCK_RAW, htons (ETH_P_IP)))
-          && 0 <= (flags = fcntl (arprefresh_sockfd, F_GETFL))
-          && 0 <= fcntl (arprefresh_sockfd, F_SETFL, flags | O_NONBLOCK)
-          && 0 <= setsockopt (arprefresh_sockfd, SOL_SOCKET, SO_ATTACH_FILTER,
-                              &filter, sizeof (filter)))
-        {
-          /* Register the ARP refresh event */
-          olsr_start_timer (2 * MSEC_PER_SEC, 0, OLSR_TIMER_PERIODIC,
-                            &olsr_arp_event, NULL, 0);
-          ret = 1;
-        }
-      else
-        {
-          OLSR_PRINTF (1,
-                       "*** ARPREFRESH: Cannot create non-blocking filtering packet socket: %s\n",
-                       strerror (errno));
-        }
-    }
-  else
-    {
-      OLSR_PRINTF (1, "*** ARPREFRESH: IPv6 not supported\n");
+  if (AF_INET == olsr_cnf->ip_version) {
+    int flags;
+    struct sock_fprog filter;
+    struct sock_filter BPF_code[] = {
+      /* tcpdump -s [sizeof(arprefresh_buf)] -ni lo udp and dst port [arprefresh_portnum] -dd */
+      {0x28, 0, 0, 0x0000000c},
+      {0x15, 0, 4, 0x000086dd},
+      {0x30, 0, 0, 0x00000014},
+      {0x15, 0, 11, 0x00000011},
+      {0x28, 0, 0, 0x00000038},
+      {0x15, 8, 9, arprefresh_portnum},
+      {0x15, 0, 8, 0x00000800},
+      {0x30, 0, 0, 0x00000017},
+      {0x15, 0, 6, 0x00000011},
+      {0x28, 0, 0, 0x00000014},
+      {0x45, 4, 0, 0x00001fff},
+      {0xb1, 0, 0, 0x0000000e},
+      {0x48, 0, 0, 0x00000010},
+      {0x15, 0, 1, arprefresh_portnum},
+      {0x6, 0, 0, sizeof(arprefresh_buf)}
+      ,
+      {0x6, 0, 0, 0x00000000}
+    };
+    filter.len = sizeof(BPF_code) / sizeof(BPF_code[0]);
+    filter.filter = BPF_code;
+    if (0 <= (arprefresh_sockfd = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_IP)))
+        && 0 <= (flags = fcntl(arprefresh_sockfd, F_GETFL))
+        && 0 <= fcntl(arprefresh_sockfd, F_SETFL, flags | O_NONBLOCK)
+        && 0 <= setsockopt(arprefresh_sockfd, SOL_SOCKET, SO_ATTACH_FILTER, &filter, sizeof(filter))) {
+      /* Register the ARP refresh event */
+      olsr_start_timer(2 * MSEC_PER_SEC, 0, OLSR_TIMER_PERIODIC, &olsr_arp_event, NULL, 0);
+      ret = 1;
+    } else {
+      OLSR_PRINTF(1, "*** ARPREFRESH: Cannot create non-blocking filtering packet socket: %s\n", strerror(errno));
     }
+  } else {
+    OLSR_PRINTF(1, "*** ARPREFRESH: IPv6 not supported\n");
+  }
   return ret;
 }
 
@@ -224,26 +203,25 @@ olsrd_plugin_init (void)
  *       Optional private constructor and destructor functions              *
  ****************************************************************************/
 
-static void __attribute__ ((constructor)) my_init (void);
-static void __attribute__ ((destructor)) my_fini (void);
+static void __attribute__ ((constructor)) my_init(void);
+static void __attribute__ ((destructor)) my_fini(void);
 
 static void
-my_init (void)
+my_init(void)
 {
-  printf ("OLSRD arprefresh plugin by Sven-Ola\n");
+  printf("OLSRD arprefresh plugin by Sven-Ola\n");
 }
 
 /**
  * Optional Private Destructor
  */
 static void
-my_fini (void)
+my_fini(void)
 {
-  if (0 <= arprefresh_sockfd)
-    {
-      close (arprefresh_sockfd);
-      arprefresh_sockfd = -1;
-    }
+  if (0 <= arprefresh_sockfd) {
+    close(arprefresh_sockfd);
+    arprefresh_sockfd = -1;
+  }
 }
 
 /*
index a969857..c1c45c8 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * Copyright (c) 2007, Sven-Ola Tuecke <sven-ola-aet-gmx.de>
  * Copyright (c) 2004, Andreas Tonnesen(andreto-at-olsr.org)
 #include "olsrd_plugin.h"
 #include "plugin_util.h"
 
-int olsrd_plugin_init (void);
-void olsrd_get_plugin_parameters (const struct olsrd_plugin_parameters
-                                  **params, int *size);
-int olsrd_plugin_interface_version (void);
+int olsrd_plugin_init(void);
+void olsrd_get_plugin_parameters(const struct olsrd_plugin_parameters
+                                 **params, int *size);
+int olsrd_plugin_interface_version(void);
 
 #endif
 
index 67262f0..b17f18e 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR Basic Multicast Forwarding (BMF) plugin.
  * Copyright (c) 2005 - 2007, Thales Communications, Huizen, The Netherlands.
@@ -69,20 +70,15 @@ int EnableLocalBroadcast = 1;
  * Data Used  : none
  * ------------------------------------------------------------------------- */
 int
-DoLocalBroadcast (const char *enable, void *data
-                  __attribute__ ((unused)), set_plugin_parameter_addon addon
-                  __attribute__ ((unused)))
+DoLocalBroadcast(const char *enable, void *data __attribute__ ((unused)), set_plugin_parameter_addon addon __attribute__ ((unused)))
 {
-  if (strcmp (enable, "yes") == 0)
-    {
-      EnableLocalBroadcast = 1;
-      return 0;
-    }
-  else if (strcmp (enable, "no") == 0)
-    {
-      EnableLocalBroadcast = 0;
-      return 0;
-    }
+  if (strcmp(enable, "yes") == 0) {
+    EnableLocalBroadcast = 1;
+    return 0;
+  } else if (strcmp(enable, "no") == 0) {
+    EnableLocalBroadcast = 0;
+    return 0;
+  }
 
   /* Value not recognized */
   return 1;
@@ -97,11 +93,11 @@ DoLocalBroadcast (const char *enable, void *data
  * Data Used  : none
  * ------------------------------------------------------------------------- */
 int
-IsMulticast (union olsr_ip_addr *ipAddress)
+IsMulticast(union olsr_ip_addr *ipAddress)
 {
-  assert (ipAddress != NULL);
+  assert(ipAddress != NULL);
 
-  return (ntohl (ipAddress->v4.s_addr) & 0xF0000000) == 0xE0000000;
+  return (ntohl(ipAddress->v4.s_addr) & 0xF0000000) == 0xE0000000;
 }
 
 /* -------------------------------------------------------------------------
@@ -113,44 +109,42 @@ IsMulticast (union olsr_ip_addr *ipAddress)
  * Data Used  : none
  * ------------------------------------------------------------------------- */
 int
-IsOlsrOrBmfPacket (unsigned char *ipPacket)
+IsOlsrOrBmfPacket(unsigned char *ipPacket)
 {
   struct ip *ipHeader;
   unsigned int ipHeaderLen;
   struct udphdr *udpHeader;
   u_int16_t destPort;
 
-  assert (ipPacket != NULL);
+  assert(ipPacket != NULL);
 
   /* OLSR packets are UDP - port 698
    * OLSR-BMF packets are UDP - port 50698
    * OLSR-Autodetect probe packets are UDP - port 51698 */
 
   /* Check if UDP */
-  ipHeader = (struct ip *) ipPacket;
-  if (ipHeader->ip_p != SOL_UDP)
-    {
-      /* Not UDP */
-      return 0;
-    }
+  ipHeader = (struct ip *)ipPacket;
+  if (ipHeader->ip_p != SOL_UDP) {
+    /* Not UDP */
+    return 0;
+  }
 
   /* The total length must be at least large enough to store the UDP header */
-  ipHeaderLen = GetIpHeaderLength (ipPacket);
-  if (GetIpTotalLength (ipPacket) < ipHeaderLen + sizeof (struct udphdr))
-    {
-      /* Not long enough */
-      return 0;
-    }
+  ipHeaderLen = GetIpHeaderLength(ipPacket);
+  if (GetIpTotalLength(ipPacket) < ipHeaderLen + sizeof(struct udphdr)) {
+    /* Not long enough */
+    return 0;
+  }
 
   /* Go into the UDP header and check port number */
-  udpHeader = (struct udphdr *) (ipPacket + ipHeaderLen);
-  destPort = ntohs (udpHeader->dest);
+  udpHeader = (struct udphdr *)(ipPacket + ipHeaderLen);
+  destPort = ntohs(udpHeader->dest);
 
   if (destPort == OLSRPORT || destPort == BMF_ENCAP_PORT || destPort == 51698)
     /* TODO: #define for 51698 */
-    {
-      return 1;
-    }
+  {
+    return 1;
+  }
 
   return 0;
 }
index 84b413e..7a056aa 100644 (file)
@@ -48,10 +48,9 @@ struct TBmfInterface;
 
 extern int EnableLocalBroadcast;
 
-int DoLocalBroadcast (const char *enable, void *data,
-                      set_plugin_parameter_addon addon);
-int IsMulticast (union olsr_ip_addr *ipAddress);
-int IsOlsrOrBmfPacket (unsigned char *ipPacket);
+int DoLocalBroadcast(const char *enable, void *data, set_plugin_parameter_addon addon);
+int IsMulticast(union olsr_ip_addr *ipAddress);
+int IsOlsrOrBmfPacket(unsigned char *ipPacket);
 
 #endif /* _BMF_ADDRESS_H */
 
index 32d609f..31e2dbb 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * OLSR Basic Multicast Forwarding (BMF) plugin.
  * Copyright (c) 2005 - 2007, Thales Communications, Huizen, The Netherlands.
@@ -92,31 +93,28 @@ int BroadcastRetransmitCount = 1;
  * Data Used  : none
  * ------------------------------------------------------------------------- */
 void
-BmfPError (const char *format, ...)
+BmfPError(const char *format, ...)
 {
 #define MAX_STR_DESC 255
-  char *strErr = strerror (errno);
+  char *strErr = strerror(errno);
   char strDesc[MAX_STR_DESC];
 
   /* Rely on short-circuit boolean evaluation */
-  if (format == NULL || *format == '\0')
-    {
-      olsr_printf (1, "%s: %s\n", PLUGIN_NAME, strErr);
-    }
-  else
-    {
-      va_list arglist;
+  if (format == NULL || *format == '\0') {
+    olsr_printf(1, "%s: %s\n", PLUGIN_NAME, strErr);
+  } else {
+    va_list arglist;
 
-      olsr_printf (1, "%s: ", PLUGIN_NAME);
+    olsr_printf(1, "%s: ", PLUGIN_NAME);
 
-      va_start (arglist, format);
-      vsnprintf (strDesc, MAX_STR_DESC, format, arglist);
-      va_end (arglist);
+    va_start(arglist, format);
+    vsnprintf(strDesc, MAX_STR_DESC, format, arglist);
+    va_end(arglist);
 
-      strDesc[MAX_STR_DESC - 1] = '\0'; /* Ensures null termination */
+    strDesc[MAX_STR_DESC - 1] = '\0';   /* Ensures null termination */
 
-      olsr_printf (1, "%s: %s\n", strDesc, strErr);
-    }
+    olsr_printf(1, "%s: %s\n", strDesc, strErr);
+  }
 }                               /* BmfPError */
 
 /* -------------------------------------------------------------------------
@@ -128,16 +126,15 @@ BmfPError (const char *format, ...)
  * Data Used  : none
  * ------------------------------------------------------------------------- */
 union olsr_ip_addr *
-MainAddressOf (union olsr_ip_addr *ip)
+MainAddressOf(union olsr_ip_addr *ip)
 {
   union olsr_ip_addr *result;
 
   /* TODO: mid_lookup_main_addr() is not thread-safe! */
-  result = mid_lookup_main_addr (ip);
-  if (result == NULL)
-    {
-      result = ip;
-    }
+  result = mid_lookup_main_addr(ip);
+  if (result == NULL) {
+    result = ip;
+  }
   return result;
 }                               /* MainAddressOf */
 
@@ -152,40 +149,37 @@ MainAddressOf (union olsr_ip_addr *ip)
  * Data Used  : none
  * ------------------------------------------------------------------------- */
 static void
-EncapsulateAndForwardPacket (struct TBmfInterface *intf,
-                             unsigned char *encapsulationUdpData)
+EncapsulateAndForwardPacket(struct TBmfInterface *intf, unsigned char *encapsulationUdpData)
 {
   /* The packet */
-  u_int16_t udpDataLen = GetEncapsulationUdpDataLength (encapsulationUdpData);
+  u_int16_t udpDataLen = GetEncapsulationUdpDataLength(encapsulationUdpData);
 
   /* The next destination(s) */
   struct TBestNeighbors bestNeighborLinks;
   struct link_entry *bestNeighbor;
 
   int nPossibleNeighbors = 0;
-  struct sockaddr_in forwardTo; /* Next destination of encapsulation packet */
+  struct sockaddr_in forwardTo;        /* Next destination of encapsulation packet */
   int nPacketsToSend;
-  int sendUnicast;              /* 0 = send broadcast; 1 = send unicast */
+  int sendUnicast;                     /* 0 = send broadcast; 1 = send unicast */
 
   int i;
 
   /* Find at most 'FanOutLimit' best neigbors to forward the packet to */
-  FindNeighbors (&bestNeighborLinks, &bestNeighbor, intf, NULL, NULL, NULL,
-                 &nPossibleNeighbors);
-
-  if (nPossibleNeighbors <= 0)
-    {
-      OLSR_PRINTF (8,
-                   "%s: --> not encap-forwarding on \"%s\": there is no neighbor that needs my retransmission\n",
-                   PLUGIN_NAME_SHORT, intf->ifName);
-      return;
-    }
+  FindNeighbors(&bestNeighborLinks, &bestNeighbor, intf, NULL, NULL, NULL, &nPossibleNeighbors);
+
+  if (nPossibleNeighbors <= 0) {
+    OLSR_PRINTF(8,
+                "%s: --> not encap-forwarding on \"%s\": there is no neighbor that needs my retransmission\n",
+                PLUGIN_NAME_SHORT, intf->ifName);
+    return;
+  }
 
   /* Compose destination of encapsulation packet */
 
-  memset (&forwardTo, 0, sizeof (forwardTo));
+  memset(&forwardTo, 0, sizeof(forwardTo));
   forwardTo.sin_family = AF_INET;
-  forwardTo.sin_port = htons (BMF_ENCAP_PORT);
+  forwardTo.sin_port = htons(BMF_ENCAP_PORT);
 
   /* Start by filling in the local broadcast address. This may be overwritten later. */
   forwardTo.sin_addr = intf->broadAddr.v4;
@@ -197,63 +191,51 @@ EncapsulateAndForwardPacket (struct TBmfInterface *intf,
    *     'FanOutLimit' possible neighbors,
    *   - if there are more than 'FanOutLimit' possible neighbors, then
    *     send a (WLAN-air-expensive, less reliable) broadcast packet. */
-  if (BmfMechanism == BM_UNICAST_PROMISCUOUS)
-    {
-      /* One unicast packet to the best neighbor */
-      nPacketsToSend = 1;
+  if (BmfMechanism == BM_UNICAST_PROMISCUOUS) {
+    /* One unicast packet to the best neighbor */
+    nPacketsToSend = 1;
+    sendUnicast = 1;
+    bestNeighborLinks.links[0] = bestNeighbor;
+  } else {                      /* BmfMechanism == BM_BROADCAST */
+
+    if (nPossibleNeighbors <= FanOutLimit) {
+      /* 'nPossibleNeighbors' unicast packets */
+      nPacketsToSend = nPossibleNeighbors;
       sendUnicast = 1;
-      bestNeighborLinks.links[0] = bestNeighbor;
-    }
-  else                          /* BmfMechanism == BM_BROADCAST */
-    {
-      if (nPossibleNeighbors <= FanOutLimit)
-        {
-          /* 'nPossibleNeighbors' unicast packets */
-          nPacketsToSend = nPossibleNeighbors;
-          sendUnicast = 1;
-        }
-      else                      /* nPossibleNeighbors > FanOutLimit */
-        {
-          /* One broadcast packet, possibly retransmitted as specified in the
-           * 'BroadcastRetransmitCount' plugin parameter */
-          nPacketsToSend = BroadcastRetransmitCount;
-          sendUnicast = 0;
-        }                       /* if */
+    } else {                    /* nPossibleNeighbors > FanOutLimit */
+
+      /* One broadcast packet, possibly retransmitted as specified in the
+       * 'BroadcastRetransmitCount' plugin parameter */
+      nPacketsToSend = BroadcastRetransmitCount;
+      sendUnicast = 0;
     }                           /* if */
+  }                             /* if */
 
-  for (i = 0; i < nPacketsToSend; i++)
-    {
-      int nBytesWritten;
+  for (i = 0; i < nPacketsToSend; i++) {
+    int nBytesWritten;
 
-      if (sendUnicast == 1)
-        {
-          /* For unicast, overwrite the local broadcast address which was filled in above */
-          forwardTo.sin_addr =
-            bestNeighborLinks.links[i]->neighbor_iface_addr.v4;
-        }
+    if (sendUnicast == 1) {
+      /* For unicast, overwrite the local broadcast address which was filled in above */
+      forwardTo.sin_addr = bestNeighborLinks.links[i]->neighbor_iface_addr.v4;
+    }
 
-      /* Forward the BMF packet via the encapsulation socket */
-      nBytesWritten =
-        sendto (intf->encapsulatingSkfd, encapsulationUdpData, udpDataLen,
-                MSG_DONTROUTE, (struct sockaddr *) &forwardTo,
-                sizeof (forwardTo));
+    /* Forward the BMF packet via the encapsulation socket */
+    nBytesWritten =
+      sendto(intf->encapsulatingSkfd, encapsulationUdpData, udpDataLen,
+             MSG_DONTROUTE, (struct sockaddr *)&forwardTo, sizeof(forwardTo));
 
-      /* Evaluate and display result */
-      if (nBytesWritten != udpDataLen)
-        {
-          BmfPError ("sendto() error forwarding pkt on \"%s\"", intf->ifName);
-        }
-      else
-        {
-          /* Increase counter */
-          intf->nBmfPacketsTx++;
+    /* Evaluate and display result */
+    if (nBytesWritten != udpDataLen) {
+      BmfPError("sendto() error forwarding pkt on \"%s\"", intf->ifName);
+    } else {
+      /* Increase counter */
+      intf->nBmfPacketsTx++;
 
-          OLSR_PRINTF (8,
-                       "%s: --> encapsulated and forwarded on \"%s\" to %s\n",
-                       PLUGIN_NAME_SHORT, intf->ifName,
-                       inet_ntoa (forwardTo.sin_addr));
-        }                       /* if (nBytesWritten != udpDataLen) */
-    }                           /* for */
+      OLSR_PRINTF(8,
+                  "%s: --> encapsulated and forwarded on \"%s\" to %s\n",
+                  PLUGIN_NAME_SHORT, intf->ifName, inet_ntoa(forwardTo.sin_addr));
+    }                           /* if (nBytesWritten != udpDataLen) */
+  }                             /* for */
 }                               /* EncapsulateAndForwardPacket */
 
 /* -------------------------------------------------------------------------
@@ -271,38 +253,34 @@ EncapsulateAndForwardPacket (struct TBmfInterface *intf,
  *              PF_PACKET and type SOCK_DGRAM (cooked).
  * ------------------------------------------------------------------------- */
 static void
-BmfPacketCaptured (struct TBmfInterface *intf, unsigned char sllPkttype,
-                   unsigned char *encapsulationUdpData)
+BmfPacketCaptured(struct TBmfInterface *intf, unsigned char sllPkttype, unsigned char *encapsulationUdpData)
 {
-  union olsr_ip_addr src;       /* Source IP address in captured packet */
-  union olsr_ip_addr dst;       /* Destination IP address in captured packet */
-  union olsr_ip_addr *origIp;   /* Main OLSR address of source of captured packet */
+  union olsr_ip_addr src;              /* Source IP address in captured packet */
+  union olsr_ip_addr dst;              /* Destination IP address in captured packet */
+  union olsr_ip_addr *origIp;          /* Main OLSR address of source of captured packet */
   struct TBmfInterface *walker;
   int isFromOlsrIntf;
   int isFromOlsrNeighbor;
   int iAmMpr;
-  unsigned char *ipPacket;      /* The captured IP packet... */
-  u_int16_t ipPacketLen;        /* ...and its length */
-  struct ip *ipHeader;          /* The IP header inside the captured IP packet */
+  unsigned char *ipPacket;             /* The captured IP packet... */
+  u_int16_t ipPacketLen;               /* ...and its length */
+  struct ip *ipHeader;                 /* The IP header inside the captured IP packet */
   u_int32_t crc32;
   struct TEncapHeader *encapHdr;
   struct ipaddr_str srcBuf, dstBuf;
-  ipHeader = GetIpHeader (encapsulationUdpData);
+  ipHeader = GetIpHeader(encapsulationUdpData);
 
   dst.v4 = ipHeader->ip_dst;
 
   /* Only forward multicast packets. If configured, also forward local broadcast packets */
-  if (IsMulticast (&dst)
-      || (EnableLocalBroadcast != 0 && ipequal (&dst, &intf->broadAddr)))
-    {
-      /* continue */
-    }
-  else
-    {
-      return;
-    }
+  if (IsMulticast(&dst)
+      || (EnableLocalBroadcast != 0 && ipequal(&dst, &intf->broadAddr))) {
+    /* continue */
+  } else {
+    return;
+  }
 
-  ipPacket = GetIpPacket (encapsulationUdpData);
+  ipPacket = GetIpPacket(encapsulationUdpData);
 
   /* Don't forward fragments of IP packets: there is no way to distinguish fragments
    * of BMF encapsulation packets from other fragments.
@@ -311,10 +289,9 @@ BmfPacketCaptured (struct TBmfInterface *intf, unsigned char sllPkttype,
    * than the first fragment, so that the list is not yet up to date and the second
    * fragment is not recognized as a BMF packet.
    * Also, don't forward OLSR packets (UDP port 698) and BMF encapsulated packets */
-  if (IsIpFragment (ipPacket) || IsOlsrOrBmfPacket (ipPacket))
-    {
-      return;
-    }
+  if (IsIpFragment(ipPacket) || IsOlsrOrBmfPacket(ipPacket)) {
+    return;
+  }
 
   /* Increase counter */
   intf->nBmfPacketsRx++;
@@ -323,238 +300,205 @@ BmfPacketCaptured (struct TBmfInterface *intf, unsigned char sllPkttype,
   isFromOlsrIntf = (intf->olsrIntf != NULL);
 
   /* Retrieve the length of the captured packet */
-  ipPacketLen = GetIpTotalLength (ipPacket);
+  ipPacketLen = GetIpTotalLength(ipPacket);
 
   src.v4 = ipHeader->ip_src;
 
-  OLSR_PRINTF (8,
-               "%s: %s pkt of %ld bytes captured on %s interface \"%s\": %s->%s\n",
-               PLUGIN_NAME_SHORT,
-               sllPkttype == PACKET_OUTGOING ? "outgoing" : "incoming",
-               (long) ipPacketLen, isFromOlsrIntf ? "OLSR" : "non-OLSR",
-               intf->ifName, olsr_ip_to_string (&srcBuf, &src),
-               olsr_ip_to_string (&dstBuf, &dst));
+  OLSR_PRINTF(8,
+              "%s: %s pkt of %ld bytes captured on %s interface \"%s\": %s->%s\n",
+              PLUGIN_NAME_SHORT,
+              sllPkttype == PACKET_OUTGOING ? "outgoing" : "incoming",
+              (long)ipPacketLen, isFromOlsrIntf ? "OLSR" : "non-OLSR",
+              intf->ifName, olsr_ip_to_string(&srcBuf, &src), olsr_ip_to_string(&dstBuf, &dst));
 
   /* Lookup main address of source in the MID table of OLSR */
-  origIp = MainAddressOf (&src);
+  origIp = MainAddressOf(&src);
 
   /* Calculate packet fingerprint */
-  crc32 = PacketCrc32 (ipPacket, ipPacketLen);
+  crc32 = PacketCrc32(ipPacket, ipPacketLen);
 
   /* Check if this packet was seen recently */
-  if (CheckAndMarkRecentPacket (crc32))
-    {
-      /* Increase counter */
-      intf->nBmfPacketsRxDup++;
+  if (CheckAndMarkRecentPacket(crc32)) {
+    /* Increase counter */
+    intf->nBmfPacketsRxDup++;
 
-      OLSR_PRINTF (8, "%s: --> discarding: packet is duplicate\n",
-                   PLUGIN_NAME_SHORT);
-      return;
-    }
+    OLSR_PRINTF(8, "%s: --> discarding: packet is duplicate\n", PLUGIN_NAME_SHORT);
+    return;
+  }
 
   /* Compose encapsulation header */
-  encapHdr = (struct TEncapHeader *) encapsulationUdpData;
-  memset (encapHdr, 0, ENCAP_HDR_LEN);
+  encapHdr = (struct TEncapHeader *)encapsulationUdpData;
+  memset(encapHdr, 0, ENCAP_HDR_LEN);
   encapHdr->type = BMF_ENCAP_TYPE;
   encapHdr->len = BMF_ENCAP_LEN;
   encapHdr->reserved = 0;
-  encapHdr->crc32 = htonl (crc32);
+  encapHdr->crc32 = htonl(crc32);
 
   /* Check if the frame is captured on an OLSR interface from an OLSR neighbor.
    * TODO1: get_best_link_to_neighbor() is not thread-safe.
    * TODO2: get_best_link_to_neighbor() may be very CPU-expensive, a simpler call
    * would do here (something like 'get_any_link_to_neighbor()'). */
   isFromOlsrNeighbor = (isFromOlsrIntf  /* The frame is captured on an OLSR interface... */
-                        && get_best_link_to_neighbor (origIp) != NULL); /* ...from an OLSR neighbor */
+                        && get_best_link_to_neighbor(origIp) != NULL);  /* ...from an OLSR neighbor */
 
   /* Check with OLSR if I am MPR for that neighbor */
   /* TODO: olsr_lookup_mprs_set() is not thread-safe! */
-  iAmMpr = olsr_lookup_mprs_set (origIp) != NULL;
+  iAmMpr = olsr_lookup_mprs_set(origIp) != NULL;
 
   /* Check with each network interface what needs to be done on it */
-  for (walker = BmfInterfaces; walker != NULL; walker = walker->next)
-    {
-      /* Is the forwarding interface OLSR-enabled? */
-      int isToOlsrIntf = (walker->olsrIntf != NULL);
-
-      /* Depending on certain conditions, we decide whether or not to forward
-       * the packet, and if it is forwarded, in which form (encapsulated
-       * or not, TTL decreased or not). These conditions are:
-       * - is the packet is coming in on an OLSR interface or not? (isFromOlsrIntf)
-       * - is the packet going out on an OLSR interface or not? (isToOlsrIntf)
-       * - if the packet if coming in on an OLSR interface:
-       *   - is the node that forwarded the packet my OLSR-neighbor? (isFromOlsrNeighbor)
-       *   - has the node that forwarded the packet selected me as MPR? (iAmMpr)
-       *
-       * Based on these conditions, the following cases can be distinguished:
-       *
-       * - Case 1: Packet coming in on an OLSR interface. What to
-    &nb