gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r13847 - gnunet/src/fs


From: gnunet
Subject: [GNUnet-SVN] r13847 - gnunet/src/fs
Date: Tue, 30 Nov 2010 15:23:35 +0100

Author: grothoff
Date: 2010-11-30 15:23:35 +0100 (Tue, 30 Nov 2010)
New Revision: 13847

Modified:
   gnunet/src/fs/gnunet-service-fs.c
Log:
grab latency data

Modified: gnunet/src/fs/gnunet-service-fs.c
===================================================================
--- gnunet/src/fs/gnunet-service-fs.c   2010-11-30 14:18:40 UTC (rev 13846)
+++ gnunet/src/fs/gnunet-service-fs.c   2010-11-30 14:23:35 UTC (rev 13847)
@@ -39,6 +39,7 @@
 #include "gnunet_protocols.h"
 #include "gnunet_signatures.h"
 #include "gnunet_statistics_service.h"
+#include "gnunet_transport_service.h"
 #include "gnunet_util_lib.h"
 #include "gnunet-service-fs_indexing.h"
 #include "fs.h"
@@ -1582,8 +1583,17 @@
 static struct GNUNET_TIME_Relative
 get_latency (const struct GNUNET_TRANSPORT_ATS_Information *atsi)
 {
-  /* FIXME: extract latency data from 'atsi' */
-  return GNUNET_TIME_UNIT_SECONDS;
+  while ( (ntohl (atsi->type) != GNUNET_TRANSPORT_ATS_ARRAY_TERMINATOR) &&
+         (ntohl (atsi->type) != GNUNET_TRANSPORT_ATS_QUALITY_NET_DELAY) )
+    atsi++;
+  if (ntohl (atsi->type) == GNUNET_TRANSPORT_ATS_ARRAY_TERMINATOR) 
+    {
+      GNUNET_break (0);
+      /* how can we not have latency data? */
+      return GNUNET_TIME_UNIT_SECONDS;
+    }
+  return GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_MILLISECONDS,
+                                       ntohl (atsi->value));
 }
 
 




reply via email to

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