Removed end-of-line spaces
authorSven-Ola Tuecke <sven-ola@gmx.de>
Thu, 4 Dec 2008 07:34:05 +0000 (08:34 +0100)
committerSven-Ola Tuecke <sven-ola@gmx.de>
Thu, 4 Dec 2008 07:34:05 +0000 (08:34 +0100)
234 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
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/nodes.c
gui/linux-gtk/src/olsr_protocol.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/Main/resource.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/mapwrite.c
lib/nameservice/src/mapwrite.h
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/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/lauxlib.c
lib/tas/src/lua/lauxlib.h
lib/tas/src/lua/lcode.c
lib/tas/src/lua/ldblib.c
lib/tas/src/lua/ldo.c
lib/tas/src/lua/ldo.h
lib/tas/src/lua/llex.c
lib/tas/src/lua/loadlib.c
lib/tas/src/lua/lobject.h
lib/tas/src/lua/lopcodes.h
lib/tas/src/lua/lparser.c
lib/tas/src/lua/lstate.h
lib/tas/src/lua/ltable.c
lib/tas/src/lua/ltests.c
lib/tas/src/lua/lua.h
lib/tas/src/lua/lundump.c
lib/tas/src/lua/lvm.c
lib/tas/src/os_unix.c
lib/tas/src/os_unix.h
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/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/autobuf.c
src/common/autobuf.h
src/common/avl.c
src/common/avl.h
src/common/list.h
src/common/string.c
src/common/string.h
src/defs.h
src/fpm.h
src/generate_msg.c
src/generate_msg.h
src/hashing.c
src/hashing.h
src/hna_set.h
src/hysteresis.c
src/hysteresis.h
src/ifnet.h
src/interfaces.c
src/interfaces.h
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_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.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/commands.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/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.h
src/process_routes.c
src/process_routes.h
src/routing_table.c
src/routing_table.h
src/scheduler.c
src/scheduler.h
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/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 40607db..0283fdd 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * NetsimPcap - a userspace network bridge with simulated packet loss
  *             Copyright 2008 H. Rogge (rogge@fgan.de)
- * 
+ *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation, either version 3 of the License, or
@@ -25,9 +25,9 @@
 
 /*
  * stripString
- * 
+ *
  * this function strips leading and trailing whitespaces from a string
- * 
+ *
  * @param string to strip
  * @return stripped string
  */
@@ -39,7 +39,7 @@ stripString (char *str)
   while (*str == ' ' || *str == '\t') {
     str++;
   }
-       
+
   /* strip right whitespaces */
   int i = strlen(str);
   while (--i >= 0) {
@@ -48,16 +48,16 @@ stripString (char *str)
       break;
     }
   }
-       
+
   return str;
 }
 
 /*
  * readConnectionMatrix
- * 
+ *
  * This function reads the network settings and place them in the
  * connection matrix (float array with size "len" x "len".
- * 
+ *
  * @param pointer to begin of connection matrix
  * @param pointer to filename
  * @param number of elements in each connection matrix line
@@ -70,27 +70,27 @@ readConnectionMatrix (float *connectionMatrix, char *filename, int len)
   if (!file) {
     return 1;
   }
-       
+
   char buffer[1024];
   while (fgets(buffer, 1024, file)) {
     int from, to;
     float propability;
-    
+
     char *line = stripString(buffer);
     DPRINT("%s\n", line);
-               
+
     if (line[0] == '#' || line[0] == 0) {
       continue;
     }
-               
+
     if(sscanf(line, "%d %d %f", &from, &to, &propability) != 3) {
       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;
index 4172783..594a776 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * NetsimPcap - a userspace network bridge with simulated packet loss
  *             Copyright 2008 H. Rogge (rogge@fgan.de)
- * 
+ *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation, either version 3 of the License, or
@@ -17,7 +17,7 @@
  */
 
 #ifndef CONFIG_H_
-    
+
 #define CONFIG_H_
 
 #define GRID(x,y,width) ((x) + (y) * (width))
index e602477..07360a1 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * NetsimPcap - a userspace network bridge with simulated packet loss
  *             Copyright 2008 H. Rogge (rogge@fgan.de)
- * 
+ *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation, either version 3 of the License, or
index c127dbf..b36b9ed 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * NetsimPcap - a userspace network bridge with simulated packet loss
  *             Copyright 2008 H. Rogge (rogge@fgan.de)
- * 
+ *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation, either version 3 of the License, or
@@ -62,7 +62,7 @@ u_int8_t mac_bc[6] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
 
 /*
  * signalHandler
- * 
+ *
  * This handler stops the mainloop when the programm is send a signal
  * to stop
  */
@@ -74,7 +74,7 @@ signalHandler (int signo __attribute__((unused)))
 
 /*
  * calculateConnections
- * 
+ *
  * @param pointer to user defined connection matrix
  * @param number of elements in a matrix line
  * @param 1 if matrix contains drop-propabilities
@@ -88,7 +88,7 @@ calculateConnections (float *connMatrix, int socketcount, int drop)
   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++) {
@@ -98,19 +98,19 @@ calculateConnections (float *connMatrix, int socketcount, int 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;
     }
   }
-  
+
   if (debugMode) {
     printf("Connection matrix for unicast:\n");
     for (j=0; j<socketcount; j++) {
@@ -118,7 +118,7 @@ calculateConnections (float *connMatrix, int socketcount, int drop)
         if (i>0) {
           printf(" ");
         }
-        
+
         printf("%1.2f", (float)connBC[GRID(i,j, socketcount)] / (float)(1<<24));
       }
       printf("\n");
@@ -129,7 +129,7 @@ calculateConnections (float *connMatrix, int socketcount, int drop)
         if (i>0) {
           printf(" ");
         }
-        
+
         printf("%1.2f", (float)connUni[GRID(i,j, socketcount)] / (float)(1<<24));
       }
       printf("\n");
@@ -139,7 +139,7 @@ calculateConnections (float *connMatrix, int socketcount, int drop)
 
 /*
  * tap_callback
- * 
+ *
  * This function is called every times a package is received through the
  * (optional) tap device. It retransmits the package to all connected devices.
  */
@@ -147,7 +147,7 @@ void
 tap_callback (void)
 {
   int len, i;
-  
+
   len = read(tapFD, buffer, sizeof(buffer));
   if (len > 0) {
     for (i=0; i<deviceCount; i++) {
@@ -158,12 +158,12 @@ tap_callback (void)
 
 /*
  * capture_callback
- * 
+ *
  * This function is called for every package received through libpcap on
  * one of the connected devices. It retransmit the package to the other
  * devices (loss propability is defined in connection matrix) and always
  * to the tap device (if active)
- * 
+ *
  * See libpcap documentation for parameters
  */
 void
@@ -171,12 +171,12 @@ capture_callback (u_char *args, const struct pcap_pkthdr* hdr, const u_char* pac
 {
   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) {
@@ -188,7 +188,7 @@ capture_callback (u_char *args, const struct pcap_pkthdr* hdr, const u_char* pac
       send += t;
     }
   }
-  
+
   for (i=0; i<deviceCount; i++) {
     u_int32_t prop;
     if (unicast) {
@@ -196,11 +196,11 @@ capture_callback (u_char *args, const struct pcap_pkthdr* hdr, const u_char* pac
     } else {
       prop = connBC[GRID(*index, i, deviceCount)];
     }
-    
+
     if (prop == 0 || prop < (rand() % (1<<24))) {
       continue;
     }
-    
+
     pcap_inject(devices[i], buffer, len);
   }
 }
@@ -213,19 +213,19 @@ main (int argc, char **argv)
   char *connectionFile= NULL;
   int deviceIndex = -1;
   int hubMode = 0;
-  
+
   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;
   }
-  
+
   deviceCount = 0;
   tapFD = -1;
-  
+
   for (i=1; i<argc; i++) {
     if (strcmp(argv[i], "-con")==0 && i < argc-1) {
       connectionFile = argv[i+1];
@@ -253,44 +253,44 @@ main (int argc, char **argv)
       debugMode = 1;
     }
   }
-  
+
   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;
     }
-    
+
   }
   running = 1;
-  
+
   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;
 
@@ -318,7 +318,7 @@ main (int argc, char **argv)
 
   char errbuf[PCAP_ERRBUF_SIZE];
   int maxDeviceFD = 0;
-  
+
   if (tapFD != -1) {
     maxDeviceFD = tapFD;
   }
@@ -335,20 +335,20 @@ main (int argc, char **argv)
       }
     }
   }
-  
+
   /* 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);
@@ -356,17 +356,17 @@ main (int argc, char **argv)
     if (tapFD != -1) {
       FD_SET(tapFD, &socketSet);
     }
-    
+
     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;
@@ -378,7 +378,7 @@ main (int argc, char **argv)
       tap_callback();
     }
   }
-  
+
   for (i=0; i<deviceCount; i++) {
     if (devices[i] != NULL) {
       pcap_close(devices[i]);
@@ -386,7 +386,7 @@ main (int argc, char **argv)
   }
   free(connUni);
   free(connBC);
-  
+
   if (tapFD != -1)    closeTap(tapFD);
   return 0;
 }
index 35d7f48..9c8d3b2 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * NetsimPcap - a userspace network bridge with simulated packet loss
  *             Copyright 2008 H. Rogge (rogge@fgan.de)
- * 
+ *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation, either version 3 of the License, or
@@ -48,7 +48,7 @@ char macBroadcast[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
 /*
  * This function translates a mac address from string
  * to binary format.
- * 
+ *
  * @param pointer to source string
  * @param pointer to target mac adresee
  * @return 0 if successful, 1 for an error
@@ -58,9 +58,9 @@ readMac (char *value, MacAddress *target)
 {
   char buffer[13];
   int index = 0;
-  
+
   memset(buffer, 0, sizeof(buffer));
-  
+
   char c;
   while ((c = *value++)) {
     switch (c) {
@@ -95,14 +95,14 @@ readMac (char *value, MacAddress *target)
       break;
     }
   }
-  
+
   if(index < 12) {
     return 1;
   }
-  
+
   for (index = 5; index >= 0; index--) {
     buffer[index*2+2] = 0;
-    
+
     int value;
     sscanf(&buffer[index], "%x", &value);
     target->mac[index] = (char) value;
@@ -112,9 +112,9 @@ readMac (char *value, MacAddress *target)
 
 /*
  * closeTap
- * 
+ *
  * This function close a tap device
- * 
+ *
  * @param file destriptor of the tap device
  */
 void
@@ -125,10 +125,10 @@ closeTap (int fd)
 
 /*
  * createTap
- * 
+ *
  * This function creates a tap device, sets a mac address
  * and the broadcast address and activates the device
- * 
+ *
  * @param pointer to device name
  * @param pointer to mac address
  * @return file descriptor of tap device, -1 if an error
@@ -140,46 +140,46 @@ createTap (char *name, MacAddress *mac)
   static const char deviceName[] = "/dev/net/tun";
   int etfd;
   struct ifreq ifreq;
-       
+
   int ioctlSkfd;
   int ioctlres;
-       
+
   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);
   ifreq.ifr_name[IFNAMSIZ - 1] = '\0'; /* Ensures null termination */
-       
-       
+
+
   /*
    * Specify the IFF_TAP flag for Ethernet packets.
    * Specify IFF_NO_PI for not receiving extra meta packet information.
    */
   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;
   }
-       
+
   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;
   }
-       
+
   /* Set hardware address */
   ifreq.ifr_addr.sa_family = ARPHRD_ETHER;
   memcpy(ifreq.ifr_addr.sa_data, mac, 6);
@@ -204,19 +204,19 @@ createTap (char *name, MacAddress *mac)
     close(ioctlSkfd);
     return -1;
   }
-       
-       
+
+
   /* Set the multicast flag on the interface */
   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);
   }
-       
+
   close(ioctlSkfd);
   return etfd;
 }
index 248372b..bf1fe3b 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * NetsimPcap - a userspace network bridge with simulated packet loss
  *             Copyright 2008 H. Rogge (rogge@fgan.de)
- * 
+ *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation, either version 3 of the License, or
index cb40674..d4d3f40 100644 (file)
@@ -101,7 +101,7 @@ node_selection(GtkWidget *clist, gint row, gint column, GdkEventButton *event, g
       /* Timeout the registered MPRs for this node */
       time_out_mprs(&host->addr);
 
-      /* Get mpr pointer AFTER timeout....(another waisted hour...) */ 
+      /* Get mpr pointer AFTER timeout....(another waisted hour...) */
       mprs = host->mpr.next;
       mids = host->mid.next;
       hnas = host->hna.next;
@@ -172,7 +172,7 @@ packet_selection(GtkWidget *clist, gint row, gint column, GdkEventButton *event,
   gtk_clist_clear(GTK_CLIST(packet_content_list));
 
   size = ntohs(pack->v4.olsr_msgsize);
-  
+
   for(y = 0; y < size;y += 4)
     {
 
@@ -181,7 +181,7 @@ packet_selection(GtkWidget *clist, gint row, gint column, GdkEventButton *event,
          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 */     
+           sprintf(content[x], "%02x", (u_char) packet[y+x]); /* Hex format */
        }
 
       gtk_clist_append(GTK_CLIST(packet_content_list), content);
@@ -209,7 +209,7 @@ column_clicked_callback(GtkWidget *list,gint column)
 /*
  *Connect button callback
  */
-void 
+void
 connect_callback( GtkWidget *widget,
                  gpointer   data )
 {
@@ -221,7 +221,7 @@ connect_callback( GtkWidget *widget,
 /*
  *Packet button callback
  */
-void 
+void
 packet_callback( GtkWidget *widget,
                  gpointer   data )
 {
@@ -242,7 +242,7 @@ packet_callback( GtkWidget *widget,
 /*
  *Packet display button callback
  */
-void 
+void
 packet_disp_callback( GtkWidget *widget,
                  gpointer   data )
 {
index f84bbe8..27f0d06 100644 (file)
@@ -37,7 +37,7 @@
 //#include "types.h"
 #include "olsr_protocol.h"
 
-#define olsrd_version "olsr.org GUI 0.2.7" 
+#define olsrd_version "olsr.org GUI 0.2.7"
 #define IPC_INTERVAL 500 //interval for IPC read timeout
 #define MAXPACKS 20
 #define BUFFSIZE 512
@@ -116,7 +116,7 @@ struct node
  */
 
 
-GtkWidget * 
+GtkWidget *
 create_main_window (void);
 
 
index 2967f4f..6876436 100644 (file)
@@ -183,7 +183,7 @@ 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,
@@ -910,7 +910,7 @@ create_main_window (void)
                             (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);
-  
+
 
 
 
@@ -1064,7 +1064,7 @@ route_list_del(char *dest)
     }
 
   gtk_clist_thaw(GTK_CLIST(route_list));
-  return 0;  
+  return 0;
 }
 
 
@@ -1170,7 +1170,7 @@ update_nodes_list(struct node *node)
        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
@@ -1250,8 +1250,8 @@ 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"); 
+  gtk_label_set_text((GtkLabel *)info_label, info);
+  gtk_label_set_text((GtkLabel *)net_label, "Connected");
 
   strcat(title, olsrd_version);
   strcat(title, " - ");
@@ -1261,7 +1261,7 @@ set_net_info(gchar *info, int disp_button)
 
   if(disp_button)
     gtk_widget_show(connect_button);
-  else 
+  else
     gtk_widget_hide(connect_button);
 }
 
@@ -1277,7 +1277,7 @@ set_net_info_offline()
 void
 set_net_info_connecting()
 {
-  gtk_label_set_text((GtkLabel *)net_label, "Connecting...");  
+  gtk_label_set_text((GtkLabel *)net_label, "Connecting...");
 }
 
 
index 2be1d01..eb16082 100644 (file)
@@ -68,15 +68,15 @@ void
 column_clicked_callback(GtkWidget *,gint);
 
 
-void 
+void
 connect_callback( GtkWidget *widget,
                  gpointer   data );
 
-void 
+void
 packet_callback( GtkWidget *widget,
                  gpointer   data );
 
-void 
+void
 packet_disp_callback( GtkWidget *widget,
                  gpointer   data );
 
index fb2e5e9..b09097d 100644 (file)
@@ -42,7 +42,7 @@ ipc_close()
 
   if(close(ipc_socket))
     return 1;
-  
+
   return 0;
 }
 
@@ -61,7 +61,7 @@ ipc_connect(struct sockaddr_in *pin)
   connected = 0;
 
   if(!ipc_socket)
-    if((ipc_socket = socket(AF_INET, SOCK_STREAM, 0)) == -1) 
+    if((ipc_socket = socket(AF_INET, SOCK_STREAM, 0)) == -1)
       {
        perror("socket");
        exit(1);
@@ -70,19 +70,19 @@ ipc_connect(struct sockaddr_in *pin)
   printf("Attempting connect...");
 
   /* connect to PORT on HOST */
-  if (connect(ipc_socket,(struct sockaddr *) pin, sizeof(*pin)) < 0) 
+  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 
+  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)
@@ -96,19 +96,19 @@ ipc_connect(struct sockaddr_in *pin)
          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);
        }
-#endif      
+#endif
       connected = 1;
-      
+
       return 1;
     }
-  
+
   return 0;
 
 }
@@ -121,7 +121,7 @@ ipc_read()
   int bytes, tmp_len;
   char *tmp;
   union olsr_message *msg;
-  union 
+  union
   {
     char       buf[BUFFSIZE+1];
     union      olsr_message olsr_msg;
@@ -142,13 +142,13 @@ ipc_read()
           connected = 0;
          close(ipc_socket);
         }
-     
+
       if(bytes > 0)
        {
-          
+
          tmp = (char *) &inbuf.olsr_msg;
-       
-         /*    
+
+         /*
          x = 0;
          printf("\n\t");
          for(i = 0; i < bytes;i++)
@@ -161,10 +161,10 @@ ipc_read()
              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 */
@@ -203,7 +203,7 @@ ipc_read()
                }
              //printf("\n");
            }
-         
+
          /* Only one (or the last) message */
          ipc_evaluate_message(msg);
 
@@ -269,7 +269,7 @@ ipc_evaluate_message(union olsr_message *olsr_in)
     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);
@@ -295,7 +295,7 @@ ipc_evaluate_message(union olsr_message *olsr_in)
          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));
        }
-      
+
       break;
 
     case HNA_MESSAGE:
@@ -312,18 +312,18 @@ ipc_evaluate_message(union olsr_message *olsr_in)
          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);      
+      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);      
+      ipc_eval_net_info((struct netmsg *) olsr_in);
       break;
     default:
       if(!freeze_packets)
@@ -333,9 +333,9 @@ ipc_evaluate_message(union olsr_message *olsr_in)
          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);
@@ -397,12 +397,12 @@ ipc_eval_route_packet(struct routemsg *msg)
   dev[4] = '\0';
   memset(&gw[0], 0, 16);
 
-  printf("Processing route packet\n"); 
+  printf("Processing route packet\n");
 
   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);
@@ -505,7 +505,7 @@ process_hello(int size, uint8_t vtime, union olsr_ip_addr *originator, union hel
           if(MPR)
          update_timer_mpr((union olsr_ip_addr *)&mprsinfo->addr, originator);
          */
-         
+
          if(ipversion == AF_INET) /* Update MPRs */
            {
              if(type == MPR_NEIGH)
@@ -528,11 +528,11 @@ process_hello(int size, uint8_t vtime, union olsr_ip_addr *originator, union hel
          nsize = nsize - ipsize;
          //printf("Nsize: %d\n", nsize);
        }
+
       neigh = (struct hellinfo *) &neigh->neigh_addr[i];
       neigh6 = (struct hellinfo6 *) &neigh6->neigh_addr[i];
 
-      
+
     }
   //printf("DONE\n");
 
@@ -685,7 +685,7 @@ ip_to_string(union olsr_ip_addr *addr)
 {
   char *ret;
   struct in_addr in;
-  
+
   if(ipversion == AF_INET)
     {
       in.s_addr=addr->v4;
index f3ce915..3b84a24 100644 (file)
@@ -48,7 +48,7 @@ int connected;
  *and add
  */
 
-struct routemsg 
+struct routemsg
 {
   uint8_t      msgtype;
   uint16_t     size;
index f17d1a7..179c288 100644 (file)
@@ -44,23 +44,23 @@ main (int argc, char *argv[])
     }
 #endif
 
-  
+
   /* Get IP */
-  if ((hp = gethostbyname(argc > 1 ? argv[1] : "localhost")) == 0) 
+  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));
-  
+
   /* fill in the socket structure with host information */
   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);
-  
+
   gtk_init (&argc, &argv);
 
   init_nodes();
@@ -81,7 +81,7 @@ main (int argc, char *argv[])
   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;
index 64ddad6..dc46e13 100644 (file)
@@ -51,7 +51,7 @@ insert_node(struct node *n, uint8_t vtime)
     }
 
   memcpy(new_node, n, sizeof(struct node));
-  
+
   /* queue */
   nodes.next->prev = new_node;
   new_node->next = nodes.next;
@@ -89,7 +89,7 @@ add_node(union olsr_ip_addr *node, uint8_t vtime)
   time_value = (uint32_t) dbl_time*1000;
 
   tmp_timer.tv_sec = time_value/1000;
-  tmp_timer.tv_usec = (time_value-(tmp_timer.tv_sec*1000)) * 1000;   
+  tmp_timer.tv_usec = (time_value-(tmp_timer.tv_sec*1000)) * 1000;
 
   /* Check if node exists */
   for(tmp_nodes = nodes.next;
@@ -103,7 +103,7 @@ add_node(union olsr_ip_addr *node, uint8_t vtime)
          //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; 
+         return 0;
        }
       /* Check MID */
       for(tmp_mid = tmp_nodes->mid.next;
@@ -117,7 +117,7 @@ add_node(union olsr_ip_addr *node, uint8_t vtime)
              //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; 
+             return 0;
            }
        }
     }
@@ -129,7 +129,7 @@ add_node(union olsr_ip_addr *node, uint8_t vtime)
   printf("1:");
   insert_node(&new, vtime);
   update_nodes_list(&new);
+
   return 1;
 }
 
@@ -146,7 +146,7 @@ update_timer_node(union olsr_ip_addr *node, uint8_t vtime)
   time_value = (uint32_t) dbl_time*1000;
 
   tmp_timer.tv_sec = time_value/1000;
-  tmp_timer.tv_usec = (time_value-(tmp_timer.tv_sec*1000)) * 1000;   
+  tmp_timer.tv_usec = (time_value-(tmp_timer.tv_sec*1000)) * 1000;
 
   //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);
@@ -162,10 +162,10 @@ update_timer_node(union olsr_ip_addr *node, uint8_t vtime)
          timeradd(&now, &tmp_timer, &tmp_nodes->timer);
          if(tmp_nodes->display)
            update_nodes_list(tmp_nodes);
-         return 1; 
+         return 1;
        }
     }
-  
+
   return 0;
 }
 
@@ -191,7 +191,7 @@ update_timer_mpr(union olsr_ip_addr *node, union olsr_ip_addr *mpr, uint8_t vtim
   time_value = (uint32_t) dbl_time*1000;
 
   tmp_timer.tv_sec = time_value/1000;
-  tmp_timer.tv_usec = (time_value-(tmp_timer.tv_sec*1000)) * 1000;   
+  tmp_timer.tv_usec = (time_value-(tmp_timer.tv_sec*1000)) * 1000;
 
   //printf("Updatimng MPR timer for: %s\n", ip_to_string(node));
   //printf("Secs: %d, usecs: %d\n", (int)tmp_timer.tv_sec, (int)tmp_timer.tv_usec);
@@ -213,7 +213,7 @@ update_timer_mpr(union olsr_ip_addr *node, union olsr_ip_addr *mpr, uint8_t vtim
                  //printf("node %s\n", ip_to_string(node));
                  gettimeofday(&now, (struct timezone *)NULL);
                  timeradd(&now, &tmp_timer, &tmp_mpr->timer);
-                 return 1; 
+                 return 1;
                }
            }
          /* Only add if parent is added */
@@ -271,9 +271,9 @@ add_mid_node(union olsr_ip_addr *node, union olsr_ip_addr *alias, uint8_t vtime)
          tmp_mid->prev = &tmp_nodes->mid;
 
          remove_node_addr(alias); // Remove if already registered as a node
-         
+
          update_nodes_list(tmp_nodes);
-         return 1; 
+         return 1;
 
        }
     }
@@ -350,9 +350,9 @@ add_hna_node(union olsr_ip_addr *node, union olsr_ip_addr *net, union olsr_ip_ad
          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; 
+         return 1;
        }
     }
 
@@ -436,7 +436,7 @@ add_mpr(union olsr_ip_addr *node, union olsr_ip_addr *mpr, struct timeval *tmp_t
          tmp_mpr->prev = &tmp_nodes->mpr;
 
          update_nodes_list(tmp_nodes);
-         return 1; 
+         return 1;
 
        }
     }
@@ -478,17 +478,17 @@ remove_node(struct node *node)
       tmp_mid = tmp_mid->next;
       free(tmp_mid2);
     }
-  
+
   /* Gemove form GUI */
   remove_nodes_list(&node->addr);
-  
+
   /* Dequeue */
   node->prev->next = node->next;
   node->next->prev = node->prev;
-  
+
   free(node);
 
-  return 1;  
+  return 1;
 }
 
 
@@ -631,7 +631,7 @@ time_out_nodes(gpointer data)
 
          remove_nodes_list(&node_to_delete->addr);
          remove_node(node_to_delete);
-       } 
+       }
       else
        tmp_nodes = tmp_nodes->next;
     }
@@ -671,7 +671,7 @@ time_out_mprs(union olsr_ip_addr *node)
       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,<))
@@ -703,7 +703,7 @@ time_out_mprs(union olsr_ip_addr *node)
 
 void
 init_timer(uint32_t time_value, struct timeval *hold_timer)
-{ 
+{
   uint16_t  time_value_sec=0;
   uint16_t  time_value_msec=0;
 
@@ -711,8 +711,8 @@ init_timer(uint32_t time_value, struct timeval *hold_timer)
   time_value_msec=time_value-(time_value_sec*1000);
 
   hold_timer->tv_sec=time_value_sec;
-  hold_timer->tv_usec=time_value_msec*1000; 
-  
+  hold_timer->tv_usec=time_value_msec*1000;
+
 }
 
 
index dfcc1c7..ce64a0e 100644 (file)
@@ -173,7 +173,7 @@ union olsr_ip_addr
 
 
 /*
- * Macros for creating and extracting the neighbor 
+ * Macros for creating and extracting the neighbor
  * and link type information from 8bit link_code
  * data as passed in HELLO messages
  */
@@ -197,7 +197,7 @@ union olsr_ip_addr
 /*
  *Hello info
  */
-struct hellinfo 
+struct hellinfo
 {
   uint8_t   link_code;
   uint8_t   reserved;
@@ -205,7 +205,7 @@ struct hellinfo
   uint32_t  neigh_addr[1]; /* neighbor IP address(es) */
 };
 
-struct hellomsg 
+struct hellomsg
 {
   uint16_t      reserved;
   uint8_t       htime;
@@ -247,7 +247,7 @@ struct neigh_info
 };
 
 
-struct olsr_tcmsg 
+struct olsr_tcmsg
 {
   uint16_t        ansn;
   uint16_t        reserved;
@@ -280,8 +280,8 @@ struct olsr_tcmsg6
  *Multiple Interface Declaration message
  */
 
-/* 
- * Defined as s struct for further expansion 
+/*
+ * Defined as s struct for further expansion
  * For example: do we want to tell what type of interface
  * is associated whit each address?
  */
@@ -291,7 +291,7 @@ struct midaddr
 };
 
 
-struct midmsg 
+struct midmsg
 {
   struct midaddr mid_addr[1];
 };
@@ -363,7 +363,7 @@ struct olsrmsg
   uint8_t     hopcnt;
   uint16_t    seqno;
 
-  union 
+  union
   {
     struct hellomsg hello;
     struct olsr_tcmsg    tc;
@@ -387,7 +387,7 @@ struct olsrmsg6
   uint8_t        hopcnt;
   uint16_t       seqno;
 
-  union 
+  union
   {
     struct hellomsg6 hello;
     struct olsr_tcmsg6    tc;
@@ -403,7 +403,7 @@ struct olsrmsg6
  * Generic OLSR packet
  */
 
-struct olsr 
+struct olsr
 {
   uint16_t       olsr_packlen;         /* packet length */
   uint16_t       olsr_seqno;
index 71a78a2..e53c8a5 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 45b567d..b58e42d 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index e6630fd..f7c7983 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 18e0504..747dec3 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
@@ -104,7 +104,7 @@ struct IpcHeader
 struct IpcRoute
 {
        struct IpcHeader Header;
-       
+
        unsigned char Metric;
        unsigned char Add;
        unsigned char Reserved[2];
index 6ef95f5..16814d3 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 62f70d7..0f35637 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index d0ba41e..6ec3351 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 0405a3a..09b2341 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 257d36e..c6a0ded 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 8c4f645..f819db5 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 0d8cca4..ee180b0 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index e266826..43d712d 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 31125d9..dda40ac 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index c95fe72..7155414 100644 (file)
@@ -9,7 +9,7 @@ public:
        TrayIcon( CFrontendDlg&, HINSTANCE );
        ~TrayIcon();
 
-       void displayPopup();    
+       void displayPopup();
 
        static TrayIcon* getInstance()  { return instance; }
 
index f43c78f..8bf575d 100644 (file)
@@ -57,7 +57,7 @@
 #define IDM_EXIT                        32778
 
 // Next default values for new objects
-// 
+//
 #ifdef APSTUDIO_INVOKED
 #ifndef APSTUDIO_READONLY_SYMBOLS
 #define _APS_NEXT_RESOURCE_VALUE        143
index fe6fa14..0237f16 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Thomas Lopatic (thomas@lopatic.de)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
@@ -63,7 +63,7 @@ int main(int argc, char *argv[])
        CmdLine = GetCommandLine();
 
        Quotes = 0;
-       
+
        while (*CmdLine != 0)
        {
                if (*CmdLine == '"')
@@ -125,7 +125,7 @@ int main(int argc, char *argv[])
                GenerateConsoleCtrlEvent(CTRL_BREAK_EVENT, ProcInfo.dwProcessId);
                WaitForSingleObject(ProcInfo.hProcess, INFINITE);
        }
-       
+
        CloseHandle(ProcInfo.hThread);
        CloseHandle(ProcInfo.hProcess);
 
index bd5f15b..6f5ab32 100644 (file)
@@ -3,28 +3,28 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto-at-olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright notice, 
+ * * Redistributions of source code must retain the above copyright notice,
  *   this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright notice, 
- *   this list of conditions and the following disclaimer in the documentation 
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
  *   and/or other materials provided with the distribution.
- * * Neither the name of the UniK olsr daemon nor the names of its contributors 
- *   may be used to endorse or promote products derived from this software 
+ * * Neither the name of the UniK olsr daemon nor the names of its contributors
+ *   may be used to endorse or promote products derived from this software
  *   without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
@@ -62,7 +62,7 @@
 /****************************************************************************
  *                Functions that the plugin MUST provide                    *
  ****************************************************************************/
+
 /**
  * Plugin interface version
  * Used by main olsrd to check plugin interface version
@@ -103,7 +103,7 @@ static void olsr_arp_event(void* foo __attribute__((unused)))
                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.
index dcf6257..a66fff4 100644 (file)
@@ -3,28 +3,28 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto-at-olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright notice, 
+ * * Redistributions of source code must retain the above copyright notice,
  *   this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright notice, 
- *   this list of conditions and the following disclaimer in the documentation 
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
  *   and/or other materials provided with the distribution.
- * * Neither the name of the UniK olsr daemon nor the names of its contributors 
- *   may be used to endorse or promote products derived from this software 
+ * * Neither the name of the UniK olsr daemon nor the names of its contributors
+ *   may be used to endorse or promote products derived from this software
  *   without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
index e8218b5..67fa5d7 100644 (file)
@@ -4,39 +4,39 @@
  * Written by Erik Tromp.
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of Thales, BMF nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of Thales, BMF nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
+
 /* -------------------------------------------------------------------------
  * File       : Address.c
  * Description: IP packet characterization functions
  * Created    : 29 Jun 2006
  *
  * ------------------------------------------------------------------------- */
+
 #include "Address.h"
 
 /* System includes */
index 924f052..af87389 100644 (file)
@@ -7,29 +7,29 @@
  * Written by Erik Tromp.
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of Thales, BMF nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of Thales, BMF nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
index 2af75b0..750e8e7 100644 (file)
@@ -4,29 +4,29 @@
  * Written by Erik Tromp.
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of Thales, BMF nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of Thales, BMF nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
@@ -237,7 +237,7 @@ static void EncapsulateAndForwardPacket(
       udpDataLen,
       MSG_DONTROUTE,
       (struct sockaddr*) &forwardTo,
-      sizeof(forwardTo));                   
+      sizeof(forwardTo));
 
     /* Evaluate and display result */
     if (nBytesWritten != udpDataLen)
@@ -375,7 +375,7 @@ static void BmfPacketCaptured(
    * 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! */
@@ -444,7 +444,7 @@ static void BmfPacketCaptured(
             PLUGIN_NAME_SHORT,
             walker->ifName,
             olsr_ip_to_string(&buf, &src));
-        }    
+        }
       }
       else if (sllPkttype == PACKET_OUTGOING && intf == walker)
       {
@@ -855,7 +855,7 @@ static void BmfEncapsulationPacketReceived(
         int nBytesWritten;
 
         if (sendUnicast)
-        {    
+        {
           /* For unicast, overwrite the local broadcast address which was filled in above */
           forwardTo.sin_addr = bestNeighborLinks.links[i]->neighbor_iface_addr.v4;
         }
@@ -867,7 +867,7 @@ static void BmfEncapsulationPacketReceived(
           encapsulationUdpDataLen,
           MSG_DONTROUTE,
           (struct sockaddr*) &forwardTo,
-          sizeof(forwardTo));                   
+          sizeof(forwardTo));
 
         /* Evaluate and display result */
         if (nBytesWritten != encapsulationUdpDataLen)
@@ -1141,7 +1141,7 @@ static void DoBmf(void)
         } /* if (pktAddr.sll_pkttype == ...) */
       } /* if (skfd >= 0 && (FD_ISSET...)) */
     } /* for */
-    
+
     /* Check if a BMF encapsulation packet was received on the listening
      * socket (if any) of each network interface */
     for (walker = BmfInterfaces; walker != NULL; walker = walker->next)
@@ -1317,7 +1317,7 @@ static void DoBmf(void)
 
       /* Receive the packet, leaving space for the BMF encapsulation header */
       ipPacket = GetIpPacket(rxBuffer);
-    
+
       bufferToRead = ipPacket;
       nBytesToRead = BMF_BUFFER_SIZE - ENCAP_HDR_LEN;
 
@@ -1440,7 +1440,7 @@ int InterfaceChange(struct interface* interf, int action)
   case (IFCHG_IF_UPDATE):
     olsr_printf(1, "%s: interface %s updated\n", PLUGIN_NAME, interf->int_name);
     break;
-      
+
   default:
     olsr_printf(
       1,
index cb09b6d..2864365 100644 (file)
@@ -7,29 +7,29 @@
  * Written by Erik Tromp.
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of Thales, BMF nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of Thales, BMF nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
@@ -40,7 +40,7 @@
  *
  * ------------------------------------------------------------------------- */
 
-#include "olsrd_plugin.h" /* union set_plugin_parameter_addon */ 
+#include "olsrd_plugin.h" /* union set_plugin_parameter_addon */
 
 /* BMF plugin data */
 #define PLUGIN_NAME "OLSRD Basic Multicast Forwarding (BMF) plugin"
index 6c9656a..933bbd5 100644 (file)
@@ -4,29 +4,29 @@
  * Written by Erik Tromp.
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of Thales, BMF nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of Thales, BMF nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
@@ -329,7 +329,7 @@ int DeactivateSpoofFilter(void)
       "I will continue (in 3 sec) - but you should manually ensure that IP spoof\n"
       "filtering is disabled!\n\n",
       procFile);
-      
+
     sleep(3);
     return 0;
   }
@@ -395,7 +395,7 @@ void RestoreSpoofFilter(void)
  * Description: Find the neighbors on a network interface to forward a BMF
  *              packet to
  * Input      : intf - the network interface
- *              source - the source IP address of the BMF packet 
+ *              source - the source IP address of the BMF packet
  *              forwardedBy - the IP address of the node that forwarded the BMF
  *                packet
  *              forwardedTo - the IP address of the node to which the BMF packet
@@ -530,7 +530,7 @@ void FindNeighbors(
     }
 
     /* TODO: get_link_set() is not thread-safe! */
-    for (walker = get_link_set(); walker != NULL; walker = walker->next) 
+    for (walker = get_link_set(); walker != NULL; walker = walker->next)
     {
       struct ipaddr_str buf;
       union olsr_ip_addr* neighborMainIp;
@@ -610,7 +610,7 @@ void FindNeighbors(
         olsr_ip_to_string(&buf, &walker->neighbor_iface_addr),
         walker->link_cost);
 
-      /* If the candidate neighbor is best reached via another interface, then skip 
+      /* If the candidate neighbor is best reached via another interface, then skip
        * the candidate neighbor; the candidate neighbor has been / will be selected via that
        * other interface.
        * TODO: get_best_link_to_neighbor() is not thread-safe. */
@@ -668,7 +668,7 @@ void FindNeighbors(
 
           /* TODO: olsr_lookup_tc_edge() is not thread-safe. */
           tc_edge = olsr_lookup_tc_edge(tcLastHop, MainAddressOf(&walker->neighbor_iface_addr));
-          
+
           /* We are not interested in dead-end or dying edges. */
           if (tc_edge != NULL && (tc_edge->flags & OLSR_TC_EDGE_DOWN) == 0)
           {
@@ -713,7 +713,7 @@ void FindNeighbors(
     } /* for */
 
 #else /* USING_THALES_LINK_COST_ROUTING */
-        
+
     struct link_entry* walker;
     olsr_linkcost previousLinkEtx = LINK_COST_BROKEN;
     olsr_linkcost bestEtx = LINK_COST_BROKEN;
@@ -734,7 +734,7 @@ void FindNeighbors(
       struct link_entry* bestLinkToNeighbor;
       struct tc_entry* tcLastHop;
       float currEtx;
+
       /* Consider only links from the specified interface */
       if (! ipequal(&intf->intAddr, &walker->local_iface_addr))
       {
@@ -791,7 +791,7 @@ void FindNeighbors(
 
       /* Calculate the link quality (ETX) of the link to the found neighbor */
       currEtx = walker->linkcost;
+
       if (currEtx >= LINK_COST_BROKEN)
       {
         OLSR_PRINTF(
@@ -811,7 +811,7 @@ void FindNeighbors(
         olsr_ip_to_string(&buf, &walker->neighbor_iface_addr),
         currEtx);
 
-      /* If the candidate neighbor is best reached via another interface, then skip 
+      /* If the candidate neighbor is best reached via another interface, then skip
        * the candidate neighbor; the candidate neighbor has been / will be selected via that
        * other interface.
        * TODO: get_best_link_to_neighbor() is not thread-safe. */
@@ -992,7 +992,7 @@ static int CreateCaptureSocket(const char* ifName)
     close(skfd);
     return -1;
   }
-   
+
   /* Bind the socket to the specified interface */
   memset(&bindTo, 0, sizeof(bindTo));
   bindTo.sll_family = AF_PACKET;
@@ -1000,7 +1000,7 @@ static int CreateCaptureSocket(const char* ifName)
   bindTo.sll_ifindex = ifIndex;
   memcpy(bindTo.sll_addr, req.ifr_hwaddr.sa_data, IFHWADDRLEN);
   bindTo.sll_halen = IFHWADDRLEN;
-    
+
   if (bind(skfd, (struct sockaddr*)&bindTo, sizeof(bindTo)) < 0)
   {
     BmfPError("bind() error");
@@ -1076,7 +1076,7 @@ static int CreateListeningSocket(const char* ifName)
   bindTo.sll_ifindex = ifIndex;
   memcpy(bindTo.sll_addr, req.ifr_hwaddr.sa_data, IFHWADDRLEN);
   bindTo.sll_halen = IFHWADDRLEN;
-    
+
   if (bind(skfd, (struct sockaddr*)&bindTo, sizeof(bindTo)) < 0)
   {
     BmfPError("bind() error");
@@ -1128,7 +1128,7 @@ static int CreateEncapsulateSocket(const char* ifName)
     close(skfd);
     return -1;
   }
-       
+
   /* Bind to the specific network interfaces indicated by ifName. */
   /* When using Kernel 2.6 this must happer prior to the port binding! */
   if (setsockopt(skfd, SOL_SOCKET, SO_BINDTODEVICE, ifName, strlen(ifName) + 1) < 0)
@@ -1143,8 +1143,8 @@ static int CreateEncapsulateSocket(const char* ifName)
   bindTo.sin_family = AF_INET;
   bindTo.sin_port = htons(BMF_ENCAP_PORT);
   bindTo.sin_addr.s_addr = htonl(INADDR_ANY);
-      
-  if (bind(skfd, (struct sockaddr*)&bindTo, sizeof(bindTo)) < 0) 
+
+  if (bind(skfd, (struct sockaddr*)&bindTo, sizeof(bindTo)) < 0)
   {
     BmfPError("bind() error");
     close(skfd);
@@ -1366,7 +1366,7 @@ static int CreateInterface(
 
   if (olsrIntf != NULL)
   {
-    /* On OLSR-enabled interfaces, create socket for encapsulating and forwarding 
+    /* On OLSR-enabled interfaces, create socket for encapsulating and forwarding
      * multicast packets */
     encapsulatingSkfd = CreateEncapsulateSocket(ifName);
     if (encapsulatingSkfd < 0)
@@ -1446,7 +1446,7 @@ static int CreateInterface(
     memset(&ifr, 0, sizeof(struct ifreq));
     strncpy(ifr.ifr_name, ifName, IFNAMSIZ - 1);
     ifr.ifr_name[IFNAMSIZ - 1] = '\0'; /* Ensures null termination */
-    if (ioctl(ioctlSkfd, SIOCGIFADDR, &ifr) < 0) 
+    if (ioctl(ioctlSkfd, SIOCGIFADDR, &ifr) < 0)
     {
       BmfPError("ioctl(SIOCGIFADDR) error for interface \"%s\"", ifName);
 
@@ -1462,7 +1462,7 @@ static int CreateInterface(
     memset(&ifr, 0, sizeof(struct ifreq));
     strncpy(ifr.ifr_name, ifName, IFNAMSIZ - 1);
     ifr.ifr_name[IFNAMSIZ - 1] = '\0'; /* Ensures null termination */
-    if (ioctl(ioctlSkfd, SIOCGIFBRDADDR, &ifr) < 0) 
+    if (ioctl(ioctlSkfd, SIOCGIFBRDADDR, &ifr) < 0)
     {
       BmfPError("ioctl(SIOCGIFBRDADDR) error for interface \"%s\"", ifName);
 
@@ -1607,7 +1607,7 @@ int CreateBmfNetworkInterfaces(struct interface* skipThisIntf)
   } /* for (n = ...) */
 
   free(ifc.ifc_buf);
-  
+
   /* Create the BMF network interface */
   EtherTunTapFd = CreateLocalEtherTunTap();
   if (EtherTunTapFd >= 0)
@@ -1674,7 +1674,7 @@ void CloseBmfNetworkInterfaces(void)
 
   /* Close all opened sockets */
   struct TBmfInterface* nextBmfIf = BmfInterfaces;
-  while (nextBmfIf != NULL) 
+  while (nextBmfIf != NULL)
   {
     struct TBmfInterface* bmfIf = nextBmfIf;
     nextBmfIf = bmfIf->next;
@@ -1684,7 +1684,7 @@ void CloseBmfNetworkInterfaces(void)
       close(bmfIf->capturingSkfd);
       nClosed++;
     }
-    if (bmfIf->encapsulatingSkfd >= 0) 
+    if (bmfIf->encapsulatingSkfd >= 0)
     {
       close(bmfIf->encapsulatingSkfd);
       nClosed++;
@@ -1692,7 +1692,7 @@ void CloseBmfNetworkInterfaces(void)
 
     OLSR_PRINTF(
       7,
-      "%s: %s interface \"%s\": RX pkts %d (%d dups); TX pkts %d\n", 
+      "%s: %s interface \"%s\": RX pkts %d (%d dups); TX pkts %d\n",
       PLUGIN_NAME_SHORT,
       bmfIf->olsrIntf != NULL ? "OLSR" : "non-OLSR",
       bmfIf->ifName,
@@ -1702,7 +1702,7 @@ void CloseBmfNetworkInterfaces(void)
 
     olsr_printf(
       1,
-      "%s: closed %s interface \"%s\"\n", 
+      "%s: closed %s interface \"%s\"\n",
       PLUGIN_NAME_SHORT,
       bmfIf->olsrIntf != NULL ? "OLSR" : "non-OLSR",
       bmfIf->ifName);
@@ -1723,7 +1723,7 @@ void CloseBmfNetworkInterfaces(void)
 
     free(bmfIf);
   } /* while */
-  
+
   if (EtherTunTapFd >= 0)
   {
     close(EtherTunTapFd);
index ef4d0d2..4e837a1 100644 (file)
@@ -7,29 +7,29 @@
  * Written by Erik Tromp.
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of Thales, BMF nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of Thales, BMF nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
@@ -58,7 +58,7 @@ struct TBmfInterface
   /* File descriptor of raw packet socket, used for capturing multicast packets */
   int capturingSkfd;
 
-  /* File descriptor of UDP (datagram) socket for encapsulated multicast packets. 
+  /* File descriptor of UDP (datagram) socket for encapsulated multicast packets.
    * Only used for OLSR-enabled interfaces; set to -1 if interface is not OLSR-enabled. */
   int encapsulatingSkfd;
 
@@ -97,7 +97,7 @@ struct TBmfInterface
   u_int32_t nBmfPacketsTx;
 
   /* Next element in list */
-  struct TBmfInterface* next; 
+  struct TBmfInterface* next;
 };
 
 extern struct TBmfInterface* BmfInterfaces;
index 3a81572..15c0c95 100644 (file)
@@ -4,29 +4,29 @@
  * Written by Erik Tromp.
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of Thales, BMF nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of Thales, BMF nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
index 85eab9c..f569d2f 100644 (file)
@@ -7,29 +7,29 @@
  * Written by Erik Tromp.
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of Thales, BMF nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of Thales, BMF nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
index 974479c..297814e 100644 (file)
@@ -4,29 +4,29 @@
  * Written by Erik Tromp.
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of Thales, BMF nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of Thales, BMF nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
@@ -74,7 +74,7 @@ static u_int16_t CalcCrcCcitt(unsigned char* buffer, ssize_t len)
 {
   /* Initial value of 0xFFFF should be 0x1D0F according to
    * www.joegeluso.com/software/articles/ccitt.htm */
-  u_int16_t crc = 0xFFFF; 
+  u_int16_t crc = 0xFFFF;
   int i;
 
   assert(buffer != NULL);
@@ -269,7 +269,7 @@ int CheckAndMarkRecentPacket(u_int32_t crc32)
 
   return 0;
 } /* CheckAndMarkRecentPacket */
-  
+
 /* -------------------------------------------------------------------------
  * Function   : PrunePacketHistory
  * Description: Prune the packet history table.
@@ -287,7 +287,7 @@ void PrunePacketHistory(void* useless __attribute__((unused)))
     {
       struct TDupEntry* nextEntry = PacketHistory[i];
       struct TDupEntry* prevEntry = NULL;
-      while (nextEntry != NULL) 
+      while (nextEntry != NULL)
       {
         struct TDupEntry* entry = nextEntry;
         nextEntry = entry->next;
@@ -305,7 +305,7 @@ void PrunePacketHistory(void* useless __attribute__((unused)))
           } /* if */
 
           /* De-allocate memory */
-          free(entry); 
+          free(entry);
              }
              else
              {
index be6be9f..431b8f3 100644 (file)
@@ -7,29 +7,29 @@
  * Written by Erik Tromp.
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of Thales, BMF nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of Thales, BMF nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
index ca1cec8..07e4ca2 100644 (file)
@@ -4,29 +4,29 @@
  * Written by Erik Tromp.
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of Thales, BMF nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of Thales, BMF nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
index b6ecf55..a596721 100644 (file)
@@ -4,31 +4,31 @@
  *                     includes code by Bruno Randolf
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
@@ -147,24 +147,24 @@ ipc_print_neigh_link(int ipc_connection, const struct neighbor_entry *neighbor)
   const char *style;
   const char *adr = olsr_ip_to_string(&mainaddrstrbuf, &olsr_cnf->main_addr);
   struct lqtextbuffer lqbuffer;
-  
+
   if (neighbor->status == 0) { /* non SYM */
     style = "dashed";
-  } else {   
+  } else {
     const struct link_entry* lnk = get_best_link_to_neighbor(&neighbor->neighbor_main_addr);
     if (lnk) {
       etx = lnk->linkcost;
     }
     style = "solid";
   }
-    
+
   ipc_send_fmt(ipc_connection,
               "\"%s\" -> \"%s\"[label=\"%s\", style=%s];\n",
                adr,
                olsr_ip_to_string(&strbuf, &neighbor->neighbor_main_addr),
                get_linkcost_text(etx, false, &lqbuffer),
                style);
-  
+
   if (neighbor->is_mpr) {
     ipc_send_fmt(ipc_connection, "\"%s\"[shape=box];\n", adr);
   }
@@ -203,20 +203,20 @@ plugin_ipc_init(void)
 #endif
 
   /* Bind the socket */
-      
+
   /* complete the socket structure */
   memset(&addr, 0, sizeof(addr));
   addr.sin_family = AF_INET;
   addr.sin_addr.s_addr = INADDR_ANY;
   addr.sin_port = htons(ipc_port);
-      
+
   /* bind the socket to the port number */
   if (bind(ipc_socket, (struct sockaddr *) &addr, sizeof(addr)) == -1) {
     olsr_printf(1, "(DOT DRAW)IPC bind %s\n", strerror(errno));
     CLOSE(ipc_socket);
     return 0;
   }
-      
+
   /* show that we are willing to listen */
   if (listen(ipc_socket, 1) == -1) {
     olsr_printf(1, "(DOT DRAW)IPC listen %s\n", strerror(errno));
@@ -272,7 +272,7 @@ pcf_event(int ipc_connection,
     struct neighbor_entry *neighbor_table_tmp;
     struct tc_entry *tc;
     struct ip_prefix_list *hna;
-    
+
     /* Print tables to IPC socket */
     ipc_send_str(ipc_connection, "digraph topology\n{\n");
 
@@ -281,7 +281,7 @@ pcf_event(int ipc_connection,
       ipc_print_neigh_link(ipc_connection, neighbor_table_tmp );
     } OLSR_FOR_ALL_NBR_ENTRIES_END(neighbor_table_tmp);
 
-    /* Topology */  
+    /* Topology */
     OLSR_FOR_ALL_TC_ENTRIES(tc) {
       struct tc_edge_entry *tc_edge;
       OLSR_FOR_ALL_TC_EDGE_ENTRIES(tc, tc_edge) {
@@ -297,7 +297,7 @@ pcf_event(int ipc_connection,
       struct hna_net *tmp_net;
       OLSR_FOR_ALL_TC_HNA_ENTRIES(tc, tmp_net) {
        ipc_print_net(ipc_connection,
-                     &tc->addr, 
+                     &tc->addr,
                      &tmp_net->hna_prefix);
         }
       } OLSR_FOR_ALL_TC_HNA_ENTRIES_END(tc, tmp_hna);
@@ -325,7 +325,7 @@ ipc_print_tc_link(int ipc_connection, const struct tc_entry *entry, const struct
 {
   struct ipaddr_str strbuf1, strbuf2;
   struct lqtextbuffer lqbuffer;
-  
+
   ipc_send_fmt(ipc_connection,
               "\"%s\" -> \"%s\"[label=\"%s\"];\n",
                olsr_ip_to_string(&strbuf1, &entry->addr),
index 3228d38..168c898 100644 (file)
@@ -4,31 +4,31 @@
  *                     includes code by Bruno Randolf
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 53b5a29..5f7ac6a 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto@olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 94a8dee..ff19cf4 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto@olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
@@ -199,7 +199,7 @@ static struct olsr_cookie_info *doing_hna_timer_cookie;
 
 /**
  *Do initialization here
- * 
+ *
  *
  *This function is called by the my_init
  *function in uolsrd_plugin.c
@@ -209,14 +209,14 @@ int
 olsrd_plugin_init(void)
 {
   pthread_t ping_thread;
-  
+
   //gw_net.v4 = INET_NET;
   //gw_netmask.v4 = INET_PREFIX;
 
   //gw_already_added = 0;
   //has_available_gw = 0;
 
-  
+
   /* Remove all local Inet HNA entries */
   /*while(remove_local_hna4_entry(&gw_net, &gw_netmask))
   {
@@ -224,7 +224,7 @@ olsrd_plugin_init(void)
   }*/
 
   pthread_create(&ping_thread, NULL, (void *(*)(void *))looped_checks, NULL);
-  
+
   /* create the cookie */
   doing_hna_timer_cookie = olsr_alloc_cookie("DynGW: Doing HNS", OLSR_COOKIE_TYPE_TIMER);
 
@@ -275,7 +275,7 @@ olsr_event_doing_hna(void *foo __attribute__((unused)))
 
 /**
  * the threaded function which happens within an endless loop,
- * reiterated every "Interval" sec (as given in the config or 
+ * reiterated every "Interval" sec (as given in the config or
  * the default value)
  */
 static void
@@ -312,12 +312,12 @@ check_gw(union olsr_ip_addr *net, uint8_t prefixlen, struct ping_list *the_ping_
     union olsr_ip_addr mask;
 
     FILE *fp = fopen(PROCENTRY_ROUTE, "r");
-    if (!fp) 
+    if (!fp)
       {
         perror(PROCENTRY_ROUTE);
         olsr_printf(1, "INET (IPv4) not configured in this system.\n");
        return -1;
-      }    
+      }
 
     olsr_prefix_to_netmask(&mask, prefixlen);
     /*
@@ -325,7 +325,7 @@ check_gw(union olsr_ip_addr *net, uint8_t prefixlen, struct ping_list *the_ping_
                 "Flags Metric Ref    Use Iface\n");
     */
     while (fgets(buf, sizeof(buf), fp))
-      {        
+      {
        int num = sscanf(buf, "%15s %128X %128X %X %d %d %d %128X \n",
                          iface, &dest_addr, &gate_addr,
                          &iflags, &refcnt, &use, &metric, &netmask);
@@ -344,38 +344,38 @@ check_gw(union olsr_ip_addr *net, uint8_t prefixlen, struct ping_list *the_ping_
 
         if( (iflags & RTF_UP) &&
             (metric == 0) &&
-            (netmask == mask.v4.s_addr) && 
+            (netmask == mask.v4.s_addr) &&
             (dest_addr == net->v4.s_addr))
           {
             if ( ((mask.v4.s_addr == INET_PREFIX)&&(net->v4.s_addr == INET_NET))&&(!(iflags & RTF_GATEWAY)))
               {
-                fclose(fp);  
+                fclose(fp);
                 return retval;
               }
             /* don't ping, if there was no "Ping" IP addr in the config file */
-            if (the_ping_list != NULL) {  
-              /*validate the found inet gw by pinging*/ 
+            if (the_ping_list != NULL) {
+              /*validate the found inet gw by pinging*/
               if (ping_is_possible(the_ping_list)) {
                 olsr_printf(1, "HNA[%08x/%08x](ping is possible) VIA %s detected in routing table.\n", dest_addr,netmask,iface);
-                retval=1;      
+                retval=1;
               }
             } else {
               olsr_printf(1, "HNA[%08x/%08x] VIA %s detected in routing table.\n", dest_addr,netmask,iface);
-              retval=1;      
+              retval=1;
             }
           }
       }
 
-    fclose(fp);      
+    fclose(fp);
     if(retval == 0){
       /* And we cast here since we get warnings on Win32 */
       olsr_printf(1, "HNA[%08x/%08x] is invalid\n", (unsigned int)net->v4.s_addr, (unsigned int)mask.v4.s_addr);
-    }  
+    }
     return retval;
 }
 
 static int
-ping_is_possible(struct ping_list *the_ping_list) 
+ping_is_possible(struct ping_list *the_ping_list)
 {
   struct ping_list *list;
   for(list = the_ping_list; list; list = list->next) {
@@ -384,7 +384,7 @@ ping_is_possible(struct ping_list *the_ping_list)
     olsr_printf(1, "\nDo ping on %s ...\n", list->ping_address);
     if (system(ping_command) == 0) {
       olsr_printf(1, "...OK\n\n");
-      return 1;      
+      return 1;
     }
     olsr_printf(1, "...FAILED\n\n");
   }
@@ -404,7 +404,7 @@ add_to_ping_list(const char *ping_address, struct ping_list *the_ping_list)
   new->ping_address = strdup(ping_address);
   new->next = the_ping_list;
   return new;
-}    
+}
 
 
 
@@ -424,7 +424,7 @@ add_to_hna_list(struct hna_list * list_root, union olsr_ip_addr *hna_net, uint8_
   new->hna_added=0;
   new->probe_ok=0;
   new->ping_hosts=NULL;
-  new->next=list_root;  
+  new->next=list_root;
   return new;
 }
 
@@ -442,7 +442,7 @@ static unsigned long __stdcall ThreadWrapper(void *Para)
 
   Func = Cast->Func;
   Arg = Cast->Arg;
-  
+
   HeapFree(GetProcessHeap(), 0, Para);
 
   Func(Arg);
index 74df534..229a08a 100644 (file)
@@ -4,31 +4,31 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto@olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 1c0db62..8a73883 100644 (file)
@@ -4,31 +4,31 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto@olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
@@ -62,7 +62,7 @@ static void my_init(void) __attribute__ ((constructor));
  * THIS IS NOT THE VERSION OF YOUR PLUGIN!
  * Do not alter unless you know what you are doing!
  */
-int 
+int
 olsrd_plugin_interface_version(void)
 {
   return PLUGIN_INTERFACE_VERSION;
index f8c5106..4069164 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto@olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
@@ -63,7 +63,7 @@ static struct olsr_cookie_info *event_timer_cookie;
  * Plugin interface version
  * Used by main olsrd to check plugin interface version
  */
-int 
+int
 olsrd_plugin_interface_version(void)
 {
   return PLUGIN_INTERFACE_VERSION;
@@ -86,12 +86,12 @@ int
 olsrd_plugin_init(void)
 {
   printf("OLSRD dyn_gw_plain plugin by Sven-Ola\n");
-  
+
   gw_net.v4.s_addr = INET_NET;
   gw_netmask.v4.s_addr = INET_PREFIX;
 
   has_inet_gateway = 0;
-  
+
   /* Remove all local Inet HNA entries */
   while(ip_prefix_list_remove(&olsr_cnf->hna_entries, &gw_net, olsr_netmask_to_prefix(&gw_netmask))) {
     olsr_printf(DEBUGLEV, "HNA Internet gateway deleted\n");
@@ -118,21 +118,21 @@ check_gw(union olsr_ip_addr *net, union olsr_ip_addr *mask)
 
     FILE *fp = fopen(PROCENTRY_ROUTE, "r");
 
-    if (!fp) 
+    if (!fp)
       {
         perror(PROCENTRY_ROUTE);
         olsr_printf(DEBUGLEV, "INET (IPv4) not configured in this system.\n");
         return -1;
       }
-    
+
     rewind(fp);
 
     /*
     olsr_printf(DEBUGLEV, "Genmask         Destination     Gateway         "
                 "Flags Metric Ref    Use Iface\n");
     */
-    while (fgets(buff, 1023, fp)) 
-      {        
+    while (fgets(buff, 1023, fp))
+      {
        num = sscanf(buff, "%16s %128X %128X %X %d %d %d %128X \n",
                     iface, &dest_addr, &gate_addr,
                     &iflags, &refcnt, &use, &metric, &netmask);
@@ -155,7 +155,7 @@ check_gw(union olsr_ip_addr *net, union olsr_ip_addr *mask)
        if(//(iflags & RTF_GATEWAY) &&
           (iflags & RTF_UP) &&
           (metric == 0) &&
-          (netmask == mask->v4.s_addr) && 
+          (netmask == mask->v4.s_addr) &&
           (dest_addr == net->v4.s_addr))
          {
             olsr_printf(DEBUGLEV, "INTERNET GATEWAY VIA %s detected in routing table.\n", iface);
@@ -164,13 +164,13 @@ check_gw(union olsr_ip_addr *net, union olsr_ip_addr *mask)
 
     }
 
-    fclose(fp);  
-  
+    fclose(fp);
+
     if(retval == 0)
       {
        olsr_printf(DEBUGLEV, "No Internet GWs detected...\n");
       }
-  
+
     return retval;
 }
 
index 3a732e5..4d786d4 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto@olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 59125a2..71374ae 100644 (file)
@@ -4,31 +4,31 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto@olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
@@ -108,7 +108,7 @@ build_admin_body(struct autobuf *abuf)
 
   abuf_puts(abuf, "</tr>\n"
                                              "<tr>\n");
-  
+
   if(olsr_cnf->lq_level) {
     abuf_appendf(abuf, admin_basic_setting_int,
                      "LQ level:", "lq_level", 1, olsr_cnf->lq_level);
@@ -121,8 +121,8 @@ build_admin_body(struct autobuf *abuf)
   abuf_puts(abuf, "</tr>\n"
                                              "<tr>\n");
   abuf_puts(abuf, "</tr>\n");
-  
-  abuf_puts(abuf, 
+
+  abuf_puts(abuf,
                   "</table>\n<br>\n"
                   "<center><input type=\"submit\" value=\"Submit\" class=\"input_button\">\n"
                   "<input type=\"reset\" value=\"Reset\" class=\"input_button\"></center>\n"
@@ -367,7 +367,7 @@ process_set_values(char *data, uint32_t data_size, struct autobuf *abuf)
       data[i] = '\0';
       if (!process_param(&data[key_start], &data[val_start])) {
        abuf_appendf(abuf,
-                    "<h2>FAILED PROCESSING!</h2><br>Key: %s Value: %s<br>\n", 
+                    "<h2>FAILED PROCESSING!</h2><br>Key: %s Value: %s<br>\n",
                     &data[key_start], &data[val_start]);
        return -1;
       }
@@ -375,11 +375,11 @@ process_set_values(char *data, uint32_t data_size, struct autobuf *abuf)
       key_start = i + 1;
       break;
     }
-  }  
+  }
 
   if (!process_param(&data[key_start], &data[val_start])) {
     abuf_appendf(abuf,
-                "<b>FAILED PROCESSING!</b><br>Key: %s Value: %s<br>\n", 
+                "<b>FAILED PROCESSING!</b><br>Key: %s Value: %s<br>\n",
                 &data[key_start], &data[val_start]);
     return -1;
   }
index e903468..4ce997b 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto@olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index bfe0df0..7889e6e 100644 (file)
@@ -4,31 +4,31 @@
  *                     includes code by Bruno Randolf
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index ddf0402..b9d1084 100644 (file)
@@ -449,7 +449,7 @@ parse_http_request(int fd, void *data __attribute__((unused)), unsigned int flag
 
             req[param_size] = '\0';
             printf("Dynamic read %d bytes\n", param_size);
-       
+
             //memcpy(body, dynamic_files[i].data, static_bin_files[i].data_size);
             //size += dynamic_files[i].process_data_cb(req, param_size, &body[size], sizeof(body)-size);
            dynamic_files[i].process_data_cb(req, param_size, &body);
@@ -542,11 +542,11 @@ parse_http_request(int fd, void *data __attribute__((unused)), unsigned int flag
                        "</tbody>\n"
                        "</table>\n",
                        FRAMEWIDTH);
-       
+
       build_tabs(&body, i);
       build_frame(&body,
                  tab_entries[i].build_body_cb);
-       
+
       stats.ok_hits++;
 
       abuf_appendf(&body,
@@ -559,7 +559,7 @@ parse_http_request(int fd, void *data __attribute__((unused)), unsigned int flag
                        "</div>\n"
                        "</body>\n"
                        "</html>\n");
-       
+
 #ifdef NETDIRECT
       netsprintf_direct = 1;
       goto close_connection;
@@ -783,7 +783,7 @@ static void build_ipaddr_link(struct autobuf *abuf,
 static void build_route(struct autobuf *abuf, const struct rt_entry * rt)
 {
   struct lqtextbuffer lqbuffer;
-  
+
   abuf_puts(abuf, "<tr>");
   build_ipaddr_with_link(abuf,
                         &rt->rt_dst.prefix,
@@ -867,7 +867,7 @@ static void build_config_body(struct autobuf *abuf)
   abuf_appendf(abuf, "<td>IP version: %d</td>\n", olsr_cnf->ip_version == AF_INET ? 4 : 6);
   abuf_appendf(abuf, "<td>Debug level: %d</td>\n", olsr_cnf->debug_level);
   abuf_appendf(abuf, "<td>FIB Metrics: %s</td>\n", FIBM_FLAT == olsr_cnf->fib_metric ? CFG_FIBM_FLAT : FIBM_CORRECT == olsr_cnf->fib_metric ? CFG_FIBM_CORRECT : CFG_FIBM_APPROX);
-                 
+
   abuf_puts(abuf, "</tr>\n<tr>\n");
 
   abuf_appendf(abuf, "<td>Pollrate: %0.2f</td>\n", conv_pollrate_to_secs(olsr_cnf->pollrate));
@@ -1223,7 +1223,7 @@ static bool check_allowed_ip(const struct ip_prefix_list * const all_nets, const
 
   /* check nets */
   for (ipcn = all_nets; ipcn != NULL; ipcn = ipcn->next) {
-    if (ip_in_net(addr, &ipcn->net)) { 
+    if (ip_in_net(addr, &ipcn->net)) {
       return true;
     }
   }
index ed90374..ccba6dc 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto@olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index eb796f1..f81a245 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto@olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
@@ -129,7 +129,7 @@ static int insert_plugin_ipnet(sa_family_t ip_version, const char *sz_net, const
 {
     union olsr_ip_addr net;
     int prefix_len;
-    
+
     if (inet_pton(ip_version, sz_net, &net) <= 0) {
         return 1;
     }
index 4ce33a4..81fddc7 100644 (file)
@@ -3,31 +3,31 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto@olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index cee68b0..c72cc3b 100644 (file)
@@ -3,28 +3,28 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto-at-olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright notice, 
+ * * Redistributions of source code must retain the above copyright notice,
  *   this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright notice, 
- *   this list of conditions and the following disclaimer in the documentation 
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
  *   and/or other materials provided with the distribution.
- * * Neither the name of the UniK olsr daemon nor the names of its contributors 
- *   may be used to endorse or promote products derived from this software 
+ * * Neither the name of the UniK olsr daemon nor the names of its contributors
+ *   may be used to endorse or promote products derived from this software
  *   without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
@@ -51,7 +51,7 @@
 /****************************************************************************
  *                Functions that the plugin MUST provide                    *
  ****************************************************************************/
+
 /**
  * Plugin interface version
  * Used by main olsrd to check plugin interface version
@@ -91,10 +91,10 @@ int
 olsrd_plugin_init(void)
 {
        printf("*** MINI: plugin_init\n");
-       
+
        /* call a function from main olsrd */
        olsr_printf(2, "*** MINI: printed this with olsr_printf\n");
-       
+
        return 1;
 }
 
index d1ca85d..33db42d 100644 (file)
@@ -3,28 +3,28 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto-at-olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright notice, 
+ * * Redistributions of source code must retain the above copyright notice,
  *   this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright notice, 
- *   this list of conditions and the following disclaimer in the documentation 
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
  *   and/or other materials provided with the distribution.
- * * Neither the name of the UniK olsr daemon nor the names of its contributors 
- *   may be used to endorse or promote products derived from this software 
+ * * Neither the name of the UniK olsr daemon nor the names of its contributors
+ *   may be used to endorse or promote products derived from this software
  *   without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
@@ -46,7 +46,7 @@
 int
 olsrd_plugin_init(void);
 
-int 
+int
 olsrd_plugin_interface_version(void);
 
 #endif
index 86539e3..6901e0d 100644 (file)
@@ -15,7 +15,7 @@ strndup(const char *ptr, size_t size)
     len = size;
 
   ret = malloc(len + 1);
-  
+
   if(!ret)
     return NULL;
 
index 618f56f..5b71bd9 100644 (file)
@@ -2,33 +2,33 @@
  * Copyright (c) 2007, Sven-Ola <sven-ola-aet-gmx.de>
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright notice, 
+ * * Redistributions of source code must retain the above copyright notice,
  *   this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright notice, 
- *   this list of conditions and the following disclaimer in the documentation 
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
  *   and/or other materials provided with the distribution.
- * * Neither the name of the UniK olsr daemon nor the names of its contributors 
- *   may be used to endorse or promote products derived from this software 
+ * * Neither the name of the UniK olsr daemon nor the names of its contributors
+ *   may be used to endorse or promote products derived from this software
  *   without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
+
 #include <stdio.h>
 #include <string.h>
 #include <errno.h>
@@ -133,12 +133,12 @@ void mapwrite_work(FILE* fmap)
   lookup_defhna_latlon(&ip);
   sprintf(my_latlon_str, "%f,%f,%d", my_lat, my_lon, get_isdefhna_latlon());
   if (0 > fprintf(fmap, "Self('%s',%s,'%s','%s');\n",
-    olsr_ip_to_string(&strbuf1, &olsr_cnf->main_addr), my_latlon_str, 
+    olsr_ip_to_string(&strbuf1, &olsr_cnf->main_addr), my_latlon_str,
     olsr_ip_to_string(&strbuf2, &ip), my_names->name))
   {
     return;
   }
-  for (hash = 0; hash < HASHSIZE; hash++) 
+  for (hash = 0; hash < HASHSIZE; hash++)
   {
     struct db_entry *entry;
        struct list_node *list_head, *list_node;
@@ -146,7 +146,7 @@ void mapwrite_work(FILE* fmap)
     list_head = &latlon_list[hash];
     for (list_node = list_head->next; list_node != list_head;
          list_node = list_node->next) {
-        
+
       entry = list2db(list_node);
 
       if (NULL != entry->names)
@@ -169,13 +169,13 @@ void mapwrite_work(FILE* fmap)
     if (NULL != lla && NULL != llb)
     {
       struct lqtextbuffer lqbuffer, lqbuffer2;
-      
+
       /*
        * To speed up processing, Links with both positions are named PLink()
        */
-      if (0 > fprintf(fmap, "PLink('%s','%s',%s,%s,%s,%s);\n", 
+      if (0 > fprintf(fmap, "PLink('%s','%s',%s,%s,%s,%s);\n",
             olsr_ip_to_string(&strbuf1, &tc_edge->T_dest_addr),
-            olsr_ip_to_string(&strbuf2, &tc->addr), 
+            olsr_ip_to_string(&strbuf2, &tc->addr),
             get_tc_edge_entry_text(tc_edge, ',', &lqbuffer2),
             get_linkcost_text(tc_edge->cost, false, &lqbuffer),
             lla, llb))
@@ -186,13 +186,13 @@ void mapwrite_work(FILE* fmap)
     else
     {
       struct lqtextbuffer lqbuffer, lqbuffer2;
-      
+
       /*
        * If one link end pos is unkown, only send Link()
        */
-      if (0 > fprintf(fmap, "Link('%s','%s',%s,%s);\n", 
+      if (0 > fprintf(fmap, "Link('%s','%s',%s,%s);\n",
             olsr_ip_to_string(&strbuf1, &tc_edge->T_dest_addr),
-            olsr_ip_to_string(&strbuf2, &tc->addr), 
+            olsr_ip_to_string(&strbuf2, &tc->addr),
             get_tc_edge_entry_text(tc_edge, ',', &lqbuffer2),
             get_linkcost_text(tc_edge->cost, false, &lqbuffer)))
       {
@@ -209,7 +209,7 @@ void mapwrite_work(FILE* fmap)
  * Windows doesn't know fifo's AFAIK. We better write
  * to a file (done in nameservice.c, see #ifdef WIN32)
  */
+
 static const char* the_fifoname = 0;
 
 static void mapwrite_poll(void *context __attribute__((unused)))
@@ -219,7 +219,7 @@ static void mapwrite_poll(void *context __attribute__((unused)))
   int fd = open(the_fifoname, O_WRONLY | O_NONBLOCK);
   if (0 <= fd)
   {
-    /* 
+    /*
      * Change to blocking, otherwhise expect fprintf errors
      */
     fcntl(fd, F_SETFL, O_WRONLY);
index 0f92d41..1215728 100644 (file)
@@ -2,33 +2,33 @@
  * Copyright (c) 2007, Sven-Ola <sven-ola-aet-gmx.de>
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright notice, 
+ * * Redistributions of source code must retain the above copyright notice,
  *   this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright notice, 
- *   this list of conditions and the following disclaimer in the documentation 
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
  *   and/or other materials provided with the distribution.
- * * Neither the name of the UniK olsr daemon nor the names of its contributors 
- *   may be used to endorse or promote products derived from this software 
+ * * Neither the name of the UniK olsr daemon nor the names of its contributors
+ *   may be used to endorse or promote products derived from this software
  *   without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
+
 #ifndef _MAPWRITE_H
 #define _MAPWRITE_H
 
index bc4b849..45ab0b4 100644 (file)
@@ -3,33 +3,33 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto-at-olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright notice, 
+ * * Redistributions of source code must retain the above copyright notice,
  *   this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright notice, 
- *   this list of conditions and the following disclaimer in the documentation 
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
  *   and/or other materials provided with the distribution.
- * * Neither the name of the UniK olsr daemon nor the names of its contributors 
- *   may be used to endorse or promote products derived from this software 
+ * * Neither the name of the UniK olsr daemon nor the names of its contributors
+ *   may be used to endorse or promote products derived from this software
  *   without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 
+
 /*
  * Dynamic linked library for UniK OLSRd
  */
@@ -95,7 +95,7 @@ struct name_entry
 /* *
  * linked list of db_entries for each originator with
  * originator being its main_addr
- * 
+ *
  * names points to the name_entry with its hostname, dns-server or
  * service-line entry
  *
@@ -140,7 +140,7 @@ add_name_to_list(struct name_entry *my_list, const char *value, int type, const
 struct name_entry*
 remove_nonvalid_names_from_list(struct name_entry *my_list, int type);
 
-void 
+void
 free_all_list_entries(struct list_node *) ;
 
 void
@@ -168,7 +168,7 @@ write_resolv_file(void);
 int
 register_olsr_param(char *key, char *value);
 
-void 
+void
 free_name_entry_list(struct name_entry **list);
 
 bool
@@ -201,7 +201,7 @@ lookup_name_latlon(union olsr_ip_addr *ip);
 void
 write_latlon_file(void);
 
-char*  
+char*
 create_packet(struct name *to, struct name_entry *from);
 
 void
index 884ccdc..8e578fc 100644 (file)
@@ -3,28 +3,28 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto-at-olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright notice, 
+ * * Redistributions of source code must retain the above copyright notice,
  *   this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright notice, 
- *   this list of conditions and the following disclaimer in the documentation 
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
  *   and/or other materials provided with the distribution.
- * * Neither the name of the UniK olsr daemon nor the names of its contributors 
- *   may be used to endorse or promote products derived from this software 
+ * * Neither the name of the UniK olsr daemon nor the names of its contributors
+ *   may be used to endorse or promote products derived from this software
  *   without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
@@ -33,7 +33,7 @@
 /*
  * Dynamic linked library for UniK OLSRd
  */
+
 #ifndef _NAMESEVICE_MSG
 #define _NAMESEVICE_MSG
 
index 335c559..b2ebc98 100644 (file)
@@ -3,28 +3,28 @@
  * Copyright (c) 2004, Andreas Tonnesen(andreto-at-olsr.org)
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright notice, 
+ * * Redistributions of source code must retain the above copyright notice,
  *   this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright notice, 
- *   this list of conditions and the following disclaimer in the documentation 
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ *   this list of conditions and the following disclaimer in the documentation
  *   and/or other materials provided with the distribution.
- * * Neither the name of the UniK olsr daemon nor the names of its contributors 
- *   may be used to endorse or promote products derived from this software 
+ * * Neither the name of the UniK olsr daemon nor the names of its contributors
+ *   may be used to endorse or promote products derived from this software
  *   without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
- * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  *
  */
 #define PLUGIN_INTERFACE_VERSION 5
 
 
-static void __attribute__ ((constructor)) 
+static void __attribute__ ((constructor))
 my_init(void);
 
-static void __attribute__ ((destructor)) 
+static void __attribute__ ((destructor))
 my_fini(void);
 
-int 
+int
 olsrd_plugin_interface_version(void)
 {
        return PLUGIN_INTERFACE_VERSION;
@@ -73,7 +73,7 @@ my_init(void)
        printf("%s\n", MOD_DESC);
 
        name_constructor();
-  
+
        return;
 }
 
index 460fdcf..d2494fd 100644 (file)
@@ -4,31 +4,31 @@
  *                     includes code by Bruno Randolf
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
@@ -79,7 +79,7 @@ void my_fini(void) __attribute__((destructor));
  * THIS IS NOT THE VERSION OF YOUR PLUGIN!
  * Do not alter unless you know what you are doing!
  */
-int 
+int
 olsrd_plugin_interface_version(void)
 {
    return PLUGIN_INTERFACE_VERSION;
@@ -164,7 +164,7 @@ static void ipc_print_neigh_link(struct neighbor_entry *neighbor)
                 olsr_ip_to_string(&main_adr, &olsr_cnf->main_addr),
                 olsr_ip_to_string(&adr, &neighbor->neighbor_main_addr));
   ipc_send(buf, len);
-  
+
 //  if (neighbor->status == 0) { // non SYM
 //     style = "dashed";
 //  }
@@ -173,18 +173,18 @@ static void ipc_print_neigh_link(struct neighbor_entry *neighbor)
     //? why cant i just get it one time at fetch_olsrd_data??? (br1)
 //    if(olsr_plugin_io(GETD__LINK_SET, &link, sizeof(link)) && link)
 //    {
-//      link_set = link; // for olsr_neighbor_best_link    
+//      link_set = link; // for olsr_neighbor_best_link
 //      link = olsr_neighbor_best_link(&neighbor->neighbor_main_addr);
 //      if (link) {
 //        etx = olsr_calc_etx(link);
 //      }
 //    }
 //  }
-    
+
   //len = sprintf( buf, "\"%s\"[label=\"%.2f\", style=%s];\n", adr, etx, style );
   //len = sprintf( buf, "%s\n", adr );
   //ipc_send(buf, len);
-  
+
    //if (neighbor->is_mpr) {
    //  len = sprintf( buf, "\"%s\"[shape=box];\n", adr );
    //  ipc_send(buf, len);
@@ -215,21 +215,21 @@ static int plugin_ipc_init(void)
   uint32_t yes = 1;
 
   /* Init ipc socket */
-  if ((ipc_socket = socket(AF_INET, SOCK_STREAM, 0)) == -1) 
+  if ((ipc_socket = socket(AF_INET, SOCK_STREAM, 0)) == -1)
     {
       olsr_printf(1, "(DOT DRAW)IPC socket %s\n", strerror(errno));
       return 0;
     }
   else
     {
-      if (setsockopt(ipc_socket, SOL_SOCKET, SO_REUSEADDR, (char *)&yes, sizeof(yes)) < 0) 
+      if (setsockopt(ipc_socket, SOL_SOCKET, SO_REUSEADDR, (char *)&yes, sizeof(yes)) < 0)
       {
        perror("SO_REUSEADDR failed");
        return 0;
       }
 
 #ifdef __FreeBSD__
-      if (setsockopt(ipc_socket, SOL_SOCKET, SO_NOSIGPIPE, (char *)&yes, sizeof(yes)) < 0) 
+      if (setsockopt(ipc_socket, SOL_SOCKET, SO_NOSIGPIPE, (char *)&yes, sizeof(yes)) < 0)
       {
        perror("SO_NOSIGPIPE failed");
        return 0;
@@ -237,22 +237,22 @@ static int plugin_ipc_init(void)
 #endif
 
       /* Bind the socket */
-      
+
       /* complete the socket structure */
       memset(&sin4, 0, sizeof(sin4));
       sin4.sin_family = AF_INET;
       sin4.sin_addr.s_addr = INADDR_ANY;
       sin4.sin_port = htons(ipc_port);
-      
+
       /* bind the socket to the port number */
-      if (bind(ipc_socket, (struct sockaddr *) &sin4, sizeof(sin4)) == -1) 
+      if (bind(ipc_socket, (struct sockaddr *) &sin4, sizeof(sin4)) == -1)
        {
          olsr_printf(1, "(DOT DRAW)IPC bind %s\n", strerror(errno));
          return 0;
        }
-      
+
       /* show that we are willing to listen */
-      if (listen(ipc_socket, 1) == -1) 
+      if (listen(ipc_socket, 1) == -1)
        {
          olsr_printf(1, "(DOT DRAW)IPC listen %s\n", strerror(errno));
          return 0;
@@ -270,10 +270,10 @@ static void ipc_action(int fd __attribute__((unused)), void *data __attribute__(
 {
   struct sockaddr_in pin;
   socklen_t addrlen;
-  char *addr;  
+  char *addr;
   char buf[256] ;
   int len ;
-   
+
   addrlen = sizeof(struct sockaddr_in);
 
   if ((ipc_connection = accept(ipc_socket, (struct sockaddr *)  &pin, &addrlen)) == -1)
@@ -328,7 +328,7 @@ static int pcf_event(int chgs_neighborhood,
       ipc_print_neigh_link( neighbor_table_tmp );
     } OLSR_FOR_ALL_NBR_ENTRIES_END(neighbor_table_tmp);
 
-    /* Topology */  
+    /* Topology */
     OLSR_FOR_ALL_TC_ENTRIES(tc) {
       OLSR_FOR_ALL_TC_EDGE_ENTRIES(tc, tc_edge) {
         ipc_print_tc_link(tc, tc_edge);
@@ -346,15 +346,15 @@ static int pcf_event(int chgs_neighborhood,
 //         {
 //           /* Check all networks */
 //           tmp_net = tmp_hna->networks.next;
-//           
+//
 //           while(tmp_net != &tmp_hna->networks)
 //             {
-//               ipc_print_net(&tmp_hna->A_gateway_addr, 
-//                             &tmp_net->A_network_addr, 
+//               ipc_print_net(&tmp_hna->A_gateway_addr,
+//                             &tmp_net->A_network_addr,
 //                             &tmp_net->A_netmask);
 //               tmp_net = tmp_net->next;
 //             }
-//           
+//
 //           tmp_hna = tmp_hna->next;
 //         }
 //     }
@@ -394,7 +394,7 @@ static int ipc_send(const char *data, int size)
 #else
 #define FLAG MSG_NOSIGNAL
 #endif
-  if (send(ipc_connection, data, size, FLAG) < 0) 
+  if (send(ipc_connection, data, size, FLAG) < 0)
     {
       olsr_printf(1, "(DOT DRAW)IPC connection lost!\n");
       close(ipc_connection);
index 3da9372..617593e 100644 (file)
@@ -4,31 +4,31 @@
  *                     includes code by Bruno Randolf
  * All rights reserved.
  *
- * Redistribution and use in source and binary forms, with or without 
- * modification, are permitted provided that the following conditions 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
  * are met:
  *
- * * Redistributions of source code must retain the above copyright 
+ * * Redistributions of source code must retain the above copyright
  *   notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright 
- *   notice, this list of conditions and the following disclaimer in 
- *   the documentation and/or other materials provided with the 
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in
+ *   the documentation and/or other materials provided with the
  *   distribution.
- * * Neither the name of olsr.org, olsrd nor the names of its 
- *   contributors may be used to endorse or promote products derived 
+ * * Neither the name of olsr.org, olsrd nor the names of its
+ *   contributors may be used to endorse or promote products derived
  *   from this software without specific prior written permission.
  *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
  * Visit http://www.olsr.org for more information.
index 6b871e9..1a19aba 100644 (file)
@@ -1,7 +1,7 @@
 /***************************************************************************
  projekt              : olsrd-quagga
- file                 : olsrd_plugin.c  
- usage                : olsrd-plugin-handler-stuff 
+ file                 : olsrd_plugin.c
+ usage                : olsrd-plugin-handler-stuff
  copyright            : (C) 2006 by Immo 'FaUl' Wehrenberg
  e-mail               : immo@chaostreff-dortmund.de
  ***************************************************************************/
@@ -66,7 +66,7 @@ void olsrd_get_plugin_parameters (const struct olsrd_plugin_parameters **params,
   *size = ARRAYSIZE(plugin_parameters);
 }
 
-static int set_redistribute (const char *value, 
+static int set_redistribute (const char *value,
                             void *data __attribute__((unused)),
                             set_plugin_parameter_addon addon __attribute__((unused))) {
   const char *zebra_route_types[] = {"system","kernel","connect",
@@ -83,7 +83,7 @@ static int set_redistribute (const char *value,
   return 1;
 }
 
-static int set_exportroutes (const char *value, 
+static int set_exportroutes (const char *value,
                             void *data __attribute__((unused)),
                             set_plugin_parameter_addon addon __attribute__((unused))) {
   if (!strcmp(value, "only")) {
@@ -108,7 +108,7 @@ static int set_exportroutes (const char *value,
   return 0;
 }
 
-static int set_distance(const char *value, void *data __attribute__((unused)), 
+static int set_distance(const char *value, void *data __attribute__((unused)),
                        set_plugin_parameter_addon addon __attribute__((unused))) {
   int distance;
 
@@ -117,8 +117,8 @@ static int set_distance(const char *value, void *data __attribute__((unused)),
   zebra_olsr_distance(distance);
   return 0;
 }
-static int set_localpref(const char *value, void *data __attribute__((unused)), 
+
+static int set_localpref(const char *value, void *data __attribute__((unused)),
                         set_plugin_parameter_addon addon __attribute__((unused))) {
   int b;
 
index 07d1ac0..98e8bc1 100644 (file)
@@ -1,7 +1,7 @@
 /***************************************************************************
  projekt              : olsrd-quagga
- file                 : quagga.c  
- usage                : communication with the zebra-daemon 
+ file                 : quagga.c
+ usage                : communication with the zebra-daemon
  copyright            : (C) 2006 by Immo 'FaUl' Wehrenberg
  e-mail               : immo@chaostreff-dortmund.de
  ***************************************************************************/
@@ -94,7 +94,7 @@ static void zebra_reconnect (void);
 static void zebra_connect (void);
 
 static void free_ipv4_route (struct ipv4_route);
-/* 
+/*
 static void update_olsr_zebra_routes (struct ipv4_route*, struct ipv4_route*);
 static struct ipv4_route *zebra_create_ipv4_route_table_entry (uint32_t,
                                                               uint32_t,
@@ -150,7 +150,7 @@ static void dump_ipv4_route (struct ipv4_route r, char *c) {
     i=0;
   }
   if (r.message&ZAPI_MESSAGE_IFINDEX) {
-    
+
     printf("index-number: %d\n", r.ind_num);
     while (i++ < r.ind_num)
       printf("Index: %d: %d\n", i, r.index[i]);
@@ -177,14 +177,14 @@ void *my_realloc (void *buf, size_t s, const char *c) {
 void init_zebra (void) {
   zebra_connect();
   if (!(zebra.status&STATUS_CONNECTED))
-    olsr_exit ("(QUAGGA) AIIIII, could not connect to zebra! is zebra running?", 
+    olsr_exit ("(QUAGGA) AIIIII, could not connect to zebra! is zebra running?",
               EXIT_FAILURE);
 }
 
 void zebra_cleanup (void) {
   int i;
   struct rt_entry *tmp;
-  
+
   if (zebra.options & OPTION_EXPORT) {
     OLSR_FOR_ALL_RT_ENTRIES(tmp) {
       zebra_del_olsr_v4_route(tmp);
@@ -207,11 +207,11 @@ static void zebra_reconnect (void) {
     OLSR_FOR_ALL_RT_ENTRIES(tmp) {
       zebra_add_olsr_v4_route (tmp);
     } OLSR_FOR_ALL_RT_ENTRIES_END(tmp);
-  }  
+  }
 
   for (i = 0; i < ZEBRA_ROUTE_MAX; i++)
     if (zebra.redistribute[i]) zebra_redistribute(i + 1);
-  /* Zebra sends us all routes of type it knows after 
+  /* Zebra sends us all routes of type it knows after
      zebra_redistribute(type) */
 }
 
@@ -219,13 +219,13 @@ static void zebra_reconnect (void) {
 
 /* Connect to the zebra-daemon, returns a socket */
 static void zebra_connect (void) {
-  
+
   int ret;
 
 #ifndef USE_UNIX_DOMAIN_SOCKET
   struct sockaddr_in i;
   if (close (zebra.sock) < 0) olsr_exit ("(QUAGGA) Could not close socket!", EXIT_FAILURE);
-  
+
 
   zebra.sock = socket (AF_INET,SOCK_STREAM, 0);
 #else
@@ -237,7 +237,7 @@ static void zebra_connect (void) {
 
   if (zebra.sock <0 )
     olsr_exit("(QUAGGA) Could not create socket!", EXIT_FAILURE);
-  
+
   memset (&i, 0, sizeof i);
 #ifndef USE_UNIX_DOMAIN_SOCKET
   i.sin_family = AF_INET;
@@ -253,11 +253,11 @@ static void zebra_connect (void) {
   else zebra.status |= STATUS_CONNECTED;
 }
 
-    
-/* Sends a command to zebra, command is 
-   the command defined in zebra.h, options is the packet-payload, 
+
+/* Sends a command to zebra, command is
+   the command defined in zebra.h, options is the packet-payload,
    optlen the length, of the payload */
-unsigned char zebra_send_command (unsigned char command, 
+unsigned char zebra_send_command (unsigned char command,
                                   unsigned char *options, int optlen) {
 
   char *p, *pnt;
@@ -270,13 +270,13 @@ unsigned char zebra_send_command (unsigned char command,
                                   marker + zserv-version */
 #else
   uint16_t length = optlen + 3;  // length of option + command + packet_length
-#endif  
+#endif
 
   if (!(zebra.status & STATUS_CONNECTED)) return 0;
 
   p = olsr_malloc (length, "zebra_send_command");
   pnt = p;
-  
+
   len = htons(length);
 
   memcpy (p, &len, 2);
@@ -314,9 +314,9 @@ unsigned char zebra_send_command (unsigned char command,
 }
 
 
-/* Creates a Route-Packet-Payload, needs address, netmask, nexthop, 
+/* Creates a Route-Packet-Payload, needs address, netmask, nexthop,
    distance, and a pointer of an size_t */
-static unsigned char* zebra_route_packet (struct ipv4_route r, 
+static unsigned char* zebra_route_packet (struct ipv4_route r,
                                           ssize_t *optlen) {
 
   int count;
@@ -325,12 +325,12 @@ static unsigned char* zebra_route_packet (struct ipv4_route r,
   *optlen = 4; // first: type, flags, message, prefixlen
   *optlen += r.prefixlen / 8 + (r.prefixlen % 8 ? 1 : 0); // + prefix
   if (r.message & ZAPI_MESSAGE_NEXTHOP) {
-    if (r.nexthops->type == ZEBRA_NEXTHOP_IPV4 
+    if (r.nexthops->type == ZEBRA_NEXTHOP_IPV4
        || r.nexthops->type == ZEBRA_NEXTHOP_IPV4_IFINDEX){
-      *optlen += (sizeof r.nexthops->payload.v4 
+      *optlen += (sizeof r.nexthops->payload.v4
                  + sizeof r.nexthops->type) * r.nh_count + 1;
     }
-    else if (r.nexthops->type == 0) 
+    else if (r.nexthops->type == 0)
       *optlen += 5;
   }
   if (r.message & ZAPI_MESSAGE_IFINDEX)
@@ -343,8 +343,8 @@ static unsigned char* zebra_route_packet (struct ipv4_route r,
   cmdopt = olsr_malloc (*optlen, "zebra add_v4_route");
 
   t = cmdopt;
-  *t++ = r.type; 
-  *t++ = r.flags; 
+  *t++ = r.type;
+  *t++ = r.flags;
   *t++ = r.message;
   *t++ = r.prefixlen;
   for (count = 0; count < r.prefixlen/8 + (r.prefixlen % 8 ? 1 : 0); count++) {
@@ -354,10 +354,10 @@ static unsigned char* zebra_route_packet (struct ipv4_route r,
   if (r.message & ZAPI_MESSAGE_NEXTHOP) {
     *t++ = r.nh_count;
     *t++ = r.nexthops->type;
-    if (r.nexthops->type == ZEBRA_NEXTHOP_IPV4 || 
+    if (r.nexthops->type == ZEBRA_NEXTHOP_IPV4 ||
        r.nexthops->type == ZEBRA_NEXTHOP_IPV4_IFINDEX) {
       for (count = 0; count != r.nh_count; count++) {
-       memcpy (t, &r.nexthops[count].payload.v4, 
+       memcpy (t, &r.nexthops[count].payload.v4,
                sizeof r.nexthops->payload.v4);
        t += sizeof r.nexthops->payload.v4;
       }
@@ -385,7 +385,7 @@ static unsigned char* zebra_route_packet (struct ipv4_route r,
 
 /* adds a route to zebra-daemon */
 int zebra_add_v4_route (const struct ipv4_route r) {
-  
+
   unsigned char *cmdopt;
   ssize_t optlen;
   int retval;
@@ -395,23 +395,23 @@ int zebra_add_v4_route (const struct ipv4_route r) {
   retval = zebra_send_command (ZEBRA_IPV4_ROUTE_ADD, cmdopt, optlen);
   free (cmdopt);
   return retval;
-  
+
 }
 
 /* deletes a route from the zebra-daemon */
 int zebra_delete_v4_route (struct ipv4_route r) {
-  
+
   unsigned char *cmdopt;
   ssize_t optlen;
   int retval;
 
   cmdopt = zebra_route_packet (r, &optlen);
-  
+
   retval = zebra_send_command (ZEBRA_IPV4_ROUTE_DELETE, cmdopt, optlen);
   free (cmdopt);
 
   return retval;
-  
+
 }
 
 
@@ -451,7 +451,7 @@ static unsigned char *try_read (ssize_t *len) {
   sockstate = fcntl (zebra.sock, F_GETFL, 0);
   fcntl (zebra.sock, F_SETFL, sockstate|O_NONBLOCK);
 
-  do { 
+  do {
     if (*len == bsize) {
       bsize += BUFSIZE;
       buf = my_realloc (buf, bsize, "Zebra try_read");
@@ -517,7 +517,7 @@ int zebra_parse_packet (unsigned char *packet, ssize_t maxlen) {
 
   memcpy (&length, packet, 2);
   length = ntohs (length);
-  
+
   if (maxlen < length) {
     olsr_printf (1, "(QUAGGA) maxlen = %lu, packet_length = %d\n", (unsigned long)maxlen, length);
     olsr_exit ("(QUAGGA) programmer is an idiot", EXIT_FAILURE);
@@ -527,7 +527,7 @@ int zebra_parse_packet (unsigned char *packet, ssize_t maxlen) {
   if (packet[2] == 255) { // found header marker!!
     //packet[3] == ZSERV_VERSION: FIXME: HANDLE THIS!
     memcpy (&command, packet + 4, sizeof command); // two bytes command now!
-    command = ntohs (command) - 1; 
+    command = ntohs (command) - 1;
     skip = 6;
   }
 #else
@@ -535,8 +535,8 @@ int zebra_parse_packet (unsigned char *packet, ssize_t maxlen) {
   skip = 3;
 #endif
 
-  if (command < ZEBRA_MESSAGE_MAX && foo[command]) { 
-    if (!(ret = foo[command] (packet + skip, length - skip))) 
+  if (command < ZEBRA_MESSAGE_MAX && foo[command]) {
+    if (!(ret = foo[command] (packet + skip, length - skip)))
       return length;
     else olsr_printf (1, "(QUAGGA) Parse error: %d\n", ret);
   }
@@ -562,19 +562,19 @@ static int parse_interface_delete (unsigned char *opt __attribute__((unused)), s
 
 
 static int parse_interface_address_add (unsigned char *opt __attribute__((unused)), size_t len __attribute__((unused))) {
-  
+
   //todo
   return 0;
 }
 
 static int parse_interface_up (unsigned char *opt __attribute__((unused)), size_t len __attribute__((unused))) {
-  
+
   //todo
   return 0;
 }
 
 static int parse_interface_down (unsigned char *opt __attribute__((unused)), size_t len __attribute__((unused))) {
-  
+
   //todo
   return 0;
 }
@@ -592,19 +592,19 @@ static int parse_ipv4_route (unsigned char *opt, size_t len, struct ipv4_route *
   int c;
 
   if (len < 4) return -1;
-  
+
   r->type = *opt++;
   r->flags = *opt++;
   r->message = *opt++;
   r->prefixlen = *opt++;
   len -= 4;
   r->prefix = 0;
-  
+
   if ((int)len < r->prefixlen/8 + (r->prefixlen % 8 ? 1 : 0)) return -1;
-  
+
   memcpy (&r->prefix, opt, r->prefixlen/8 + (r->prefixlen % 8 ? 1 : 0));
   opt += r->prefixlen/8 + (r->prefixlen % 8 ? 1 : 0);
-  
+
   if (r->message & ZAPI_MESSAGE_NEXTHOP) {
     if (len < 1) return -1;
     r->nh_count = *opt++;
@@ -651,7 +651,7 @@ static int ipv4_route_add (unsigned char *opt, size_t len) {
 
   struct ipv4_route r;
   int f;
-    
+
   f = parse_ipv4_route (opt, len, &r);
   if (f < 0) return f;
 
@@ -661,12 +661,12 @@ static int ipv4_route_add (unsigned char *opt, size_t len) {
 static int ipv4_route_delete (unsigned char *opt, size_t len) {
   struct ipv4_route r;
   int f;
-  
+
   f = parse_ipv4_route (opt, len, &r);
   if (f < 0) return f;
 
   return delete_hna4_route (r);
-  
+
 }
 
 static int parse_ipv6_route_add (unsigned char *opt __attribute__((unused)), size_t len __attribute__((unused))) {
@@ -682,24 +682,24 @@ int zebra_redistribute (unsigned char type) {
   zebra.redistribute[type - 1] = 1;
 
   return zebra_send_command (ZEBRA_REDISTRIBUTE_ADD, &type, 1);
-  
-  
-}  
+
+
+}
 
 
 /* end redistribution FROM zebra */
 int zebra_disable_redistribute (unsigned char type) {
-  
+
   if (type > ZEBRA_ROUTE_MAX) return -1;
   zebra.redistribute[type - 1] = 0;
 
   return zebra_send_command (ZEBRA_REDISTRIBUTE_DELETE, &type, 1);
 
 }
-  
+
 int add_hna4_route (struct ipv4_route r) {
   union olsr_ip_addr net;
-  
+
 #ifdef MY_DEBUG
   dump_ipv4_route(r, "add_hna4_route");
 #endif
@@ -736,7 +736,7 @@ static void free_ipv4_route (struct ipv4_route r) {
 
 /*
 static uint8_t masktoprefixlen (uint32_t mask) {
+
   uint8_t prefixlen = 0;
 
   mask = htonl (mask);
@@ -744,25 +744,25 @@ static uint8_t masktoprefixlen (uint32_t mask) {
   if (mask) while (mask << ++prefixlen && prefixlen < 32);
 
   return prefixlen;
-  
+
 }
 */
 
 int zebra_add_olsr_v4_route (const struct rt_entry *r) {
-  
+
   struct ipv4_route route;
   int retval;
-  
+
   route.type = ZEBRA_ROUTE_OLSR; // OLSR
   route.message = ZAPI_MESSAGE_METRIC;
   route.flags = zebra.flags;
   route.prefixlen = r->rt_dst.prefix_len;
   route.prefix = r->rt_dst.prefix.v4.s_addr;
-  if (r->rt_best->rtp_nexthop.gateway.v4.s_addr == r->rt_dst.prefix.v4.s_addr && 
+  if (r->rt_best->rtp_nexthop.gateway.v4.s_addr == r->rt_dst.prefix.v4.s_addr &&
       route.prefixlen == 32) {
     route.message |= ZAPI_MESSAGE_IFINDEX | ZAPI_MESSAGE_NEXTHOP;
     route.ind_num = 1;
-    route.index = olsr_malloc (sizeof *route.index, 
+    route.index = olsr_malloc (sizeof *route.index,
                               "zebra_add_olsr_v4_route");
     *route.index = htonl(r->rt_best->rtp_nexthop.iif_index);
     route.nexthops = olsr_malloc (sizeof route.nexthops->type +
@@ -776,9 +776,9 @@ int zebra_add_olsr_v4_route (const struct rt_entry *r) {
     route.ind_num = 0;
     route.index = NULL;
     route.nh_count = 1;
-    route.nexthops = olsr_malloc (route.nh_count * 
-                                 (sizeof route.nexthops->type + 
-                                  sizeof route.nexthops->payload), 
+    route.nexthops = olsr_malloc (route.nh_count *
+                                 (sizeof route.nexthops->type +
+                                  sizeof route.nexthops->payload),
                                   "zebra_add_olsr_v4_route");
     route.nexthops->type = ZEBRA_NEXTHOP_IPV4;
     route.nexthops->payload.v4 = r->rt_best->rtp_nexthop.gateway.v4.s_addr;
@@ -800,19 +800,19 @@ int zebra_add_olsr_v4_route (const struct rt_entry *r) {
 }
 
 int zebra_del_olsr_v4_route (const struct rt_entry *r) {
-  
+
   struct ipv4_route route;
-  int retval;  
+  int retval;
   route.type = ZEBRA_ROUTE_OLSR; // OLSR
   route.message = ZAPI_MESSAGE_METRIC;
   route.flags = zebra.flags;
   route.prefixlen = r->rt_dst.prefix_len;
   route.prefix = r->rt_dst.prefix.v4.s_addr;
-  if ((r->rt_nexthop.gateway.v4.s_addr == r->rt_dst.prefix.v4.s_addr && 
+  if ((r->rt_nexthop.gateway.v4.s_addr == r->rt_dst.prefix.v4.s_addr &&
        route.prefixlen == 32)){
     route.message |= ZAPI_MESSAGE_IFINDEX;
     route.ind_num = 1;
-    route.index = olsr_malloc (sizeof *route.index, 
+    route.index = olsr_malloc (sizeof *route.index,
                               "zebra_add_olsr_v4_route");
     *route.index = htonl (r->rt_nexthop.iif_index);
     route.nexthops = olsr_malloc (sizeof route.nexthops->type +
@@ -826,15 +826,15 @@ int zebra_del_olsr_v4_route (const struct rt_entry *r) {
     route.ind_num = 0;
     route.index = NULL;
     route.nh_count = 1;
-    route.nexthops = olsr_malloc (route.nh_count * 
+    route.nexthops = olsr_malloc (route.nh_count *
                                  (sizeof route.nexthops->type +
-                                  sizeof route.nexthops->payload), 
+                                  sizeof route.nexthops->payload),
                                  "zebra_add_olsr_v4_route");
     route.nexthops->type = ZEBRA_NEXTHOP_IPV4;
     route.nexthops->payload.v4 = r->rt_nexthop.gateway.v4.s_addr;
   }
   route.metric = 0;
-  
+
   if (zebra.distance) {
     route.message |= ZAPI_MESSAGE_DISTANCE;
     route.distance = zebra.distance;
index 75eae3e..780ec8c 100644 (file)
@@ -1,6 +1,6 @@
 /***************************************************************************
  projekt              : olsrd-quagga
- file                 : quagga.h  
+ file                 : quagga.h
  usage                : header for quagga.c
  copyright            : (C) 2006 by Immo 'FaUl' Wehrenberg
  e-mail               : immo@chaostreff-dortmund.de
index caf79b1..71e01f3 100644 (file)
@@ -101,7 +101,7 @@ typedef int socklen_t;
 #ifdef __va_copy
 #define va_copy(DST,SRC) __va_copy(DST,SRC)
 #else
-/* Now we are desperate; this should work on many typical platforms. 
+/* Now we are desperate; this should work on many typical platforms.
    But this is slightly dangerous, because the standard does not require
    va_copy to be a macro. */
 #define va_copy(DST,SRC) memcpy(&(DST), &(SRC), sizeof(va_list))
@@ -224,7 +224,7 @@ typedef int socklen_t;
 #endif /* BSDI_NRL */
 
 /* Local includes: */
-#if !(defined(__GNUC__) || defined(VTYSH_EXTRACT_PL)) 
+#if !(defined(__GNUC__) || defined(VTYSH_EXTRACT_PL))
 #define __attribute__(x)
 #endif  /* !__GNUC__ || VTYSH_EXTRACT_PL */
 
@@ -248,7 +248,7 @@ typedef int socklen_t;
 
 
 
-/* 
+/*
  * RFC 3542 defines several macros for using struct cmsghdr.
  * Here, we define those that are not present
  */
@@ -293,7 +293,7 @@ struct in_pktinfo
 };
 #endif
 
-/* 
+/*
  * OSPF Fragmentation / fragmented writes
  *
  * ospfd can support writing fragmented packets, for cases where
@@ -313,13 +313,13 @@ struct in_pktinfo
 #define WANT_OSPF_WRITE_FRAGMENT
 #endif
 
-/* 
+/*
  * IP_HDRINCL / struct ip byte order
  *
  * Linux: network byte order
  * *BSD: network, except for length and offset. (cf Stevens)
  * SunOS: nominally as per BSD. but bug: network order on LE.
- * OpenBSD: network byte order, apart from older versions which are as per 
+ * OpenBSD: network byte order, apart from older versions which are as per
  *          *BSD
  */
 #if defined(__NetBSD__) || defined(__FreeBSD__) \
@@ -331,7 +331,7 @@ struct in_pktinfo
 /* MAX / MIN are not commonly defined, but useful */
 #ifndef MAX
 #define MAX(a, b) ((a) > (b) ? (a) : (b))
-#endif 
+#endif
 #ifndef MIN
 #define MIN(a, b) ((a) < (b) ? (a) : (b))
 #endif
index 0f0a1d2..31cf08c 100644 (file)
@@ -1,7 +1,7 @@
 #include "quagga.h"
 
 int main (void) {
-  
+
   init_zebra();
   zebra_redistribute (2);
   //  zebra_redistribute (1);
index 7ee040d..339eea5 100644 (file)
@@ -1,8 +1,8 @@
-/* 
+/*
  *  (C) 2006 by Immo 'FaUl' Wehrenberg <immo@chaostreff-dortmund.de>
- *  
+ *
  *  This code is covered by the GPLv2
- *   
+ *
  */
 
 #include <stdint.h>
@@ -92,7 +92,7 @@ static void dump_ipv4_route (struct ipv4_route r, char *c) {
   puts("");
   i=0;
   if (r.message&ZAPI_MESSAGE_NEXTHOP) {
-    
+
     printf("nexthop-count: %d\n", r.nh_count);
     while (i++ < r.nh_count) {
       c = (unsigned char*) &r.nexthops[i];
@@ -105,7 +105,7 @@ static void dump_ipv4_route (struct ipv4_route r, char *c) {
     i=0;
   }
   if (r.message&ZAPI_MESSAGE_IFINDEX) {
-    
+
     printf("index-number: %d\n", r.ind_num);
     while (i++ < r.ind_num)
       printf("Index: %d: %d\n", i, r.index[i]);
@@ -134,7 +134,7 @@ void *my_realloc (void *buf, size_t s, const char *c) {
 }
 
 
-#ifndef OLSR_PLUGIN 
+#ifndef OLSR_PLUGIN
 void *olsr_malloc (size_t f, const char *c) {
   void* v = malloc (f);
   return v;
@@ -154,7 +154,7 @@ int init_zebra () {
   i.sin_port = htons (ZEBRA_PORT);
   //  i.sin_len = sizeof i;
   i.sin_addr.s_addr = htonl (INADDR_LOOPBACK);
-  
+
   ret = connect (zsock, (struct sockaddr *)&i, sizeof i);
   if  (ret < 0) {
     close (zsock);
@@ -164,22 +164,22 @@ int init_zebra () {
   return zsock;
 }
 
-    
-/* Sends a command to zebra, command is 
-   the command defined in zebra.h, options is the packet-payload, 
+
+/* Sends a command to zebra, command is
+   the command defined in zebra.h, options is the packet-payload,
    optlen the length, of the payload */
 char zebra_send_command (unsigned char command, char * options, int optlen) {
 
   char *p = olsr_malloc (optlen+3, "zebra send_command");
   uint16_t length = optlen + 3;  // length of option + command + packet_length
-  
+
   int ret;
-  
+
   uint16_t len = htons(length);
   memcpy (p, &len, 2);
   p[2] = command;
   memcpy (p + 3, options, optlen);
-  
+
   do {
     ret = write (zsock, p, length);
     if (ret < 0) {
@@ -193,14 +193,14 @@ char zebra_send_command (unsigned char command, char * options, int optlen) {
 }
 
 
-/* Creates a Route-Packet-Payload, needs address, netmask, nexthop, 
+/* Creates a Route-Packet-Payload, needs address, netmask, nexthop,
    distance, and a pointer of an size_t */
 static char* zebra_route_packet (struct ipv4_route r, ssize_t *optlen) {
 
   char *cmdopt, *t;
   *optlen = 9; // first: type, flags, message, prefixlen, nexthop number, nexthop)
   *optlen += r.prefixlen / 8 + (r.prefixlen % 8 ? 1 : 0);
-  
+
   cmdopt = olsr_malloc (*optlen, "zebra add_v4_route");
   t = cmdopt;
   *t++ = 10; // Type: olsr
@@ -222,15 +222,15 @@ static char* zebra_route_packet (struct ipv4_route r, ssize_t *optlen) {
    distance = distance-value of the route
 */
 int zebra_add_v4_route (struct ipv4_route r) {
-  
+
   char *cmdopt;
   ssize_t optlen;
 
   cmdopt = zebra_route_packet (r, &optlen);
 
   puts ("DEBUG: zebra_route_packet returned");
-  
-  
+
+
 
   return zebra_send_command (ZEBRA_IPV4_ROUTE_ADD, cmdopt, optlen);
 
@@ -244,12 +244,12 @@ int zebra_add_v4_route (struct ipv4_route r) {
    distance = distance-value of the route
 */
 int zebra_delete_v4_route (struct ipv4_route r) {
-  
+
   char *cmdopt;
   ssize_t optlen;
-  
+
   cmdopt = zebra_route_packet (r, &optlen);
-  
+
   return zebra_send_command (ZEBRA_IPV4_ROUTE_DELETE, cmdopt, optlen);
 
 }
@@ -291,7 +291,7 @@ static char *try_read (ssize_t *len) {
   sockstate = fcntl (zsock, F_GETFL, 0);
   fcntl (zsock, F_SETFL, sockstate|O_NONBLOCK);
 
-  do { 
+  do {
     if (*len == bsize) {
       bsize += BUFSIZE;
       buf = my_realloc (buf, bsize, "Zebra try_read");
@@ -345,22 +345,22 @@ int zebra_parse_packet (char *packet, ssize_t maxlen) {
     ipv4_route_delete,
     parse_ipv6_route_add
   };
-  
+
   puts ("DEBUG: zebra_parse_packet");
   uint16_t length;
-  
+
   int ret;
   memcpy (&length, packet, 2);
   length = ntohs (length);
-  
+
   if (maxlen < length) {
     puts("Error: programmer is an idiot");
     printf ("DEBUG: maxlen = %d, packet_length = %d\n", maxlen, length);
     return maxlen;
   }
 
-  if (packet[2] - 1 < ZEBRA_MESSAGE_MAX && foo[packet[2] - 1]) { 
-    if (!(ret = foo[packet[2] - 1] (packet + 3, length - 3))) 
+  if (packet[2] - 1 < ZEBRA_MESSAGE_MAX && foo[packet[2] - 1]) {
+    if (!(ret = foo[packet[2] - 1] (packet + 3, length - 3)))
       return length;
     else printf ("DEBUG: Parse error: %d\n", ret);
   }
@@ -386,19 +386,19 @@ static int parse_interface_delete (char *opt, size_t len) {
 
 
 static int parse_interface_address_add (char *opt, size_t len) {
-  
+
   //todo
   return 0;
 }
 
 static int parse_interface_up (char *opt, size_t len) {
-  
+
   //todo
   return 0;
 }
 
 static int parse_interface_down (char *opt, size_t len) {
-  
+
   //todo
   return 0;
 }
@@ -415,24 +415,24 @@ static int parse_interface_address_delete (char *opt, size_t  len) {
 static int parse_ipv4_route (char *opt, size_t len, struct ipv4_route *r) {
   //  puts ("DEBUG: parse_ipv4_route");
   if (len < 4) return -1;
-  
+
   r->type = *opt++;
   r->flags = *opt++;
   r->message = *opt++;
   r->prefixlen = *opt++;
   len -= 4;
   r->prefix = 0;
-  
+
   if ((int)len < r->prefixlen/8 + (r->prefixlen % 8 ? 1 : 0)) return -1;
-  
+
   memcpy (&r->prefix, opt, r->prefixlen/8 + (r->prefixlen % 8 ? 1 : 0));
   opt += r->prefixlen/8 + (r->prefixlen % 8 ? 1 : 0);
-  
+
   if (r->message & ZAPI_MESSAGE_NEXTHOP) {
     if (len < 1) return -1;
     r->nh_count = *opt++;
     if (len < sizeof (uint32_t) * r->nh_count) return -1;
-    r->nexthops = olsr_malloc (sizeof (uint32_t) * r->nh_count, 
+    r->nexthops = olsr_malloc (sizeof (uint32_t) * r->nh_count,
                               "quagga: parse_ipv4_route_add");
     memcpy (r->nexthops, opt, sizeof (uint32_t) * r->nh_count);
     opt += sizeof (uint32_t) * r->nh_count;
@@ -467,15 +467,15 @@ static int ipv4_route_add (char *opt, size_t len) {
 
   struct ipv4_route r;
   int f;
-  
+
   //  puts ("DEBUG: ipv4_route_add");
-  
+
   f = parse_ipv4_route (opt, len, &r);
   if (f < 0) {
     printf ("parse-error: %d\n",f);
     return f;
   }
-  
+
   add_hna4_route (r);
   return 0;
 }
@@ -483,13 +483,13 @@ static int ipv4_route_add (char *opt, size_t len) {
 static int ipv4_route_delete (char *opt, size_t len) {
   struct ipv4_route r;
   int f;
-  
+
   f = parse_ipv4_route (opt, len, &r);
   if (f < 0) return f;
 
   return delete_hna4_route (r);
   // OK, now delete that foo
-  
+
 }
 
 static int parse_ipv6_route_add (char *opt, size_t len) {
@@ -502,18 +502,18 @@ static int parse_ipv6_route_add (char *opt, size_t len) {
 int zebra_redistribute (unsigned char type) {
 
   return zebra_send_command (ZEBRA_REDISTRIBUTE_ADD, &type, 1);
-  
-  
-}  
+
+
+}
 
 
 /* end redistribution FROM zebra */
 int zebra_disable_redistribute (unsigned char type) {
-  
+
   return zebra_send_command (ZEBRA_REDISTRIBUTE_DELETE, &type, 1);
 
 }
-  
+
 /* this is buggy. see prefix_to_netmask4() for a working version. */
 static uint32_t prefixlentomask (uint8_t prefix) {
   uint32_t mask;
@@ -524,7 +524,7 @@ static uint32_t prefixlentomask (uint8_t prefix) {
 
 int add_hna4_route (struct ipv4_route r) {
   union olsr_ip_addr net, mask;
-  
+
 #ifdef MY_DEBUG
   dump_ipv4_route(r, "add_hna4_route");
 #endif
@@ -554,7 +554,7 @@ int delete_hna4_route (struct ipv4_route r) {
 #ifdef OLSR_PLUGIN
   return remove_local_hna4_entry(&net, &mask) ? 0 : -1;
 #endif
-  
+
   free_ipv4_route(r);
   return 0;
 
@@ -566,7 +566,7 @@ static void free_ipv4_route (struct ipv4_route r) {
   if(r.message&ZAPI_MESSAGE_NEXTHOP && r.nh_count) free(r.nexthops);
 
 }
+
 void zebra_clear_routes(void) {
 
   struct ipv4_route *t;
@@ -583,7 +583,7 @@ void zebra_clear_routes(void) {
 
 
 void zebra_update_hna (void* f) {
-  
+
   struct ipv4_route *a = zebra_create_ipv4_route_table();
   update_olsr_zebra_routes(a, quagga_routes);
   zebra_free_ipv4_route_table(quagga_routes);
@@ -605,13 +605,13 @@ static struct ipv4_route *zebra_create_ipv4_route_table (void) {
       n = e->networks.next;
       for(;n != &e->networks; n = n->next) {
        if (!r) {
-         r = zebra_create_ipv4_route_table_entry(n->A_network_addr.v4, 
+         r = zebra_create_ipv4_route_table_entry(n->A_network_addr.v4,
                                                  n->A_netmask.v4,
          &