fisheye-startup: Changed to MAX_TTL for the first 32 LQTCs
authorSven-Ola Tuecke <sven-ola@gmx.de>
Wed, 2 Jan 2008 10:47:40 +0000 (11:47 +0100)
committerSven-Ola Tuecke <sven-ola@gmx.de>
Wed, 2 Jan 2008 10:47:40 +0000 (11:47 +0100)
src/lq_packet.c
src/unix/ifnet.c
src/win32/ifnet.c

index 3499c85..97a490d 100644 (file)
@@ -169,11 +169,11 @@ create_lq_tc(struct lq_tc_message *lq_tc, struct interface *outif)
 
   if (olsr_cnf->lq_fish > 0)
   {
-    // Sven-Ola: Too lazy to find the different iface inits. This will do it too.
     if (outif->ttl_index >= (int)(sizeof(ttl_list) / sizeof(ttl_list[0])))
       outif->ttl_index = 0;
     
-    lq_tc->comm.ttl = ttl_list[outif->ttl_index++];
+    lq_tc->comm.ttl = (0 <= outif->ttl_index ? ttl_list[outif->ttl_index] : MAX_TTL);
+    outif->ttl_index++;
 
     OLSR_PRINTF(3, "Creating LQ TC with TTL %d.\n", lq_tc->comm.ttl);
   }
index 2c6bf6a..0ba63f4 100644 (file)
@@ -906,7 +906,7 @@ chk_if_up(struct olsr_if *iface, int debuglvl __attribute__((unused)))
 
   ifs.int_mtu -= (olsr_cnf->ip_version == AF_INET6) ? UDP_IPV6_HDRSIZE : UDP_IPV4_HDRSIZE;
 
-  ifs.ttl_index = 0;
+  ifs.ttl_index = -32; /* For the first 32 TC's, fish-eye is disabled */
 
   /* Set up buffer */
   net_add_buffer(&ifs);
index 752ea31..93a76e6 100644 (file)
@@ -1004,7 +1004,7 @@ int chk_if_up(struct olsr_if *IntConf, int DebugLevel __attribute__((unused)))
 
   New->olsr_seqnum = random() & 0xffff;
 
-  New->ttl_index = 0;
+  New->ttl_index = -32; /* For the first 32 TC's, fish-eye is disabled */
     
   OLSR_PRINTF(1, "\tInterface %s set up for use with index %d\n\n",
               IntConf->name, New->if_index);