* applied a nad-edited version of Sven-Ola Tueckes "Save the fish" patch
authorBernd Petrovitsch <bernd@firmix.at>
Tue, 16 Oct 2007 10:01:29 +0000 (10:01 +0000)
committerBernd Petrovitsch <bernd@firmix.at>
Tue, 16 Oct 2007 10:01:29 +0000 (10:01 +0000)
CHANGELOG
src/olsr.c

index 6f75d04..175e1db 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,5 @@
 This file states changes as of version 0.2.4:
-$Id: CHANGELOG,v 1.98 2007/10/16 09:54:43 bernd67 Exp $
+$Id: CHANGELOG,v 1.99 2007/10/16 10:01:29 bernd67 Exp $
 
 0.5.4 ---------------------------------------------------------------------
 
@@ -138,6 +138,10 @@ http://download-master.berlin.freifunk.net/sven-ola/nylon/packages/olsrd/files/
   115-olsrd-nameserviceparamfix.patch and
   116-olsrd-fix-pluginparam-addons.patch fixing the compilation warning
   on 64bit and lots of other improvements.
+- "Save the fish" patch: Avoid forwarding of packets with too low TTL. This
+  kills lots of packet forwarding storms.
+  NB: The oneliner was applied by hand by BP and formatted to look (in BPs O)
+  more readable.
 
 PATCH by Arnd Hannemann <hannemann@i4.informatik.rwth-aachen.de>
 olsr_makefile_make_use_of_exename.patch
index 86a772d..ac5df56 100644 (file)
@@ -36,7 +36,7 @@
  * to the project. For more information see the website or contact
  * the copyright holders.
  *
- * $Id: olsr.c,v 1.59 2007/10/05 20:57:53 bernd67 Exp $
+ * $Id: olsr.c,v 1.60 2007/10/16 10:01:29 bernd67 Exp $
  */
 
 /**
@@ -299,8 +299,11 @@ olsr_forward_message(union olsr_message *m,
   struct neighbor_entry *neighbor;
   int msgsize;
   struct interface *ifn;
+  const int ttl = olsr_cnf->ip_version == AF_INET ? m->v4.ttl : m->v6.ttl;
 
-
+  if (ttl < 2) {
+    return 0;
+  }
   if(!olsr_check_dup_table_fwd(originator, seqno, &in_if->ip_addr))
     {
 #ifdef DEBUG