gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r30271 - gnunet/src/gns


From: gnunet
Subject: [GNUnet-SVN] r30271 - gnunet/src/gns
Date: Fri, 18 Oct 2013 00:14:37 +0200

Author: schanzen
Date: 2013-10-18 00:14:37 +0200 (Fri, 18 Oct 2013)
New Revision: 30271

Modified:
   gnunet/src/gns/gnunet-service-gns.c
Log:
dht zone put interval should never be longer than minimim relative expiration 
time of a record

Modified: gnunet/src/gns/gnunet-service-gns.c
===================================================================
--- gnunet/src/gns/gnunet-service-gns.c 2013-10-17 17:23:04 UTC (rev 30270)
+++ gnunet/src/gns/gnunet-service-gns.c 2013-10-17 22:14:37 UTC (rev 30271)
@@ -157,6 +157,12 @@
 static unsigned long long last_num_public_records;
 
 /**
+ * Minimum relative expiration time
+ * of records seem during zone iteration
+ */
+static struct GNUNET_TIME_Relative min_relative_record_time;
+
+/**
  * Zone iteration PUT interval.
  */
 static struct GNUNET_TIME_Relative put_interval;
@@ -364,6 +370,8 @@
     {
       put_interval = GNUNET_TIME_relative_divide (zone_publish_time_window,
                                                  num_public_records);
+      put_interval = GNUNET_TIME_relative_min (min_relative_record_time,
+                                               put_interval);
     }
     put_interval = GNUNET_TIME_relative_max (MINIMUM_ZONE_ITERATION_INTERVAL,
                                             put_interval);
@@ -404,6 +412,9 @@
       rd_public[rd_public_count] = rd[i];
       if (0 != (rd[i].flags & GNUNET_GNSRECORD_RF_RELATIVE_EXPIRATION))
       {
+        min_relative_record_time.rel_value_us = MIN
+          (rd_public[rd_public_count].expiration_time,
+           min_relative_record_time.rel_value_us);
        rd_public[rd_public_count].flags &= 
~GNUNET_GNSRECORD_RF_RELATIVE_EXPIRATION;
        rd_public[rd_public_count].expiration_time += now.abs_value_us;
       }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]