applied patch by Andreas Jacobs <jacobs@i4.informatik.rwth-aachen.de>
authorBernd Petrovitsch <bernd@firmix.at>
Sun, 16 Sep 2007 21:45:25 +0000 (21:45 +0000)
committerBernd Petrovitsch <bernd@firmix.at>
Sun, 16 Sep 2007 21:45:25 +0000 (21:45 +0000)
fixing the broken window size calculation.
I'm taking this solution as it is the (IMHO) most consistent one.

CHANGELOG
src/link_set.c

index 8925f2f..5e34783 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,5 @@
 This file states changes as of version 0.2.4:
-$Id: CHANGELOG,v 1.86 2007/09/13 16:08:12 bernd67 Exp $
+$Id: CHANGELOG,v 1.87 2007/09/16 21:45:25 bernd67 Exp $
 
 0.5.4 ---------------------------------------------------------------------
 
@@ -138,6 +138,9 @@ PATCHES by John Hay <jhay@meraka.org.za>
 - update to new FreeBSD WLAN API
 - do not require /bin/bash, use /bin/sh
 
+PATCH by Andreas Jacobs <jacobs@i4.informatik.rwth-aachen.de>
+- fix the loss link quality calculation for "windows size % 4 != 0"
+
 PATCHES and CLEANUPS by Bernd Petrovitsch <bernd@firmix.at>
 - Made a function from the ME_TO_DOUBLE() macro (in src/mantissa.h).
   This saves code throughout the code even on i386 and will even more
index 5baf60a..24bb3e7 100644 (file)
@@ -36,7 +36,7 @@
  * to the project. For more information see the website or contact
  * the copyright holders.
  *
- * $Id: link_set.c,v 1.71 2007/09/11 23:49:02 bernd67 Exp $
+ * $Id: link_set.c,v 1.72 2007/09/16 21:45:25 bernd67 Exp $
  */
 
 
@@ -1045,7 +1045,7 @@ static void update_packet_loss_worker(struct link_entry *entry, int lost)
   entry->loss_link_quality =
     (float)(entry->total_packets - entry->lost_packets) /
     (float)(entry->loss_window_size < (2 * 4) ? entry->loss_window_size: 
-    4 * ((entry->loss_window_size / 4 - 1) * entry->total_packets + entry->loss_window_size) / entry->loss_window_size);
+    4 * (((float)entry->loss_window_size / 4 - 1) * entry->total_packets + entry->loss_window_size) / entry->loss_window_size);
     
   // multiply the calculated link quality with the user-specified multiplier