gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r25154 - in gnunet: po src/consensus src/include


From: gnunet
Subject: [GNUnet-SVN] r25154 - in gnunet: po src/consensus src/include
Date: Wed, 28 Nov 2012 17:32:15 +0100

Author: dold
Date: 2012-11-28 17:32:15 +0100 (Wed, 28 Nov 2012)
New Revision: 25154

Added:
   gnunet/src/consensus/gnunet-service-consensus.c
Removed:
   gnunet/src/consensus/gnunet-service-consensus.cc
Modified:
   gnunet/po/de.po
   gnunet/po/es.po
   gnunet/po/sv.po
   gnunet/po/vi.po
   gnunet/po/zh_CN.po
   gnunet/src/consensus/Makefile.am
   gnunet/src/consensus/consensus_api.c
   gnunet/src/consensus/test_consensus.conf
   gnunet/src/consensus/test_consensus_api.c
   gnunet/src/include/gnunet_consensus_service.h
   gnunet/src/include/gnunet_protocols.h
Log:
dummy consensus service


Modified: gnunet/po/de.po
===================================================================
--- gnunet/po/de.po     2012-11-28 16:14:35 UTC (rev 25153)
+++ gnunet/po/de.po     2012-11-28 16:32:15 UTC (rev 25154)
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: GNUnet 0.7.0b\n"
 "Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2012-11-14 15:54+0100\n"
+"POT-Creation-Date: 2012-11-26 14:59+0100\n"
 "PO-Revision-Date: 2006-03-17 21:37+0100\n"
 "Last-Translator: Nils Durner <address@hidden>\n"
 "Language-Team: German <address@hidden>\n"
@@ -237,66 +237,103 @@
 msgid "Initiating shutdown as requested by client.\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:75
-#, c-format
-msgid ""
-"Peer `%s' plugin `%s', address `%s', bandwidth out: %u Bytes/s, bandwidth in "
-"%u Bytes/s\n"
-msgstr ""
+#: src/ats/ats_api_performance.c:465
+#, fuzzy, c-format
+msgid "Received %s message\n"
+msgstr "ungültige `%s' Nachricht empfangen\n"
 
-#: src/ats-tool/gnunet-ats.c:137
+#: src/ats/ats_api_performance.c:508
+#, fuzzy, c-format
+msgid "Received last message for %s \n"
+msgstr "GAP hat ungültige Inhalte von `%s' empfangen.\n"
+
+#: src/ats-tool/gnunet-ats.c:134
 #, c-format
 msgid "%u address resolutions had a timeout\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:139
+#: src/ats-tool/gnunet-ats.c:136
 #, c-format
 msgid "ATS returned results for %u addresses\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:153 src/namestore/gnunet-namestore.c:610
+#: src/ats-tool/gnunet-ats.c:190
+#, fuzzy, c-format
+msgid ""
+"Peer `%s' plugin `%s', address `%s', bw out: %u Bytes/s, bw in %u Bytes/s, "
+"%s\n"
+msgstr "Knoten `%s' mit Vertrauen %8u und Adresse `%s'\n"
+
+#: src/ats-tool/gnunet-ats.c:274 src/namestore/gnunet-namestore.c:610
 #: src/transport/gnunet-transport.c:744
 #, fuzzy, c-format
 msgid "Service `%s' is not running\n"
 msgstr "`%s' ist keine Datei.\n"
 
-#: src/ats-tool/gnunet-ats.c:162 src/transport/gnunet-transport.c:750
+#: src/ats-tool/gnunet-ats.c:284 src/transport/gnunet-transport.c:750
 #, fuzzy, c-format
 msgid "Failed to parse peer identity `%s'\n"
 msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
 
-#: src/ats-tool/gnunet-ats.c:167 src/ats-tool/gnunet-ats.c:182
-msgid "Type required\n"
+#: src/ats-tool/gnunet-ats.c:292
+#, c-format
+msgid "Please select one operation : %s or %s or %s or %s\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:189 src/ats-tool/gnunet-ats.c:199
+#: src/ats-tool/gnunet-ats.c:305 src/ats-tool/gnunet-ats.c:324
+#: src/ats-tool/gnunet-ats.c:341 src/ats-tool/gnunet-ats.c:366
 #, fuzzy, c-format
 msgid "Cannot connect to ATS service, exiting...\n"
 msgstr "`%s' Dienst konnte nicht initialisiert werden.\n"
 
-#: src/ats-tool/gnunet-ats.c:247
+#: src/ats-tool/gnunet-ats.c:314 src/ats-tool/gnunet-ats.c:331
+#, fuzzy, c-format
+msgid "Cannot issue request to ATS service, exiting...\n"
+msgstr "`%s' Dienst konnte nicht initialisiert werden.\n"
+
+#: src/ats-tool/gnunet-ats.c:359
+msgid "Type required\n"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:416
+msgid "get list of active addresses currently used"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:419
+msgid "get list of all active addresses"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:422
 #, fuzzy
 msgid "do not resolve IP addresses to hostnames"
 msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
 
-#: src/ats-tool/gnunet-ats.c:250
+#: src/ats-tool/gnunet-ats.c:425
 msgid "monitor mode"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:253
+#: src/ats-tool/gnunet-ats.c:428
 #, fuzzy
 msgid "set preference for the given peer"
 msgstr "Informationen über andere GNUnet Knoten ausgeben."
 
-#: src/ats-tool/gnunet-ats.c:256
+#: src/ats-tool/gnunet-ats.c:431
+msgid "peer id"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:434
 msgid "preference type to set: latency | bandwidth"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:259
+#: src/ats-tool/gnunet-ats.c:437
 msgid "preference value"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:268
+#: src/ats-tool/gnunet-ats.c:440
+msgid "verbose output (include ATS address properties)"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:449
 #, fuzzy
 msgid "Print information about ATS state"
 msgstr "Informationen über andere GNUnet Knoten ausgeben."
@@ -310,7 +347,7 @@
 msgid "Client was disconnected from core service, trying to reconnect.\n"
 msgstr ""
 
-#: src/core/gnunet-core.c:86 src/peerinfo-tool/gnunet-peerinfo.c:286
+#: src/core/gnunet-core.c:86 src/peerinfo-tool/gnunet-peerinfo.c:214
 #, fuzzy, c-format
 msgid "Peer `%s'\n"
 msgstr "Ich bin Peer `%s'.\n"
@@ -331,7 +368,8 @@
 msgid "Disconnected from"
 msgstr "`%s' hat sich mit `%s' verbunden.\n"
 
-#: src/core/gnunet-core.c:174 src/peerinfo-tool/gnunet-peerinfo.c:825
+#: src/core/gnunet-core.c:174 src/mesh/gnunet-mesh.c:131
+#: src/peerinfo-tool/gnunet-peerinfo.c:541
 #, fuzzy, c-format
 msgid "Invalid command line argument `%s'\n"
 msgstr "Ungültige Kommandozeilen Parameter:\n"
@@ -362,7 +400,7 @@
 msgstr "GNUnet Konfiguration"
 
 #: src/core/gnunet-service-core.c:163
-#: src/transport/gnunet-service-transport.c:685
+#: src/transport/gnunet-service-transport.c:696
 #, fuzzy
 msgid "Transport service is unable to access hostkey. Exiting.\n"
 msgstr "Auf die Namespace Informationen konnte nicht zugegriffen werden.\n"
@@ -512,8 +550,8 @@
 msgstr "# Bytes entschlüsselt"
 
 #: src/core/gnunet-service-core_kx.c:1703 src/hostlist/hostlist-server.c:552
-#: src/peerinfo-tool/gnunet-peerinfo.c:831
-#: src/transport/gnunet-service-transport.c:627
+#: src/peerinfo-tool/gnunet-peerinfo.c:547
+#: src/transport/gnunet-service-transport.c:632
 #, fuzzy
 msgid "Could not access PEERINFO service.  Exiting.\n"
 msgstr "Auf die Namespace Informationen konnte nicht zugegriffen werden.\n"
@@ -539,8 +577,8 @@
 
 #: src/core/gnunet-service-core_sessions.c:206
 #: src/core/gnunet-service-core_sessions.c:269
-#: src/dht/gnunet-service-dht_neighbours.c:639
-#: src/dht/gnunet-service-dht_neighbours.c:697
+#: src/dht/gnunet-service-dht_neighbours.c:645
+#: src/dht/gnunet-service-dht_neighbours.c:703
 #: src/fs/gnunet-service-fs_cp.c:630 src/fs/gnunet-service-fs_cp.c:1544
 #: src/topology/gnunet-daemon-topology.c:704
 #: src/topology/gnunet-daemon-topology.c:805
@@ -633,17 +671,17 @@
 msgid "`%s' failed at %s:%d with error: %s\n"
 msgstr "`%s' schlug bei %s:%d mit dem Fehler %s fehl\n"
 
-#: src/datacache/plugin_datacache_sqlite.c:448
+#: src/datacache/plugin_datacache_sqlite.c:450
 msgid "Sqlite datacache running\n"
 msgstr ""
 
-#: src/datacache/plugin_datacache_sqlite.c:482
+#: src/datacache/plugin_datacache_sqlite.c:484
 #: src/datastore/plugin_datastore_sqlite.c:401
 #: src/namestore/plugin_namestore_sqlite.c:362
 msgid "Tried to close sqlite without finalizing all prepared statements.\n"
 msgstr ""
 
-#: src/datacache/plugin_datacache_sqlite.c:489
+#: src/datacache/plugin_datacache_sqlite.c:491
 #, fuzzy, c-format
 msgid "Failed to close statement %p: %d\n"
 msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
@@ -1093,55 +1131,55 @@
 msgid "Issue a PUT request to the GNUnet DHT insert DATA under KEY."
 msgstr ""
 
-#: src/dht/gnunet-service-dht.c:163
+#: src/dht/gnunet-service-dht.c:172
 #, fuzzy
 msgid "Failed to connect to transport service!\n"
 msgstr "Der Transportdienst auf Port %d konnte nicht gestartet werden.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:407
+#: src/dht/gnunet-service-dht_clients.c:413
 #, fuzzy
 msgid "# GET requests from clients injected"
 msgstr "# Client Trace-Anfragen empfangen"
 
-#: src/dht/gnunet-service-dht_clients.c:497
+#: src/dht/gnunet-service-dht_clients.c:503
 #, fuzzy
 msgid "# PUT requests received from clients"
 msgstr "Empfangene Client-Nachricht ist ungültig.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:579
+#: src/dht/gnunet-service-dht_clients.c:585
 #, fuzzy
 msgid "# GET requests received from clients"
 msgstr "Empfangene Client-Nachricht ist ungültig.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:775
+#: src/dht/gnunet-service-dht_clients.c:791
 #, fuzzy
 msgid "# GET STOP requests received from clients"
 msgstr "Empfangene Client-Nachricht ist ungültig.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:1012
+#: src/dht/gnunet-service-dht_clients.c:1035
 msgid "# Key match, type mismatches in REPLY to CLIENT"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1025
+#: src/dht/gnunet-service-dht_clients.c:1048
 msgid "# Duplicate REPLIES to CLIENT request dropped"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1062
+#: src/dht/gnunet-service-dht_clients.c:1085
 #, fuzzy, c-format
 msgid "Unsupported block type (%u) in request!\n"
 msgstr "Ungültige Nachricht des Typs %u empfangen. Nachricht wird verworfen.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:1085
+#: src/dht/gnunet-service-dht_clients.c:1108
 #, fuzzy
 msgid "# RESULTS queued for clients"
 msgstr "Empfangene Client-Nachricht ist ungültig.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:1134
-#: src/dht/gnunet-service-dht_clients.c:1177
+#: src/dht/gnunet-service-dht_clients.c:1157
+#: src/dht/gnunet-service-dht_clients.c:1199
 msgid "# REPLIES ignored for CLIENTS (no match)"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1144
+#: src/dht/gnunet-service-dht_clients.c:1167
 #, fuzzy
 msgid "Could not pass reply to client, message too big!\n"
 msgstr "'join' Nachricht konnte nicht an gnunetd gesendet werden.\n"
@@ -1190,102 +1228,102 @@
 msgid "# HELLOs obtained from peerinfo"
 msgstr "Empfangene Client-Nachricht ist ungültig.\n"
 
-#: src/dht/gnunet-service-dht_neighbours.c:495
+#: src/dht/gnunet-service-dht_neighbours.c:501
 msgid "# Preference updates given to core"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:585
+#: src/dht/gnunet-service-dht_neighbours.c:591
 #, fuzzy
 msgid "# FIND PEER messages initiated"
 msgstr "# PING Nachrichten erstellt"
 
-#: src/dht/gnunet-service-dht_neighbours.c:731
+#: src/dht/gnunet-service-dht_neighbours.c:737
 #, fuzzy
 msgid "# Queued messages discarded (peer disconnected)"
 msgstr "# defragmentierter Nachrichten"
 
-#: src/dht/gnunet-service-dht_neighbours.c:786
+#: src/dht/gnunet-service-dht_neighbours.c:792
 #, fuzzy
 msgid "# Bytes transmitted to other peers"
 msgstr "# Bytes des Typs %d übertragen"
 
-#: src/dht/gnunet-service-dht_neighbours.c:824
+#: src/dht/gnunet-service-dht_neighbours.c:830
 #, fuzzy
 msgid "# Bytes of bandwidth requested from core"
 msgstr "# Client Trace-Anfragen empfangen"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1046
-#: src/dht/gnunet-service-dht_neighbours.c:1074
+#: src/dht/gnunet-service-dht_neighbours.c:1052
+#: src/dht/gnunet-service-dht_neighbours.c:1080
 msgid "# Peers excluded from routing due to Bloomfilter"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1055
-#: src/dht/gnunet-service-dht_neighbours.c:1089
+#: src/dht/gnunet-service-dht_neighbours.c:1061
+#: src/dht/gnunet-service-dht_neighbours.c:1095
 #, fuzzy
 msgid "# Peer selection failed"
 msgstr " Verbindung fehlgeschlagen\n"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1223
+#: src/dht/gnunet-service-dht_neighbours.c:1229
 #, fuzzy
 msgid "# PUT requests routed"
 msgstr "# dht Anfragen weitergeleitet"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1252
+#: src/dht/gnunet-service-dht_neighbours.c:1258
 #, fuzzy
 msgid "# PUT messages queued for transmission"
 msgstr "# PING Nachrichten erstellt"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1259
-#: src/dht/gnunet-service-dht_neighbours.c:1372
-#: src/dht/gnunet-service-dht_neighbours.c:1472
+#: src/dht/gnunet-service-dht_neighbours.c:1265
+#: src/dht/gnunet-service-dht_neighbours.c:1378
+#: src/dht/gnunet-service-dht_neighbours.c:1478
 #, fuzzy
 msgid "# P2P messages dropped due to full queue"
 msgstr "# gap Anfragen verworfen: Kollision in RT"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1337
+#: src/dht/gnunet-service-dht_neighbours.c:1343
 #, fuzzy
 msgid "# GET requests routed"
 msgstr "# dht Anfragen weitergeleitet"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1364
+#: src/dht/gnunet-service-dht_neighbours.c:1370
 #, fuzzy
 msgid "# GET messages queued for transmission"
 msgstr "# PING Nachrichten erstellt"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1479
+#: src/dht/gnunet-service-dht_neighbours.c:1485
 #, fuzzy
 msgid "# RESULT messages queued for transmission"
 msgstr "# PING Nachrichten erstellt"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1567
+#: src/dht/gnunet-service-dht_neighbours.c:1573
 #, fuzzy
 msgid "# P2P PUT requests received"
 msgstr "# Client Trace-Anfragen empfangen"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1694
+#: src/dht/gnunet-service-dht_neighbours.c:1702
 msgid "# FIND PEER requests ignored due to Bloomfilter"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1702
+#: src/dht/gnunet-service-dht_neighbours.c:1710
 msgid "# FIND PEER requests ignored due to lack of HELLO"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1793
+#: src/dht/gnunet-service-dht_neighbours.c:1801
 #, fuzzy
 msgid "# P2P GET requests received"
 msgstr "# Client Trace-Anfragen empfangen"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1835
+#: src/dht/gnunet-service-dht_neighbours.c:1843
 #, fuzzy
 msgid "# P2P FIND PEER requests processed"
 msgstr "# Client Trace-Anfragen empfangen"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1849
+#: src/dht/gnunet-service-dht_neighbours.c:1857
 #, fuzzy
 msgid "# P2P GET requests ONLY routed"
 msgstr "# dht Anfragen weitergeleitet"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1934
+#: src/dht/gnunet-service-dht_neighbours.c:1944
 #, fuzzy
 msgid "# P2P RESULTS received"
 msgstr "# Bytes empfangen über TCP"
@@ -1323,7 +1361,7 @@
 msgid "# Entries added to routing table"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_routing.c:417
+#: src/dht/gnunet-service-dht_routing.c:418
 #, fuzzy
 msgid "# DHT requests combined"
 msgstr "# Client Trace-Anfragen empfangen"
@@ -2338,7 +2376,7 @@
 msgid "Special file-sharing operations"
 msgstr "Alle Optionen anzeigen"
 
-#: src/fs/gnunet-pseudonym.c:160 src/statistics/gnunet-statistics.c:204
+#: src/fs/gnunet-pseudonym.c:160 src/statistics/gnunet-statistics.c:283
 #, fuzzy, c-format
 msgid "Invalid argument `%s'\n"
 msgstr "Ungültiger Parameter: `%s'\n"
@@ -2617,16 +2655,16 @@
 msgid "Search GNUnet for files that were published on GNUnet"
 msgstr ""
 
-#: src/fs/gnunet-service-fs.c:245
+#: src/fs/gnunet-service-fs.c:248
 msgid "# running average P2P latency (ms)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs.c:306 src/fs/gnunet-service-fs.c:496
+#: src/fs/gnunet-service-fs.c:309 src/fs/gnunet-service-fs.c:523
 #, fuzzy
 msgid "# Loopback routes suppressed"
 msgstr "# gap Routing erfolgreich (insgesamt)"
 
-#: src/fs/gnunet-service-fs.c:588 src/hostlist/gnunet-daemon-hostlist.c:297
+#: src/fs/gnunet-service-fs.c:628 src/hostlist/gnunet-daemon-hostlist.c:297
 #: src/topology/gnunet-daemon-topology.c:1321
 #: src/topology/gnunet-daemon-topology.c:1328
 #, fuzzy, c-format
@@ -2831,104 +2869,113 @@
 msgid "# query plan entries"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:293
+#: src/fs/gnunet-service-fs_pr.c:299
 #, fuzzy
 msgid "# Pending requests created"
 msgstr "# Client Trace-Anfragen empfangen"
 
-#: src/fs/gnunet-service-fs_pr.c:385 src/fs/gnunet-service-fs_pr.c:643
+#: src/fs/gnunet-service-fs_pr.c:391 src/fs/gnunet-service-fs_pr.c:654
 #, fuzzy
 msgid "# Pending requests active"
 msgstr "# Client Trace-Anfragen empfangen"
 
-#: src/fs/gnunet-service-fs_pr.c:806
+#: src/fs/gnunet-service-fs_pr.c:822
 #, fuzzy
 msgid "# replies received and matched"
 msgstr "# Bytes empfangen über TCP"
 
-#: src/fs/gnunet-service-fs_pr.c:839
+#: src/fs/gnunet-service-fs_pr.c:855
 msgid "# duplicate replies discarded (bloomfilter)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:854
+#: src/fs/gnunet-service-fs_pr.c:864
+msgid "# irrelevant replies discarded"
+msgstr ""
+
+#: src/fs/gnunet-service-fs_pr.c:878
 #, c-format
 msgid "Unsupported block type %u\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:867
+#: src/fs/gnunet-service-fs_pr.c:891
 msgid "# results found locally"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:988
+#: src/fs/gnunet-service-fs_pr.c:1012
 msgid "# Datastore `PUT' failures"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1015
+#: src/fs/gnunet-service-fs_pr.c:1039
 #, fuzzy
 msgid "# storage requests dropped due to high load"
 msgstr "# gap Anfragen verworfen: Kollision in RT"
 
-#: src/fs/gnunet-service-fs_pr.c:1050
+#: src/fs/gnunet-service-fs_pr.c:1074
 #, fuzzy
 msgid "# Replies received from DHT"
 msgstr "# Bytes empfangen über HTTP"
 
-#: src/fs/gnunet-service-fs_pr.c:1145
+#: src/fs/gnunet-service-fs_pr.c:1203
+#, fuzzy
+msgid "# Replies received from STREAM"
+msgstr "# Bytes empfangen über HTTP"
+
+#: src/fs/gnunet-service-fs_pr.c:1255
 #, c-format
 msgid "Datastore lookup already took %s!\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1165
+#: src/fs/gnunet-service-fs_pr.c:1275
 #, c-format
 msgid "On-demand lookup already took %s!\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1212
+#: src/fs/gnunet-service-fs_pr.c:1322
 msgid "# Datastore lookups concluded (no results)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1227
+#: src/fs/gnunet-service-fs_pr.c:1337
 msgid "# Datastore lookups concluded (seen all)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1236
+#: src/fs/gnunet-service-fs_pr.c:1346
 msgid "# Datastore lookups aborted (more than MAX_RESULTS)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1251
+#: src/fs/gnunet-service-fs_pr.c:1361
 msgid "# requested DBLOCK or IBLOCK not found"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1265
+#: src/fs/gnunet-service-fs_pr.c:1375
 msgid "# on-demand blocks matched requests"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1278
+#: src/fs/gnunet-service-fs_pr.c:1388
 msgid "# on-demand lookups performed successfully"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1283
+#: src/fs/gnunet-service-fs_pr.c:1393
 msgid "# on-demand lookups failed"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1310 src/fs/gnunet-service-fs_pr.c:1350
-#: src/fs/gnunet-service-fs_pr.c:1490
+#: src/fs/gnunet-service-fs_pr.c:1420 src/fs/gnunet-service-fs_pr.c:1460
+#: src/fs/gnunet-service-fs_pr.c:1601
 msgid "# Datastore lookups concluded (error queueing)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1368
+#: src/fs/gnunet-service-fs_pr.c:1478
 msgid "# Datastore lookups concluded (found last result)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1379
+#: src/fs/gnunet-service-fs_pr.c:1489
 msgid "# Datastore lookups concluded (load too high)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1466
+#: src/fs/gnunet-service-fs_pr.c:1577
 msgid "# Datastore lookups initiated"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1551
+#: src/fs/gnunet-service-fs_pr.c:1662
 #, fuzzy
 msgid "# GAP PUT messages received"
 msgstr "# verschlüsselter PONG Nachrichten empfangen"
@@ -2968,10 +3015,6 @@
 msgid "Unindex a file that was previously indexed with gnunet-publish."
 msgstr ""
 
-#: src/fs/plugin_block_fs.c:130
-msgid "Reply mismatched in terms of namespace.  Discarded.\n"
-msgstr ""
-
 #: src/gns/gns_api.c:598
 #, fuzzy
 msgid "Failed to serialize lookup reply from GNS service!\n"
@@ -3182,6 +3225,41 @@
 msgid "Error writing HELLO to file `%s': %s\n"
 msgstr "Fehler beim Anlegen des Benutzers"
 
+#: src/hello/hello.c:905
+#, fuzzy
+msgid "Failed to parse HELLO message: missing expiration time\n"
+msgstr "Fehler beim Speichern der Konfiguration!"
+
+#: src/hello/hello.c:914
+#, fuzzy
+msgid "Failed to parse HELLO message: invalid expiration time\n"
+msgstr "Fehler beim Speichern der Konfiguration!"
+
+#: src/hello/hello.c:924
+#, fuzzy
+msgid "Failed to parse HELLO message: malformed\n"
+msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
+
+#: src/hello/hello.c:934
+#, fuzzy
+msgid "Failed to parse HELLO message: missing transport plugin\n"
+msgstr "Anwendung `%s' konnte nicht initialisiert werden.\n"
+
+#: src/hello/hello.c:951
+#, c-format
+msgid "Plugin `%s' not found\n"
+msgstr ""
+
+#: src/hello/hello.c:960
+#, c-format
+msgid "Plugin `%s' does not support URIs yet\n"
+msgstr ""
+
+#: src/hello/hello.c:979
+#, fuzzy, c-format
+msgid "Failed to parse `%s' as an address for plugin `%s'\n"
+msgstr "Fehler beim Binden an UDP Port %d.\n"
+
 #: src/hostlist/gnunet-daemon-hostlist.c:264
 msgid ""
 "None of the functions for the hostlist daemon were enabled.  I have no "
@@ -3379,8 +3457,8 @@
 msgstr ""
 
 #: src/hostlist/hostlist-server.c:184 src/hostlist/hostlist-server.c:425
-#: src/peerinfo-tool/gnunet-peerinfo.c:403
-#: src/peerinfo-tool/gnunet-peerinfo.c:519
+#: src/peerinfo-tool/gnunet-peerinfo.c:331
+#: src/peerinfo-tool/gnunet-peerinfo.c:386
 #: src/topology/gnunet-daemon-topology.c:922
 #, fuzzy, c-format
 msgid "Error in communication with PEERINFO service: %s\n"
@@ -3489,16 +3567,17 @@
 #: src/mesh/gnunet-daemon-regexprofiler.c:209
 #: src/mesh/gnunet-daemon-regexprofiler.c:222
 #: src/mesh/gnunet-daemon-regexprofiler.c:235
-#: src/mesh/gnunet-service-mesh.c:8376 src/mesh/gnunet-service-mesh.c:8388
-#: src/mesh/gnunet-service-mesh.c:8400 src/mesh/gnunet-service-mesh.c:8414
-#: src/mesh/gnunet-service-mesh.c:8426 src/mesh/gnunet-service-mesh.c:8438
-#: src/mesh/gnunet-service-mesh.c:8450 src/mesh/gnunet-service-mesh-new.c:8292
+#: src/mesh/gnunet-service-mesh.c:8692 src/mesh/gnunet-service-mesh.c:8704
+#: src/mesh/gnunet-service-mesh.c:8716 src/mesh/gnunet-service-mesh.c:8730
+#: src/mesh/gnunet-service-mesh.c:8742 src/mesh/gnunet-service-mesh.c:8754
+#: src/mesh/gnunet-service-mesh.c:8766 src/mesh/gnunet-service-mesh-new.c:8292
 #: src/mesh/gnunet-service-mesh-new.c:8304
 #: src/mesh/gnunet-service-mesh-new.c:8316
 #: src/mesh/gnunet-service-mesh-new.c:8329
 #: src/mesh/gnunet-service-mesh-new.c:8344
 #: src/mesh/gnunet-service-mesh-new.c:8356
 #: src/mesh/gnunet-service-mesh-new.c:8368
+#: src/regex/gnunet-regex-simulation-profiler.c:659
 #, fuzzy, c-format
 msgid "%s service is lacking key configuration settings (%s).  Exiting.\n"
 msgstr "GNUnet Konfiguration"
@@ -3507,12 +3586,24 @@
 msgid "Daemon to announce regular expressions for the peer using mesh."
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1146
+#: src/mesh/gnunet-mesh.c:162
+#, fuzzy
+msgid ""
+"provide inthe 'struct GNUNET_TRANSPORT_PeerIterateContextformation about all "
+"tunnels (continuously)"
+msgstr "Informationen über andere GNUnet Knoten ausgeben."
+
+#: src/mesh/gnunet-mesh.c:173
+#, fuzzy
+msgid "Print information about mesh tunnels and peers."
+msgstr "Informationen über andere GNUnet Knoten ausgeben."
+
+#: src/mesh/gnunet-regex-profiler.c:1147
 #: src/testbed/gnunet-testbed-profiler.c:320
 msgid "An operation has failed while starting peers\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1192
+#: src/mesh/gnunet-regex-profiler.c:1193
 #: src/testbed/gnunet-testbed-profiler.c:389
 #, fuzzy, c-format
 msgid "Creating a peer failed. Error: %s\n"
@@ -3520,55 +3611,56 @@
 "\n"
 "Fehler beim Uploaden der Datei: %s\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1319
+#: src/mesh/gnunet-regex-profiler.c:1320
 #: src/testbed/gnunet-testbed-profiler.c:494
 msgid "An operation has failed while starting slaves\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1341
+#: src/mesh/gnunet-regex-profiler.c:1342
 #, fuzzy, c-format
 msgid "No files found in `%s'\n"
 msgstr "Dienst `%s' konnte nicht ordentlich entladen werden!\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1396
+#: src/mesh/gnunet-regex-profiler.c:1397
 msgid "An operation has failed while linking\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1507
+#: src/mesh/gnunet-regex-profiler.c:1508
 #: src/testbed/gnunet-testbed-profiler.c:598
 #, c-format
 msgid "Host registration failed for a host. Error: %s\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1587
+#: src/mesh/gnunet-regex-profiler.c:1588
 #: src/testbed/gnunet-testbed-profiler.c:677
 msgid "Unable to connect to master controller -- Check config\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1686
+#: src/mesh/gnunet-regex-profiler.c:1687
 #, c-format
 msgid "No hosts-file specified on command line. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1691
-#: src/regex/gnunet-regex-simulation-profiler.c:498
+#: src/mesh/gnunet-regex-profiler.c:1692
+#: src/regex/gnunet-regex-simulation-profiler.c:622
 #, c-format
 msgid "No policy directory specified on command line. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1697
+#: src/mesh/gnunet-regex-profiler.c:1698
 #: src/testbed/gnunet-testbed-profiler.c:717
 #, c-format
 msgid "No hosts loaded. Need at least one host\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1704
+#: src/mesh/gnunet-regex-profiler.c:1705
 #: src/testbed/gnunet-testbed-profiler.c:724
+#: src/testbed/testbed_api_testbed.c:759
 #, c-format
 msgid "Host %s cannot start testbed\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1711
+#: src/mesh/gnunet-regex-profiler.c:1712
 #: src/testbed/gnunet-testbed-profiler.c:731
 #, fuzzy, c-format
 msgid "Exiting\n"
@@ -3576,84 +3668,84 @@
 "\n"
 "Abbruch.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1717
+#: src/mesh/gnunet-regex-profiler.c:1718
 #, fuzzy, c-format
 msgid "No configuration file given. Exiting\n"
 msgstr "Konfigurationsdatei FILENAME verwenden"
 
-#: src/mesh/gnunet-regex-profiler.c:1726
+#: src/mesh/gnunet-regex-profiler.c:1727
 #, fuzzy, c-format
 msgid "Configuration option (regex_prefix) missing. Exiting\n"
 msgstr "Konfigurationsdatei `%s' wurde erzeugt.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1744
-#: src/regex/gnunet-regex-simulation-profiler.c:504
+#: src/mesh/gnunet-regex-profiler.c:1745
+#: src/regex/gnunet-regex-simulation-profiler.c:629
 #, c-format
 msgid "Specified policies directory does not exist. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1751
+#: src/mesh/gnunet-regex-profiler.c:1752
 #, c-format
 msgid "No search strings file given. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1759
+#: src/mesh/gnunet-regex-profiler.c:1760
 #, c-format
 msgid ""
 "Error loading search strings. Given file does not contain enough strings. "
 "Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1765
+#: src/mesh/gnunet-regex-profiler.c:1766
 #, fuzzy, c-format
 msgid "Error loading search strings. Exiting.\n"
 msgstr "Fehler beim Verlassen der DHT.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1799
+#: src/mesh/gnunet-regex-profiler.c:1800
 #, fuzzy
 msgid "name of the file for writing statistics"
 msgstr "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1802
+#: src/mesh/gnunet-regex-profiler.c:1803
 msgid "create COUNT number of random links between peers"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1805
+#: src/mesh/gnunet-regex-profiler.c:1806
 msgid "wait TIMEOUT before considering a string match as failed"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1808
+#: src/mesh/gnunet-regex-profiler.c:1809
 msgid "wait DELAY before starting string search"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1811
+#: src/mesh/gnunet-regex-profiler.c:1812
 msgid "number of search strings to read from search strings file"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1814
-#: src/regex/gnunet-regex-simulation-profiler.c:555
+#: src/mesh/gnunet-regex-profiler.c:1815
+#: src/regex/gnunet-regex-simulation-profiler.c:692
 msgid "maximum path compression length"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1817
+#: src/mesh/gnunet-regex-profiler.c:1818
 msgid ""
 "if this option is set, only one peer is responsible for searching all strings"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1829
+#: src/mesh/gnunet-regex-profiler.c:1830
 msgid "Profiler for regex/mesh"
 msgstr ""
 
-#: src/mesh/gnunet-service-mesh.c:8082 src/mesh/gnunet-service-mesh-new.c:7998
+#: src/mesh/gnunet-service-mesh.c:8398 src/mesh/gnunet-service-mesh-new.c:7998
 msgid "Wrong CORE service\n"
 msgstr ""
 
-#: src/mesh/gnunet-service-mesh.c:8287 src/mesh/gnunet-service-mesh-new.c:8203
+#: src/mesh/gnunet-service-mesh.c:8603 src/mesh/gnunet-service-mesh-new.c:8203
 #, fuzzy
 msgid "Mesh service could not access hostkey.  Exiting.\n"
 msgstr "Auf die Namespace Informationen konnte nicht zugegriffen werden.\n"
 
-#: src/mesh/gnunet-service-mesh.c:8462 src/mesh/gnunet-service-mesh.c:8473
+#: src/mesh/gnunet-service-mesh.c:8778 src/mesh/gnunet-service-mesh.c:8789
 #: src/mesh/gnunet-service-mesh-new.c:8380
 #: src/mesh/gnunet-service-mesh-new.c:8391
 #, fuzzy, c-format
@@ -3751,7 +3843,7 @@
 msgstr ""
 
 #: src/namestore/gnunet-namestore.c:569
-#: src/peerinfo-tool/gnunet-peerinfo.c:882
+#: src/peerinfo-tool/gnunet-peerinfo.c:598
 #, fuzzy, c-format
 msgid "Invalid URI `%s'\n"
 msgstr "Ungültiger Parameter: `%s'\n"
@@ -3811,36 +3903,36 @@
 msgid "GNUnet zone manipulation tool"
 msgstr "GNUnet Konfiguration"
 
-#: src/namestore/gnunet-service-namestore.c:242
-#: src/namestore/gnunet-service-namestore.c:258
+#: src/namestore/gnunet-service-namestore.c:241
+#: src/namestore/gnunet-service-namestore.c:257
 #, fuzzy, c-format
 msgid "Failed to write zone key to file `%s': %s\n"
 msgstr "Datei wurde als `%s' gespeichert.\n"
 
-#: src/namestore/gnunet-service-namestore.c:244
+#: src/namestore/gnunet-service-namestore.c:243
 msgid "file exists but reading key failed"
 msgstr ""
 
-#: src/namestore/gnunet-service-namestore.c:260
+#: src/namestore/gnunet-service-namestore.c:259
 msgid "file exists with different key"
 msgstr ""
 
-#: src/namestore/gnunet-service-namestore.c:1519
+#: src/namestore/gnunet-service-namestore.c:1557
 #, fuzzy
 msgid "Failed to find record to remove\n"
 msgstr "Verbindung zu gnunetd konnte nicht hergestellt werden.\n"
 
-#: src/namestore/gnunet-service-namestore.c:2133
+#: src/namestore/gnunet-service-namestore.c:2172
 #, fuzzy, c-format
 msgid "Could not parse zone key file `%s'\n"
 msgstr "Konfigurationsdatei `%s' konnte nicht geparst werden.\n"
 
-#: src/namestore/gnunet-service-namestore.c:2223
+#: src/namestore/gnunet-service-namestore.c:2262
 #, fuzzy
 msgid "No directory to load zonefiles specified in configuration\n"
 msgstr "In der Konfigurationsdatei wurden keine Anwendungen definiert!\n"
 
-#: src/namestore/gnunet-service-namestore.c:2233
+#: src/namestore/gnunet-service-namestore.c:2272
 #, c-format
 msgid "Creating directory `%s' for zone files failed!\n"
 msgstr ""
@@ -3884,42 +3976,42 @@
 msgid "Protocol error"
 msgstr ""
 
-#: src/namestore/namestore_common.c:494 src/namestore/namestore_common.c:634
+#: src/namestore/namestore_common.c:509 src/namestore/namestore_common.c:649
 #, fuzzy, c-format
 msgid "Unsupported record type %d\n"
 msgstr "Ungültige Nachricht des Typs %u empfangen. Nachricht wird verworfen.\n"
 
-#: src/namestore/namestore_common.c:501
+#: src/namestore/namestore_common.c:516
 #, fuzzy, c-format
 msgid "Unable to parse IPv4 address `%s'\n"
 msgstr "Ungültiger Parameter: `%s'\n"
 
-#: src/namestore/namestore_common.c:524
+#: src/namestore/namestore_common.c:539
 #, fuzzy, c-format
 msgid "Unable to parse SOA record `%s'\n"
 msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
 
-#: src/namestore/namestore_common.c:547
+#: src/namestore/namestore_common.c:562
 #, fuzzy, c-format
 msgid "Unable to parse MX record `%s'\n"
 msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
 
-#: src/namestore/namestore_common.c:565
+#: src/namestore/namestore_common.c:580
 #, fuzzy, c-format
 msgid "Unable to parse IPv6 address `%s'\n"
 msgstr "Ungültiger Parameter: `%s'\n"
 
-#: src/namestore/namestore_common.c:578
+#: src/namestore/namestore_common.c:593
 #, fuzzy, c-format
 msgid "Unable to parse PKEY record `%s'\n"
 msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
 
-#: src/namestore/namestore_common.c:599
+#: src/namestore/namestore_common.c:614
 #, fuzzy, c-format
 msgid "Unable to parse VPN record string `%s'\n"
 msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
 
-#: src/namestore/namestore_common.c:625
+#: src/namestore/namestore_common.c:640
 #, fuzzy, c-format
 msgid "Unable to parse TLSA record string `%s'\n"
 msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
@@ -4111,86 +4203,51 @@
 msgid "Could not connect to `%s' service.\n"
 msgstr "Verbindung zu gnunetd konnte nicht hergestellt werden.\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:581
-#, fuzzy
-msgid "Failed to parse HELLO message: missing expiration time\n"
-msgstr "Fehler beim Speichern der Konfiguration!"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:589
-#, fuzzy
-msgid "Failed to parse HELLO message: invalid expiration time\n"
-msgstr "Fehler beim Speichern der Konfiguration!"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:598
-#, fuzzy
-msgid "Failed to parse HELLO message: malformed\n"
-msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:608
-#, fuzzy
-msgid "Failed to parse HELLO message: missing transport plugin\n"
-msgstr "Anwendung `%s' konnte nicht initialisiert werden.\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:625
-#, c-format
-msgid "Plugin `%s' not found\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:634
-#, c-format
-msgid "Plugin `%s' does not support URIs yet\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:653
+#: src/peerinfo-tool/gnunet-peerinfo.c:419
 #, fuzzy, c-format
-msgid "Failed to parse `%s' as an address for plugin `%s'\n"
-msgstr "Fehler beim Binden an UDP Port %d.\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:685
-#, fuzzy, c-format
 msgid "Failure adding HELLO: %s\n"
 msgstr "Fehler bei %s:%d.\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:841
+#: src/peerinfo-tool/gnunet-peerinfo.c:557
 #, fuzzy, c-format
 msgid "Could not find option `%s:%s' in configuration.\n"
 msgstr "Knoten `%s' konnte nicht in der Routing Tabelle gefunden werden!\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:847
+#: src/peerinfo-tool/gnunet-peerinfo.c:563
 #, fuzzy, c-format
 msgid "Loading hostkey from `%s' failed.\n"
 msgstr "Das Parsen des Hello von `%s' schlug fehl.\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:906
+#: src/peerinfo-tool/gnunet-peerinfo.c:622
 #, c-format
 msgid "I am peer `%s'.\n"
 msgstr "Ich bin Peer `%s'.\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:943
+#: src/peerinfo-tool/gnunet-peerinfo.c:648
 msgid "don't resolve host names"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:946
+#: src/peerinfo-tool/gnunet-peerinfo.c:651
 msgid "output only the identity strings"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:949
+#: src/peerinfo-tool/gnunet-peerinfo.c:654
 msgid "output our own identity only"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:952
+#: src/peerinfo-tool/gnunet-peerinfo.c:657
 msgid "list all known peers"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:955
+#: src/peerinfo-tool/gnunet-peerinfo.c:660
 msgid "also output HELLO uri(s)"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:958
+#: src/peerinfo-tool/gnunet-peerinfo.c:663
 msgid "add given HELLO uri to the database"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:969
+#: src/peerinfo-tool/gnunet-peerinfo.c:674
 #, fuzzy
 msgid "Print information about peers."
 msgstr "Informationen über andere GNUnet Knoten ausgeben."
@@ -4290,11 +4347,11 @@
 msgid "Daemon to run to perform IP protocol translation to GNUnet"
 msgstr ""
 
-#: src/regex/gnunet-regex-simulation-profiler.c:552
+#: src/regex/gnunet-regex-simulation-profiler.c:689
 msgid "name of the table to write DFAs"
 msgstr ""
 
-#: src/regex/gnunet-regex-simulation-profiler.c:567
+#: src/regex/gnunet-regex-simulation-profiler.c:705
 msgid "Profiler for regex library"
 msgstr ""
 
@@ -4308,65 +4365,78 @@
 msgid "Wrote %llu bytes of statistics to `%s'\n"
 msgstr "Dateien aus dem GNUnet herunterladen."
 
-#: src/statistics/gnunet-statistics.c:132
+#: src/statistics/gnunet-statistics.c:141
 #, fuzzy
 msgid "Failed to obtain statistics.\n"
 msgstr "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
 
-#: src/statistics/gnunet-statistics.c:134
+#: src/statistics/gnunet-statistics.c:143
 #, fuzzy, c-format
 msgid "Failed to obtain statistics from host `%s:%llu'\n"
 msgstr "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
 
-#: src/statistics/gnunet-statistics.c:183
+#: src/statistics/gnunet-statistics.c:181
 #, fuzzy, c-format
+msgid "Trying to connect to remote host, but service `%s' is not running\n"
+msgstr "Verbindung zu gnunetd konnte nicht hergestellt werden.\n"
+
+#: src/statistics/gnunet-statistics.c:190
+#, fuzzy, c-format
 msgid "A port is required to connect to host `%s'\n"
 msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
 
-#: src/statistics/gnunet-statistics.c:189
+#: src/statistics/gnunet-statistics.c:196
 #, c-format
 msgid "A port has to be between 1 and 65535 to connect to host `%s'\n"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:235
+#: src/statistics/gnunet-statistics.c:210
+msgid "Missing argument: subsystem \n"
+msgstr ""
+
+#: src/statistics/gnunet-statistics.c:216
+msgid "Missing argument: name\n"
+msgstr ""
+
+#: src/statistics/gnunet-statistics.c:247
 #, c-format
 msgid "No subsystem or name given\n"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:243
+#: src/statistics/gnunet-statistics.c:255
 #, fuzzy, c-format
 msgid "Failed to initialize watch routine\n"
 msgstr "SQLite Datenbank konnte nicht initialisiert werden.\n"
 
-#: src/statistics/gnunet-statistics.c:265
+#: src/statistics/gnunet-statistics.c:310
 msgid "limit output to statistics for the given NAME"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:268
+#: src/statistics/gnunet-statistics.c:313
 msgid "make the value being set persistent"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:271
+#: src/statistics/gnunet-statistics.c:316
 msgid "limit output to the given SUBSYSTEM"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:274
+#: src/statistics/gnunet-statistics.c:319
 msgid "just print the statistics value"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:277
+#: src/statistics/gnunet-statistics.c:322
 msgid "watch value continuously"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:280
+#: src/statistics/gnunet-statistics.c:325
 msgid "connect to remote host"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:283
+#: src/statistics/gnunet-statistics.c:328
 msgid "port for remote host"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:295
+#: src/statistics/gnunet-statistics.c:340
 msgid "Print statistics about GNUnet operations."
 msgstr "Statistiken der GNUnet Aktivitäten ausgeben."
 
@@ -4435,10 +4505,47 @@
 msgid "Hosts file %s cannot be read\n"
 msgstr "Sitzungsschlüssel von Knoten `%s' konnte nicht überprüft werden.\n"
 
-#: src/testbed/testbed_api_testbed.c:295
+#: src/testbed/testbed_api_testbed.c:320
 msgid "Some operations are still pending. Cancelling them\n"
 msgstr ""
 
+#: src/testbed/testbed_api_topology.c:580
+#, fuzzy, c-format
+msgid "Topology file %s not found\n"
+msgstr "`%s' fehlgeschlagen: Tabelle nicht gefunden!\n"
+
+#: src/testbed/testbed_api_topology.c:586
+#, fuzzy, c-format
+msgid "Topology file %s has no data\n"
+msgstr "Sitzungsschlüssel von Knoten `%s' konnte nicht überprüft werden.\n"
+
+#: src/testbed/testbed_api_topology.c:592
+#, fuzzy, c-format
+msgid "Topology file %s cannot be read\n"
+msgstr "Sitzungsschlüssel von Knoten `%s' konnte nicht überprüft werden.\n"
+
+#: src/testbed/testbed_api_topology.c:614
+#, fuzzy, c-format
+msgid "Failed to read peer index from toology file: %s"
+msgstr "Konfigurationsdatei `%s' konnte nicht geparst werden.\n"
+
+#: src/testbed/testbed_api_topology.c:623
+#: src/testbed/testbed_api_topology.c:648
+#, c-format
+msgid "Value in given topology file: %s out of range\n"
+msgstr ""
+
+#: src/testbed/testbed_api_topology.c:629
+#: src/testbed/testbed_api_topology.c:654
+#, fuzzy, c-format
+msgid "Failed to read peer index from topology file: %s"
+msgstr "Konfigurationsdatei `%s' konnte nicht geparst werden.\n"
+
+#: src/testbed/testbed_api_topology.c:635
+#: src/testbed/testbed_api_topology.c:660
+msgid "Topology file need more peers than the given ones\n"
+msgstr ""
+
 #: src/testing/gnunet-testing.c:131
 #, fuzzy, c-format
 msgid "Could not extract hostkey %u (offset too large?)\n"
@@ -4486,59 +4593,59 @@
 msgid "name of the service to run"
 msgstr ""
 
-#: src/testing/testing.c:198
+#: src/testing/testing.c:199
 #, c-format
 msgid "Hostkeys file not found: %s\n"
 msgstr ""
 
-#: src/testing/testing.c:214
+#: src/testing/testing.c:215
 #, c-format
 msgid "Incorrect hostkey file format: %s\n"
 msgstr ""
 
-#: src/testing/testing.c:525
+#: src/testing/testing.c:526
 #, fuzzy, c-format
 msgid "Key number %u does not exist\n"
 msgstr "Anzahl an Nachrichten, die pro Durchlauf verwendet wird"
 
-#: src/testing/testing.c:535
+#: src/testing/testing.c:536
 #, fuzzy, c-format
 msgid "Error while decoding key %u\n"
 msgstr "Fehler beim Download: %s\n"
 
-#: src/testing/testing.c:848
+#: src/testing/testing.c:850
 #, fuzzy
 msgid "Failed to create configuration for peer (not enough free ports?)\n"
 msgstr "Auf die Namespace Informationen konnte nicht zugegriffen werden.\n"
 
-#: src/testing/testing.c:859
+#: src/testing/testing.c:861
 #, c-format
 msgid ""
 "You attempted to create a testbed with more than %u hosts.  Please "
 "precompute more hostkeys first.\n"
 msgstr ""
 
-#: src/testing/testing.c:873
+#: src/testing/testing.c:875
 #, fuzzy, c-format
 msgid "Failed to initialize hostkey for peer %u\n"
 msgstr "SQLite Datenbank konnte nicht initialisiert werden.\n"
 
-#: src/testing/testing.c:906
+#: src/testing/testing.c:908
 #, fuzzy, c-format
 msgid "Failed to write hostkey file for peer %u: %s\n"
 msgstr "Dateiformat fehlerhaft (kein GNUnet Verzeichnis?)\n"
 
-#: src/testing/testing.c:924
+#: src/testing/testing.c:926
 #, fuzzy, c-format
 msgid "Failed to write configuration file `%s' for peer %u: %s\n"
 msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
 
-#: src/testing/testing.c:985
+#: src/testing/testing.c:997
 #, fuzzy, c-format
 msgid "Failed to start `%s': %s\n"
 msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
 
-#: src/testing/testing.c:1149
+#: src/testing/testing.c:1202
 #, fuzzy, c-format
 msgid "Failed to load configuration from %s\n"
 msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
@@ -4676,27 +4783,27 @@
 msgid "# disconnects due to blacklist"
 msgstr ""
 
-#: src/transport/gnunet-service-transport.c:177
+#: src/transport/gnunet-service-transport.c:182
 #, fuzzy
 msgid "# bytes payload discarded due to not connected peer "
 msgstr "# Knotenankündigungen empfangen"
 
-#: src/transport/gnunet-service-transport.c:252
+#: src/transport/gnunet-service-transport.c:257
 #, fuzzy
 msgid "# bytes total received"
 msgstr "# gap Anfragen insgesamt empfangen"
 
-#: src/transport/gnunet-service-transport.c:299
+#: src/transport/gnunet-service-transport.c:304
 #, fuzzy
 msgid "# bytes payload received"
 msgstr "# Bytes entschlüsselt"
 
-#: src/transport/gnunet-service-transport.c:604
+#: src/transport/gnunet-service-transport.c:609
 #, fuzzy, c-format
 msgid "Transport service could not access hostkey: %s. Exiting.\n"
 msgstr "Auf die Namespace Informationen konnte nicht zugegriffen werden.\n"
 
-#: src/transport/gnunet-service-transport.c:674
+#: src/transport/gnunet-service-transport.c:679
 msgid "Transport service is lacking key configuration settings.  Exiting.\n"
 msgstr ""
 
@@ -4724,7 +4831,7 @@
 msgid "# REQUEST CONNECT messages received"
 msgstr "# verschlüsselter PONG Nachrichten empfangen"
 
-#: src/transport/gnunet-service-transport_hello.c:172
+#: src/transport/gnunet-service-transport_hello.c:175
 msgid "# refreshed my HELLO"
 msgstr ""
 
@@ -5355,14 +5462,14 @@
 msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2317
+#: src/transport/plugin_transport_udp.c:2345
 #, c-format
 msgid ""
 "UDP could not transmit message to `%s': Network seems down, please check "
 "your network configuration\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2331
+#: src/transport/plugin_transport_udp.c:2359
 #, c-format
 msgid ""
 "UDP could not transmit message to `%s': Please check your network "
@@ -5370,22 +5477,22 @@
 "IPv6 address\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2572
+#: src/transport/plugin_transport_udp.c:2600
 #, fuzzy
 msgid "Failed to open UDP sockets\n"
 msgstr "Fehler beim Binden an UDP6 Port %d.\n"
 
-#: src/transport/plugin_transport_udp.c:2648
+#: src/transport/plugin_transport_udp.c:2676
 #, c-format
 msgid "Given `%s' option is out of range: %llu > %u\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2691
+#: src/transport/plugin_transport_udp.c:2719
 #, fuzzy, c-format
 msgid "Invalid IPv6 address: `%s'\n"
 msgstr "Ungültiger Parameter: `%s'\n"
 
-#: src/transport/plugin_transport_unix.c:1333
+#: src/transport/plugin_transport_unix.c:1357
 #, fuzzy
 msgid "Failed to open UNIX sockets\n"
 msgstr "Datei wurde als `%s' gespeichert.\n"
@@ -5998,7 +6105,7 @@
 "variable.\n"
 msgstr ""
 
-#: src/util/os_installation.c:653
+#: src/util/os_installation.c:699
 #, fuzzy, c-format
 msgid "Could not find binary `%s' in PATH!\n"
 msgstr "Knoten `%s' konnte nicht in der Routing Tabelle gefunden werden!\n"
@@ -6086,22 +6193,22 @@
 msgid "Attempt to cancel dead task %llu!\n"
 msgstr ""
 
-#: src/util/server.c:431
+#: src/util/server.c:426
 #, fuzzy, c-format
 msgid "`%s' failed for port %d (%s).\n"
 msgstr "`%s' fehlgeschlagen für Laufwerk %s: %u\n"
 
-#: src/util/server.c:440
+#: src/util/server.c:435
 #, fuzzy, c-format
 msgid "`%s' failed for port %d (%s): address already in use\n"
 msgstr "`%s' schlug fehl für Port %d: %s. Läuft gnunetd bereits?\n"
 
-#: src/util/server.c:451
+#: src/util/server.c:446
 #, fuzzy, c-format
 msgid "`%s' failed for `%.*s': address already in use\n"
 msgstr "`%s' schlug fehl für Port %d: %s. Läuft gnunetd bereits?\n"
 
-#: src/util/server.c:835
+#: src/util/server.c:830
 #, c-format
 msgid ""
 "Processing code for message of type %u did not call "
@@ -7029,10 +7136,6 @@
 #~ msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
 
 #, fuzzy
-#~ msgid "Peer `%s' plugin: `%s' address `%s'\n"
-#~ msgstr "Knoten `%s' mit Vertrauen %8u und Adresse `%s'\n"
-
-#, fuzzy
 #~ msgid "Failed to transmit request to DATASTORE.\n"
 #~ msgstr "Fehler beim Senden einer `%s' Anfrage an den SMTP Server.\n"
 
@@ -9101,9 +9204,6 @@
 #~ msgstr ""
 #~ "Das TESTBED konnte keine Hello Nachricht für das Protokoll %u erzeugen\n"
 
-#~ msgid "received invalid `%s' message\n"
-#~ msgstr "ungültige `%s' Nachricht empfangen\n"
-
 #~ msgid "received invalid `%s' message (empty module name)\n"
 #~ msgstr "ungültige `%s' Nachricht empfangen (leerer Modulname)\n"
 

Modified: gnunet/po/es.po
===================================================================
--- gnunet/po/es.po     2012-11-28 16:14:35 UTC (rev 25153)
+++ gnunet/po/es.po     2012-11-28 16:32:15 UTC (rev 25154)
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: GNUnet 0.7.0e\n"
 "Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2012-11-14 15:54+0100\n"
+"POT-Creation-Date: 2012-11-26 14:59+0100\n"
 "PO-Revision-Date: 2006-06-29 12:05+0200\n"
 "Last-Translator: Miguel Angel Arruga <address@hidden>\n"
 "Language-Team: Spanish\n"
@@ -235,66 +235,103 @@
 msgid "Initiating shutdown as requested by client.\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:75
-#, c-format
-msgid ""
-"Peer `%s' plugin `%s', address `%s', bandwidth out: %u Bytes/s, bandwidth in "
-"%u Bytes/s\n"
-msgstr ""
+#: src/ats/ats_api_performance.c:465
+#, fuzzy, c-format
+msgid "Received %s message\n"
+msgstr "recibido mensaje '%s' no válido\n"
 
-#: src/ats-tool/gnunet-ats.c:137
+#: src/ats/ats_api_performance.c:508
+#, fuzzy, c-format
+msgid "Received last message for %s \n"
+msgstr "GAP recibido contenido no válido de '%s'\n"
+
+#: src/ats-tool/gnunet-ats.c:134
 #, c-format
 msgid "%u address resolutions had a timeout\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:139
+#: src/ats-tool/gnunet-ats.c:136
 #, c-format
 msgid "ATS returned results for %u addresses\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:153 src/namestore/gnunet-namestore.c:610
+#: src/ats-tool/gnunet-ats.c:190
+#, fuzzy, c-format
+msgid ""
+"Peer `%s' plugin `%s', address `%s', bw out: %u Bytes/s, bw in %u Bytes/s, "
+"%s\n"
+msgstr "Par '%s' con credibilidad %8u y dirección '%s'\n"
+
+#: src/ats-tool/gnunet-ats.c:274 src/namestore/gnunet-namestore.c:610
 #: src/transport/gnunet-transport.c:744
 #, fuzzy, c-format
 msgid "Service `%s' is not running\n"
 msgstr "'%s' no es un fichero.\n"
 
-#: src/ats-tool/gnunet-ats.c:162 src/transport/gnunet-transport.c:750
+#: src/ats-tool/gnunet-ats.c:284 src/transport/gnunet-transport.c:750
 #, fuzzy, c-format
 msgid "Failed to parse peer identity `%s'\n"
 msgstr "Falló al actualizar los datos del módulo '%s'\n"
 
-#: src/ats-tool/gnunet-ats.c:167 src/ats-tool/gnunet-ats.c:182
-msgid "Type required\n"
+#: src/ats-tool/gnunet-ats.c:292
+#, c-format
+msgid "Please select one operation : %s or %s or %s or %s\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:189 src/ats-tool/gnunet-ats.c:199
+#: src/ats-tool/gnunet-ats.c:305 src/ats-tool/gnunet-ats.c:324
+#: src/ats-tool/gnunet-ats.c:341 src/ats-tool/gnunet-ats.c:366
 #, fuzzy, c-format
 msgid "Cannot connect to ATS service, exiting...\n"
 msgstr "Fallo al conectar a gnunetd.\n"
 
-#: src/ats-tool/gnunet-ats.c:247
+#: src/ats-tool/gnunet-ats.c:314 src/ats-tool/gnunet-ats.c:331
+#, fuzzy, c-format
+msgid "Cannot issue request to ATS service, exiting...\n"
+msgstr "Fallo al conectar a gnunetd.\n"
+
+#: src/ats-tool/gnunet-ats.c:359
+msgid "Type required\n"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:416
+msgid "get list of active addresses currently used"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:419
+msgid "get list of all active addresses"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:422
 #, fuzzy
 msgid "do not resolve IP addresses to hostnames"
 msgstr "GNUnet usa ahora la dirección IP %u.%u.%u.%u.\n"
 
-#: src/ats-tool/gnunet-ats.c:250
+#: src/ats-tool/gnunet-ats.c:425
 msgid "monitor mode"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:253
+#: src/ats-tool/gnunet-ats.c:428
 #, fuzzy
 msgid "set preference for the given peer"
 msgstr "Imprime información de los pares de GNUnet."
 
-#: src/ats-tool/gnunet-ats.c:256
+#: src/ats-tool/gnunet-ats.c:431
+msgid "peer id"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:434
 msgid "preference type to set: latency | bandwidth"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:259
+#: src/ats-tool/gnunet-ats.c:437
 msgid "preference value"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:268
+#: src/ats-tool/gnunet-ats.c:440
+msgid "verbose output (include ATS address properties)"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:449
 #, fuzzy
 msgid "Print information about ATS state"
 msgstr "Imprime información de los pares de GNUnet."
@@ -308,7 +345,7 @@
 msgid "Client was disconnected from core service, trying to reconnect.\n"
 msgstr ""
 
-#: src/core/gnunet-core.c:86 src/peerinfo-tool/gnunet-peerinfo.c:286
+#: src/core/gnunet-core.c:86 src/peerinfo-tool/gnunet-peerinfo.c:214
 #, fuzzy, c-format
 msgid "Peer `%s'\n"
 msgstr "Yo soy el par '%s'.\n"
@@ -329,7 +366,8 @@
 msgid "Disconnected from"
 msgstr "'%s' conectado a '%s'.\n"
 
-#: src/core/gnunet-core.c:174 src/peerinfo-tool/gnunet-peerinfo.c:825
+#: src/core/gnunet-core.c:174 src/mesh/gnunet-mesh.c:131
+#: src/peerinfo-tool/gnunet-peerinfo.c:541
 #, fuzzy, c-format
 msgid "Invalid command line argument `%s'\n"
 msgstr "Argumentos en la linea de comandos inválidos:\n"
@@ -360,7 +398,7 @@
 msgstr "Configuración de GNUnet"
 
 #: src/core/gnunet-service-core.c:163
-#: src/transport/gnunet-service-transport.c:685
+#: src/transport/gnunet-service-transport.c:696
 #, fuzzy
 msgid "Transport service is unable to access hostkey. Exiting.\n"
 msgstr "Imposible acceder a la información del espacio.\n"
@@ -510,8 +548,8 @@
 msgstr "# bytes desencriptados"
 
 #: src/core/gnunet-service-core_kx.c:1703 src/hostlist/hostlist-server.c:552
-#: src/peerinfo-tool/gnunet-peerinfo.c:831
-#: src/transport/gnunet-service-transport.c:627
+#: src/peerinfo-tool/gnunet-peerinfo.c:547
+#: src/transport/gnunet-service-transport.c:632
 #, fuzzy
 msgid "Could not access PEERINFO service.  Exiting.\n"
 msgstr "Imposible acceder a la información del espacio.\n"
@@ -537,8 +575,8 @@
 
 #: src/core/gnunet-service-core_sessions.c:206
 #: src/core/gnunet-service-core_sessions.c:269
-#: src/dht/gnunet-service-dht_neighbours.c:639
-#: src/dht/gnunet-service-dht_neighbours.c:697
+#: src/dht/gnunet-service-dht_neighbours.c:645
+#: src/dht/gnunet-service-dht_neighbours.c:703
 #: src/fs/gnunet-service-fs_cp.c:630 src/fs/gnunet-service-fs_cp.c:1544
 #: src/topology/gnunet-daemon-topology.c:704
 #: src/topology/gnunet-daemon-topology.c:805
@@ -630,17 +668,17 @@
 msgid "`%s' failed at %s:%d with error: %s\n"
 msgstr "'%s' falló en %s: %d con el error: %s\n"
 
-#: src/datacache/plugin_datacache_sqlite.c:448
+#: src/datacache/plugin_datacache_sqlite.c:450
 msgid "Sqlite datacache running\n"
 msgstr ""
 
-#: src/datacache/plugin_datacache_sqlite.c:482
+#: src/datacache/plugin_datacache_sqlite.c:484
 #: src/datastore/plugin_datastore_sqlite.c:401
 #: src/namestore/plugin_namestore_sqlite.c:362
 msgid "Tried to close sqlite without finalizing all prepared statements.\n"
 msgstr ""
 
-#: src/datacache/plugin_datacache_sqlite.c:489
+#: src/datacache/plugin_datacache_sqlite.c:491
 #, fuzzy, c-format
 msgid "Failed to close statement %p: %d\n"
 msgstr "Falló al actualizar los datos del módulo '%s'\n"
@@ -1088,55 +1126,55 @@
 msgid "Issue a PUT request to the GNUnet DHT insert DATA under KEY."
 msgstr ""
 
-#: src/dht/gnunet-service-dht.c:163
+#: src/dht/gnunet-service-dht.c:172
 #, fuzzy
 msgid "Failed to connect to transport service!\n"
 msgstr "Fallo al conectar a gnunetd.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:407
+#: src/dht/gnunet-service-dht_clients.c:413
 #, fuzzy
 msgid "# GET requests from clients injected"
 msgstr "# mensajes PONG encriptados recibidos"
 
-#: src/dht/gnunet-service-dht_clients.c:497
+#: src/dht/gnunet-service-dht_clients.c:503
 #, fuzzy
 msgid "# PUT requests received from clients"
 msgstr "El mensaje recibido del cliente es inválido\n"
 
-#: src/dht/gnunet-service-dht_clients.c:579
+#: src/dht/gnunet-service-dht_clients.c:585
 #, fuzzy
 msgid "# GET requests received from clients"
 msgstr "El mensaje recibido del cliente es inválido\n"
 
-#: src/dht/gnunet-service-dht_clients.c:775
+#: src/dht/gnunet-service-dht_clients.c:791
 #, fuzzy
 msgid "# GET STOP requests received from clients"
 msgstr "El mensaje recibido del cliente es inválido\n"
 
-#: src/dht/gnunet-service-dht_clients.c:1012
+#: src/dht/gnunet-service-dht_clients.c:1035
 msgid "# Key match, type mismatches in REPLY to CLIENT"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1025
+#: src/dht/gnunet-service-dht_clients.c:1048
 msgid "# Duplicate REPLIES to CLIENT request dropped"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1062
+#: src/dht/gnunet-service-dht_clients.c:1085
 #, fuzzy, c-format
 msgid "Unsupported block type (%u) in request!\n"
 msgstr "Mensaje no válido del tipo %u recibido.  Omitiendo.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:1085
+#: src/dht/gnunet-service-dht_clients.c:1108
 #, fuzzy
 msgid "# RESULTS queued for clients"
 msgstr "El mensaje recibido del cliente es inválido\n"
 
-#: src/dht/gnunet-service-dht_clients.c:1134
-#: src/dht/gnunet-service-dht_clients.c:1177
+#: src/dht/gnunet-service-dht_clients.c:1157
+#: src/dht/gnunet-service-dht_clients.c:1199
 msgid "# REPLIES ignored for CLIENTS (no match)"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1144
+#: src/dht/gnunet-service-dht_clients.c:1167
 #, fuzzy
 msgid "Could not pass reply to client, message too big!\n"
 msgstr "Imposible mandar el mensaje a gnunetd\n"
@@ -1185,101 +1223,101 @@
 msgid "# HELLOs obtained from peerinfo"
 msgstr "El mensaje recibido del cliente es inválido\n"
 
-#: src/dht/gnunet-service-dht_neighbours.c:495
+#: src/dht/gnunet-service-dht_neighbours.c:501
 msgid "# Preference updates given to core"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:585
+#: src/dht/gnunet-service-dht_neighbours.c:591
 #, fuzzy
 msgid "# FIND PEER messages initiated"
 msgstr "# mensajes fragmentados"
 
-#: src/dht/gnunet-service-dht_neighbours.c:731
+#: src/dht/gnunet-service-dht_neighbours.c:737
 #, fuzzy
 msgid "# Queued messages discarded (peer disconnected)"
 msgstr "# mensajes defragmentados"
 
-#: src/dht/gnunet-service-dht_neighbours.c:786
+#: src/dht/gnunet-service-dht_neighbours.c:792
 #, fuzzy
 msgid "# Bytes transmitted to other peers"
 msgstr "# bytes recibidos por TCP"
 
-#: src/dht/gnunet-service-dht_neighbours.c:824
+#: src/dht/gnunet-service-dht_neighbours.c:830
 #, fuzzy
 msgid "# Bytes of bandwidth requested from core"
 msgstr "# mensajes PONG encriptados recibidos"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1046
-#: src/dht/gnunet-service-dht_neighbours.c:1074
+#: src/dht/gnunet-service-dht_neighbours.c:1052
+#: src/dht/gnunet-service-dht_neighbours.c:1080
 msgid "# Peers excluded from routing due to Bloomfilter"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1055
-#: src/dht/gnunet-service-dht_neighbours.c:1089
+#: src/dht/gnunet-service-dht_neighbours.c:1061
+#: src/dht/gnunet-service-dht_neighbours.c:1095
 #, fuzzy
 msgid "# Peer selection failed"
 msgstr "Conexión fallida\n"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1223
+#: src/dht/gnunet-service-dht_neighbours.c:1229
 #, fuzzy
 msgid "# PUT requests routed"
 msgstr "# mensajes PONG encriptados recibidos"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1252
+#: src/dht/gnunet-service-dht_neighbours.c:1258
 #, fuzzy
 msgid "# PUT messages queued for transmission"
 msgstr "# bytes de mensajes salientes omitidos"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1259
-#: src/dht/gnunet-service-dht_neighbours.c:1372
-#: src/dht/gnunet-service-dht_neighbours.c:1472
+#: src/dht/gnunet-service-dht_neighbours.c:1265
+#: src/dht/gnunet-service-dht_neighbours.c:1378
+#: src/dht/gnunet-service-dht_neighbours.c:1478
 #, fuzzy
 msgid "# P2P messages dropped due to full queue"
 msgstr "# Anuncios de los pares recibidos"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1337
+#: src/dht/gnunet-service-dht_neighbours.c:1343
 #, fuzzy
 msgid "# GET requests routed"
 msgstr "# mensajes PONG encriptados recibidos"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1364
+#: src/dht/gnunet-service-dht_neighbours.c:1370
 #, fuzzy
 msgid "# GET messages queued for transmission"
 msgstr "# bytes de mensajes salientes omitidos"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1479
+#: src/dht/gnunet-service-dht_neighbours.c:1485
 msgid "# RESULT messages queued for transmission"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1567
+#: src/dht/gnunet-service-dht_neighbours.c:1573
 #, fuzzy
 msgid "# P2P PUT requests received"
 msgstr "# mensajes PONG encriptados recibidos"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1694
+#: src/dht/gnunet-service-dht_neighbours.c:1702
 msgid "# FIND PEER requests ignored due to Bloomfilter"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1702
+#: src/dht/gnunet-service-dht_neighbours.c:1710
 msgid "# FIND PEER requests ignored due to lack of HELLO"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1793
+#: src/dht/gnunet-service-dht_neighbours.c:1801
 #, fuzzy
 msgid "# P2P GET requests received"
 msgstr "# mensajes PONG encriptados recibidos"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1835
+#: src/dht/gnunet-service-dht_neighbours.c:1843
 #, fuzzy
 msgid "# P2P FIND PEER requests processed"
 msgstr "# mensajes PONG encriptados recibidos"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1849
+#: src/dht/gnunet-service-dht_neighbours.c:1857
 #, fuzzy
 msgid "# P2P GET requests ONLY routed"
 msgstr "# mensajes PONG encriptados recibidos"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1934
+#: src/dht/gnunet-service-dht_neighbours.c:1944
 #, fuzzy
 msgid "# P2P RESULTS received"
 msgstr "# bytes recibidos por TCP"
@@ -1317,7 +1355,7 @@
 msgid "# Entries added to routing table"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_routing.c:417
+#: src/dht/gnunet-service-dht_routing.c:418
 #, fuzzy
 msgid "# DHT requests combined"
 msgstr "# mensajes PONG encriptados recibidos"
@@ -2330,7 +2368,7 @@
 msgid "Special file-sharing operations"
 msgstr ""
 
-#: src/fs/gnunet-pseudonym.c:160 src/statistics/gnunet-statistics.c:204
+#: src/fs/gnunet-pseudonym.c:160 src/statistics/gnunet-statistics.c:283
 #, fuzzy, c-format
 msgid "Invalid argument `%s'\n"
 msgstr "Argumento no válido: '%s'\n"
@@ -2607,15 +2645,15 @@
 msgid "Search GNUnet for files that were published on GNUnet"
 msgstr ""
 
-#: src/fs/gnunet-service-fs.c:245
+#: src/fs/gnunet-service-fs.c:248
 msgid "# running average P2P latency (ms)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs.c:306 src/fs/gnunet-service-fs.c:496
+#: src/fs/gnunet-service-fs.c:309 src/fs/gnunet-service-fs.c:523
 msgid "# Loopback routes suppressed"
 msgstr ""
 
-#: src/fs/gnunet-service-fs.c:588 src/hostlist/gnunet-daemon-hostlist.c:297
+#: src/fs/gnunet-service-fs.c:628 src/hostlist/gnunet-daemon-hostlist.c:297
 #: src/topology/gnunet-daemon-topology.c:1321
 #: src/topology/gnunet-daemon-topology.c:1328
 #, fuzzy, c-format
@@ -2817,104 +2855,113 @@
 msgid "# query plan entries"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:293
+#: src/fs/gnunet-service-fs_pr.c:299
 #, fuzzy
 msgid "# Pending requests created"
 msgstr "# mensajes PONG encriptados recibidos"
 
-#: src/fs/gnunet-service-fs_pr.c:385 src/fs/gnunet-service-fs_pr.c:643
+#: src/fs/gnunet-service-fs_pr.c:391 src/fs/gnunet-service-fs_pr.c:654
 #, fuzzy
 msgid "# Pending requests active"
 msgstr "# mensajes PONG encriptados recibidos"
 
-#: src/fs/gnunet-service-fs_pr.c:806
+#: src/fs/gnunet-service-fs_pr.c:822
 #, fuzzy
 msgid "# replies received and matched"
 msgstr "# bytes recibidos por TCP"
 
-#: src/fs/gnunet-service-fs_pr.c:839
+#: src/fs/gnunet-service-fs_pr.c:855
 msgid "# duplicate replies discarded (bloomfilter)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:854
+#: src/fs/gnunet-service-fs_pr.c:864
+msgid "# irrelevant replies discarded"
+msgstr ""
+
+#: src/fs/gnunet-service-fs_pr.c:878
 #, c-format
 msgid "Unsupported block type %u\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:867
+#: src/fs/gnunet-service-fs_pr.c:891
 msgid "# results found locally"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:988
+#: src/fs/gnunet-service-fs_pr.c:1012
 msgid "# Datastore `PUT' failures"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1015
+#: src/fs/gnunet-service-fs_pr.c:1039
 #, fuzzy
 msgid "# storage requests dropped due to high load"
 msgstr "# Anuncios de los pares recibidos"
 
-#: src/fs/gnunet-service-fs_pr.c:1050
+#: src/fs/gnunet-service-fs_pr.c:1074
 #, fuzzy
 msgid "# Replies received from DHT"
 msgstr "# bytes recibidos vía HTTP"
 
-#: src/fs/gnunet-service-fs_pr.c:1145
+#: src/fs/gnunet-service-fs_pr.c:1203
+#, fuzzy
+msgid "# Replies received from STREAM"
+msgstr "# bytes recibidos vía HTTP"
+
+#: src/fs/gnunet-service-fs_pr.c:1255
 #, c-format
 msgid "Datastore lookup already took %s!\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1165
+#: src/fs/gnunet-service-fs_pr.c:1275
 #, c-format
 msgid "On-demand lookup already took %s!\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1212
+#: src/fs/gnunet-service-fs_pr.c:1322
 msgid "# Datastore lookups concluded (no results)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1227
+#: src/fs/gnunet-service-fs_pr.c:1337
 msgid "# Datastore lookups concluded (seen all)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1236
+#: src/fs/gnunet-service-fs_pr.c:1346
 msgid "# Datastore lookups aborted (more than MAX_RESULTS)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1251
+#: src/fs/gnunet-service-fs_pr.c:1361
 msgid "# requested DBLOCK or IBLOCK not found"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1265
+#: src/fs/gnunet-service-fs_pr.c:1375
 msgid "# on-demand blocks matched requests"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1278
+#: src/fs/gnunet-service-fs_pr.c:1388
 msgid "# on-demand lookups performed successfully"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1283
+#: src/fs/gnunet-service-fs_pr.c:1393
 msgid "# on-demand lookups failed"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1310 src/fs/gnunet-service-fs_pr.c:1350
-#: src/fs/gnunet-service-fs_pr.c:1490
+#: src/fs/gnunet-service-fs_pr.c:1420 src/fs/gnunet-service-fs_pr.c:1460
+#: src/fs/gnunet-service-fs_pr.c:1601
 msgid "# Datastore lookups concluded (error queueing)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1368
+#: src/fs/gnunet-service-fs_pr.c:1478
 msgid "# Datastore lookups concluded (found last result)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1379
+#: src/fs/gnunet-service-fs_pr.c:1489
 msgid "# Datastore lookups concluded (load too high)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1466
+#: src/fs/gnunet-service-fs_pr.c:1577
 msgid "# Datastore lookups initiated"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1551
+#: src/fs/gnunet-service-fs_pr.c:1662
 #, fuzzy
 msgid "# GAP PUT messages received"
 msgstr "# mensajes PONG encriptados recibidos"
@@ -2954,10 +3001,6 @@
 msgid "Unindex a file that was previously indexed with gnunet-publish."
 msgstr ""
 
-#: src/fs/plugin_block_fs.c:130
-msgid "Reply mismatched in terms of namespace.  Discarded.\n"
-msgstr ""
-
 #: src/gns/gns_api.c:598
 #, fuzzy
 msgid "Failed to serialize lookup reply from GNS service!\n"
@@ -3168,6 +3211,41 @@
 msgid "Error writing HELLO to file `%s': %s\n"
 msgstr "Error creando usuario"
 
+#: src/hello/hello.c:905
+#, fuzzy
+msgid "Failed to parse HELLO message: missing expiration time\n"
+msgstr "Imposible guardar la configuración"
+
+#: src/hello/hello.c:914
+#, fuzzy
+msgid "Failed to parse HELLO message: invalid expiration time\n"
+msgstr "Imposible guardar la configuración"
+
+#: src/hello/hello.c:924
+#, fuzzy
+msgid "Failed to parse HELLO message: malformed\n"
+msgstr "Falló al pasar los datos de la interfaz de '%s' de %s:%d.\n"
+
+#: src/hello/hello.c:934
+#, fuzzy
+msgid "Failed to parse HELLO message: missing transport plugin\n"
+msgstr "Imposible inicializar la aplicación '%s'\n"
+
+#: src/hello/hello.c:951
+#, c-format
+msgid "Plugin `%s' not found\n"
+msgstr ""
+
+#: src/hello/hello.c:960
+#, c-format
+msgid "Plugin `%s' does not support URIs yet\n"
+msgstr ""
+
+#: src/hello/hello.c:979
+#, fuzzy, c-format
+msgid "Failed to parse `%s' as an address for plugin `%s'\n"
+msgstr "Fallo al conectar a gnunetd.\n"
+
 #: src/hostlist/gnunet-daemon-hostlist.c:264
 msgid ""
 "None of the functions for the hostlist daemon were enabled.  I have no "
@@ -3365,8 +3443,8 @@
 msgstr ""
 
 #: src/hostlist/hostlist-server.c:184 src/hostlist/hostlist-server.c:425
-#: src/peerinfo-tool/gnunet-peerinfo.c:403
-#: src/peerinfo-tool/gnunet-peerinfo.c:519
+#: src/peerinfo-tool/gnunet-peerinfo.c:331
+#: src/peerinfo-tool/gnunet-peerinfo.c:386
 #: src/topology/gnunet-daemon-topology.c:922
 #, fuzzy, c-format
 msgid "Error in communication with PEERINFO service: %s\n"
@@ -3475,16 +3553,17 @@
 #: src/mesh/gnunet-daemon-regexprofiler.c:209
 #: src/mesh/gnunet-daemon-regexprofiler.c:222
 #: src/mesh/gnunet-daemon-regexprofiler.c:235
-#: src/mesh/gnunet-service-mesh.c:8376 src/mesh/gnunet-service-mesh.c:8388
-#: src/mesh/gnunet-service-mesh.c:8400 src/mesh/gnunet-service-mesh.c:8414
-#: src/mesh/gnunet-service-mesh.c:8426 src/mesh/gnunet-service-mesh.c:8438
-#: src/mesh/gnunet-service-mesh.c:8450 src/mesh/gnunet-service-mesh-new.c:8292
+#: src/mesh/gnunet-service-mesh.c:8692 src/mesh/gnunet-service-mesh.c:8704
+#: src/mesh/gnunet-service-mesh.c:8716 src/mesh/gnunet-service-mesh.c:8730
+#: src/mesh/gnunet-service-mesh.c:8742 src/mesh/gnunet-service-mesh.c:8754
+#: src/mesh/gnunet-service-mesh.c:8766 src/mesh/gnunet-service-mesh-new.c:8292
 #: src/mesh/gnunet-service-mesh-new.c:8304
 #: src/mesh/gnunet-service-mesh-new.c:8316
 #: src/mesh/gnunet-service-mesh-new.c:8329
 #: src/mesh/gnunet-service-mesh-new.c:8344
 #: src/mesh/gnunet-service-mesh-new.c:8356
 #: src/mesh/gnunet-service-mesh-new.c:8368
+#: src/regex/gnunet-regex-simulation-profiler.c:659
 #, fuzzy, c-format
 msgid "%s service is lacking key configuration settings (%s).  Exiting.\n"
 msgstr "Configuración de GNUnet"
@@ -3493,12 +3572,24 @@
 msgid "Daemon to announce regular expressions for the peer using mesh."
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1146
+#: src/mesh/gnunet-mesh.c:162
+#, fuzzy
+msgid ""
+"provide inthe 'struct GNUNET_TRANSPORT_PeerIterateContextformation about all "
+"tunnels (continuously)"
+msgstr "Imprime información de los pares de GNUnet."
+
+#: src/mesh/gnunet-mesh.c:173
+#, fuzzy
+msgid "Print information about mesh tunnels and peers."
+msgstr "Imprime información de los pares de GNUnet."
+
+#: src/mesh/gnunet-regex-profiler.c:1147
 #: src/testbed/gnunet-testbed-profiler.c:320
 msgid "An operation has failed while starting peers\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1192
+#: src/mesh/gnunet-regex-profiler.c:1193
 #: src/testbed/gnunet-testbed-profiler.c:389
 #, fuzzy, c-format
 msgid "Creating a peer failed. Error: %s\n"
@@ -3506,55 +3597,56 @@
 "\n"
 "Error subiendo el fichero %s\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1319
+#: src/mesh/gnunet-regex-profiler.c:1320
 #: src/testbed/gnunet-testbed-profiler.c:494
 msgid "An operation has failed while starting slaves\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1341
+#: src/mesh/gnunet-regex-profiler.c:1342
 #, fuzzy, c-format
 msgid "No files found in `%s'\n"
 msgstr "¡Imposible descargar adecuadamente el servicio '%s'!\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1396
+#: src/mesh/gnunet-regex-profiler.c:1397
 msgid "An operation has failed while linking\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1507
+#: src/mesh/gnunet-regex-profiler.c:1508
 #: src/testbed/gnunet-testbed-profiler.c:598
 #, c-format
 msgid "Host registration failed for a host. Error: %s\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1587
+#: src/mesh/gnunet-regex-profiler.c:1588
 #: src/testbed/gnunet-testbed-profiler.c:677
 msgid "Unable to connect to master controller -- Check config\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1686
+#: src/mesh/gnunet-regex-profiler.c:1687
 #, c-format
 msgid "No hosts-file specified on command line. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1691
-#: src/regex/gnunet-regex-simulation-profiler.c:498
+#: src/mesh/gnunet-regex-profiler.c:1692
+#: src/regex/gnunet-regex-simulation-profiler.c:622
 #, c-format
 msgid "No policy directory specified on command line. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1697
+#: src/mesh/gnunet-regex-profiler.c:1698
 #: src/testbed/gnunet-testbed-profiler.c:717
 #, c-format
 msgid "No hosts loaded. Need at least one host\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1704
+#: src/mesh/gnunet-regex-profiler.c:1705
 #: src/testbed/gnunet-testbed-profiler.c:724
+#: src/testbed/testbed_api_testbed.c:759
 #, c-format
 msgid "Host %s cannot start testbed\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1711
+#: src/mesh/gnunet-regex-profiler.c:1712
 #: src/testbed/gnunet-testbed-profiler.c:731
 #, fuzzy, c-format
 msgid "Exiting\n"
@@ -3562,84 +3654,84 @@
 "\n"
 "Saliendo.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1717
+#: src/mesh/gnunet-regex-profiler.c:1718
 #, fuzzy, c-format
 msgid "No configuration file given. Exiting\n"
 msgstr "usa el fichero de configuración FILENAME"
 
-#: src/mesh/gnunet-regex-profiler.c:1726
+#: src/mesh/gnunet-regex-profiler.c:1727
 #, fuzzy, c-format
 msgid "Configuration option (regex_prefix) missing. Exiting\n"
 msgstr "Fichero de configuración '%s' creado.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1744
-#: src/regex/gnunet-regex-simulation-profiler.c:504
+#: src/mesh/gnunet-regex-profiler.c:1745
+#: src/regex/gnunet-regex-simulation-profiler.c:629
 #, c-format
 msgid "Specified policies directory does not exist. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1751
+#: src/mesh/gnunet-regex-profiler.c:1752
 #, c-format
 msgid "No search strings file given. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1759
+#: src/mesh/gnunet-regex-profiler.c:1760
 #, c-format
 msgid ""
 "Error loading search strings. Given file does not contain enough strings. "
 "Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1765
+#: src/mesh/gnunet-regex-profiler.c:1766
 #, fuzzy, c-format
 msgid "Error loading search strings. Exiting.\n"
 msgstr "Error abandonando DHT.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1799
+#: src/mesh/gnunet-regex-profiler.c:1800
 #, fuzzy
 msgid "name of the file for writing statistics"
 msgstr "Fallo en las estadísticas del tráfico.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1802
+#: src/mesh/gnunet-regex-profiler.c:1803
 msgid "create COUNT number of random links between peers"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1805
+#: src/mesh/gnunet-regex-profiler.c:1806
 msgid "wait TIMEOUT before considering a string match as failed"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1808
+#: src/mesh/gnunet-regex-profiler.c:1809
 msgid "wait DELAY before starting string search"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1811
+#: src/mesh/gnunet-regex-profiler.c:1812
 msgid "number of search strings to read from search strings file"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1814
-#: src/regex/gnunet-regex-simulation-profiler.c:555
+#: src/mesh/gnunet-regex-profiler.c:1815
+#: src/regex/gnunet-regex-simulation-profiler.c:692
 msgid "maximum path compression length"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1817
+#: src/mesh/gnunet-regex-profiler.c:1818
 msgid ""
 "if this option is set, only one peer is responsible for searching all strings"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1829
+#: src/mesh/gnunet-regex-profiler.c:1830
 msgid "Profiler for regex/mesh"
 msgstr ""
 
-#: src/mesh/gnunet-service-mesh.c:8082 src/mesh/gnunet-service-mesh-new.c:7998
+#: src/mesh/gnunet-service-mesh.c:8398 src/mesh/gnunet-service-mesh-new.c:7998
 msgid "Wrong CORE service\n"
 msgstr ""
 
-#: src/mesh/gnunet-service-mesh.c:8287 src/mesh/gnunet-service-mesh-new.c:8203
+#: src/mesh/gnunet-service-mesh.c:8603 src/mesh/gnunet-service-mesh-new.c:8203
 #, fuzzy
 msgid "Mesh service could not access hostkey.  Exiting.\n"
 msgstr "Imposible acceder a la información del espacio.\n"
 
-#: src/mesh/gnunet-service-mesh.c:8462 src/mesh/gnunet-service-mesh.c:8473
+#: src/mesh/gnunet-service-mesh.c:8778 src/mesh/gnunet-service-mesh.c:8789
 #: src/mesh/gnunet-service-mesh-new.c:8380
 #: src/mesh/gnunet-service-mesh-new.c:8391
 #, fuzzy, c-format
@@ -3737,7 +3829,7 @@
 msgstr ""
 
 #: src/namestore/gnunet-namestore.c:569
-#: src/peerinfo-tool/gnunet-peerinfo.c:882
+#: src/peerinfo-tool/gnunet-peerinfo.c:598
 #, fuzzy, c-format
 msgid "Invalid URI `%s'\n"
 msgstr "Argumento no válido: '%s'\n"
@@ -3797,36 +3889,36 @@
 msgid "GNUnet zone manipulation tool"
 msgstr "Configuración de GNUnet"
 
-#: src/namestore/gnunet-service-namestore.c:242
-#: src/namestore/gnunet-service-namestore.c:258
+#: src/namestore/gnunet-service-namestore.c:241
+#: src/namestore/gnunet-service-namestore.c:257
 #, fuzzy, c-format
 msgid "Failed to write zone key to file `%s': %s\n"
 msgstr "Fichero almacenado en '%s'.\n"
 
-#: src/namestore/gnunet-service-namestore.c:244
+#: src/namestore/gnunet-service-namestore.c:243
 msgid "file exists but reading key failed"
 msgstr ""
 
-#: src/namestore/gnunet-service-namestore.c:260
+#: src/namestore/gnunet-service-namestore.c:259
 msgid "file exists with different key"
 msgstr ""
 
-#: src/namestore/gnunet-service-namestore.c:1519
+#: src/namestore/gnunet-service-namestore.c:1557
 #, fuzzy
 msgid "Failed to find record to remove\n"
 msgstr "Imposible conectar con gnunetd.\n"
 
-#: src/namestore/gnunet-service-namestore.c:2133
+#: src/namestore/gnunet-service-namestore.c:2172
 #, fuzzy, c-format
 msgid "Could not parse zone key file `%s'\n"
 msgstr "Imposible pasar el fichero de configuración '%s'.\n"
 
-#: src/namestore/gnunet-service-namestore.c:2223
+#: src/namestore/gnunet-service-namestore.c:2262
 #, fuzzy
 msgid "No directory to load zonefiles specified in configuration\n"
 msgstr "¡Ninguna aplicación definida en la configuración!\n"
 
-#: src/namestore/gnunet-service-namestore.c:2233
+#: src/namestore/gnunet-service-namestore.c:2272
 #, c-format
 msgid "Creating directory `%s' for zone files failed!\n"
 msgstr ""
@@ -3870,42 +3962,42 @@
 msgid "Protocol error"
 msgstr ""
 
-#: src/namestore/namestore_common.c:494 src/namestore/namestore_common.c:634
+#: src/namestore/namestore_common.c:509 src/namestore/namestore_common.c:649
 #, fuzzy, c-format
 msgid "Unsupported record type %d\n"
 msgstr "Mensaje no válido del tipo %u recibido.  Omitiendo.\n"
 
-#: src/namestore/namestore_common.c:501
+#: src/namestore/namestore_common.c:516
 #, fuzzy, c-format
 msgid "Unable to parse IPv4 address `%s'\n"
 msgstr "Argumento no válido: '%s'\n"
 
-#: src/namestore/namestore_common.c:524
+#: src/namestore/namestore_common.c:539
 #, fuzzy, c-format
 msgid "Unable to parse SOA record `%s'\n"
 msgstr "Error en el formato del fichero (¿no es un directorio de GNUnet?)\n"
 
-#: src/namestore/namestore_common.c:547
+#: src/namestore/namestore_common.c:562
 #, fuzzy, c-format
 msgid "Unable to parse MX record `%s'\n"
 msgstr "Error en el formato del fichero (¿no es un directorio de GNUnet?)\n"
 
-#: src/namestore/namestore_common.c:565
+#: src/namestore/namestore_common.c:580
 #, fuzzy, c-format
 msgid "Unable to parse IPv6 address `%s'\n"
 msgstr "Argumento no válido: '%s'\n"
 
-#: src/namestore/namestore_common.c:578
+#: src/namestore/namestore_common.c:593
 #, fuzzy, c-format
 msgid "Unable to parse PKEY record `%s'\n"
 msgstr "Error en el formato del fichero (¿no es un directorio de GNUnet?)\n"
 
-#: src/namestore/namestore_common.c:599
+#: src/namestore/namestore_common.c:614
 #, fuzzy, c-format
 msgid "Unable to parse VPN record string `%s'\n"
 msgstr "Falló al actualizar los datos del módulo '%s'\n"
 
-#: src/namestore/namestore_common.c:625
+#: src/namestore/namestore_common.c:640
 #, fuzzy, c-format
 msgid "Unable to parse TLSA record string `%s'\n"
 msgstr "Falló al actualizar los datos del módulo '%s'\n"
@@ -4097,86 +4189,51 @@
 msgid "Could not connect to `%s' service.\n"
 msgstr "Imposible conectar con gnunetd.\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:581
-#, fuzzy
-msgid "Failed to parse HELLO message: missing expiration time\n"
-msgstr "Imposible guardar la configuración"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:589
-#, fuzzy
-msgid "Failed to parse HELLO message: invalid expiration time\n"
-msgstr "Imposible guardar la configuración"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:598
-#, fuzzy
-msgid "Failed to parse HELLO message: malformed\n"
-msgstr "Falló al pasar los datos de la interfaz de '%s' de %s:%d.\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:608
-#, fuzzy
-msgid "Failed to parse HELLO message: missing transport plugin\n"
-msgstr "Imposible inicializar la aplicación '%s'\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:625
-#, c-format
-msgid "Plugin `%s' not found\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:634
-#, c-format
-msgid "Plugin `%s' does not support URIs yet\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:653
+#: src/peerinfo-tool/gnunet-peerinfo.c:419
 #, fuzzy, c-format
-msgid "Failed to parse `%s' as an address for plugin `%s'\n"
-msgstr "Fallo al conectar a gnunetd.\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:685
-#, fuzzy, c-format
 msgid "Failure adding HELLO: %s\n"
 msgstr "Fallo en %s:%d.\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:841
+#: src/peerinfo-tool/gnunet-peerinfo.c:557
 #, fuzzy, c-format
 msgid "Could not find option `%s:%s' in configuration.\n"
 msgstr "¡Imposible encontrar el par '%s' en la tabla de enrutado!\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:847
+#: src/peerinfo-tool/gnunet-peerinfo.c:563
 #, fuzzy, c-format
 msgid "Loading hostkey from `%s' failed.\n"
 msgstr "Analizando saludo de '%s' se produjo un fallo.\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:906
+#: src/peerinfo-tool/gnunet-peerinfo.c:622
 #, c-format
 msgid "I am peer `%s'.\n"
 msgstr "Yo soy el par '%s'.\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:943
+#: src/peerinfo-tool/gnunet-peerinfo.c:648
 msgid "don't resolve host names"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:946
+#: src/peerinfo-tool/gnunet-peerinfo.c:651
 msgid "output only the identity strings"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:949
+#: src/peerinfo-tool/gnunet-peerinfo.c:654
 msgid "output our own identity only"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:952
+#: src/peerinfo-tool/gnunet-peerinfo.c:657
 msgid "list all known peers"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:955
+#: src/peerinfo-tool/gnunet-peerinfo.c:660
 msgid "also output HELLO uri(s)"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:958
+#: src/peerinfo-tool/gnunet-peerinfo.c:663
 msgid "add given HELLO uri to the database"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:969
+#: src/peerinfo-tool/gnunet-peerinfo.c:674
 #, fuzzy
 msgid "Print information about peers."
 msgstr "Imprime información de los pares de GNUnet."
@@ -4276,11 +4333,11 @@
 msgid "Daemon to run to perform IP protocol translation to GNUnet"
 msgstr ""
 
-#: src/regex/gnunet-regex-simulation-profiler.c:552
+#: src/regex/gnunet-regex-simulation-profiler.c:689
 msgid "name of the table to write DFAs"
 msgstr ""
 
-#: src/regex/gnunet-regex-simulation-profiler.c:567
+#: src/regex/gnunet-regex-simulation-profiler.c:705
 msgid "Profiler for regex library"
 msgstr ""
 
@@ -4294,65 +4351,78 @@
 msgid "Wrote %llu bytes of statistics to `%s'\n"
 msgstr "Descarga los ficheros de GNUnet"
 
-#: src/statistics/gnunet-statistics.c:132
+#: src/statistics/gnunet-statistics.c:141
 #, fuzzy
 msgid "Failed to obtain statistics.\n"
 msgstr "Fallo en las estadísticas del tráfico.\n"
 
-#: src/statistics/gnunet-statistics.c:134
+#: src/statistics/gnunet-statistics.c:143
 #, fuzzy, c-format
 msgid "Failed to obtain statistics from host `%s:%llu'\n"
 msgstr "Fallo en las estadísticas del tráfico.\n"
 
-#: src/statistics/gnunet-statistics.c:183
+#: src/statistics/gnunet-statistics.c:181
 #, fuzzy, c-format
+msgid "Trying to connect to remote host, but service `%s' is not running\n"
+msgstr "Imposible conectar con gnunetd.\n"
+
+#: src/statistics/gnunet-statistics.c:190
+#, fuzzy, c-format
 msgid "A port is required to connect to host `%s'\n"
 msgstr "Fallo al conectar a gnunetd.\n"
 
-#: src/statistics/gnunet-statistics.c:189
+#: src/statistics/gnunet-statistics.c:196
 #, c-format
 msgid "A port has to be between 1 and 65535 to connect to host `%s'\n"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:235
+#: src/statistics/gnunet-statistics.c:210
+msgid "Missing argument: subsystem \n"
+msgstr ""
+
+#: src/statistics/gnunet-statistics.c:216
+msgid "Missing argument: name\n"
+msgstr ""
+
+#: src/statistics/gnunet-statistics.c:247
 #, c-format
 msgid "No subsystem or name given\n"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:243
+#: src/statistics/gnunet-statistics.c:255
 #, fuzzy, c-format
 msgid "Failed to initialize watch routine\n"
 msgstr "Imposible inicializar SQLite.\n"
 
-#: src/statistics/gnunet-statistics.c:265
+#: src/statistics/gnunet-statistics.c:310
 msgid "limit output to statistics for the given NAME"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:268
+#: src/statistics/gnunet-statistics.c:313
 msgid "make the value being set persistent"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:271
+#: src/statistics/gnunet-statistics.c:316
 msgid "limit output to the given SUBSYSTEM"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:274
+#: src/statistics/gnunet-statistics.c:319
 msgid "just print the statistics value"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:277
+#: src/statistics/gnunet-statistics.c:322
 msgid "watch value continuously"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:280
+#: src/statistics/gnunet-statistics.c:325
 msgid "connect to remote host"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:283
+#: src/statistics/gnunet-statistics.c:328
 msgid "port for remote host"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:295
+#: src/statistics/gnunet-statistics.c:340
 msgid "Print statistics about GNUnet operations."
 msgstr "Imprime estadísticas acerca de las operaciones de GNUnet."
 
@@ -4419,10 +4489,47 @@
 msgid "Hosts file %s cannot be read\n"
 msgstr "La clave de sesión del par '%s' no pudo ser verificada.\n"
 
-#: src/testbed/testbed_api_testbed.c:295
+#: src/testbed/testbed_api_testbed.c:320
 msgid "Some operations are still pending. Cancelling them\n"
 msgstr ""
 
+#: src/testbed/testbed_api_topology.c:580
+#, fuzzy, c-format
+msgid "Topology file %s not found\n"
+msgstr "'%s' falló: ¡tabla no encontrada!\n"
+
+#: src/testbed/testbed_api_topology.c:586
+#, fuzzy, c-format
+msgid "Topology file %s has no data\n"
+msgstr "La clave de sesión del par '%s' no pudo ser verificada.\n"
+
+#: src/testbed/testbed_api_topology.c:592
+#, fuzzy, c-format
+msgid "Topology file %s cannot be read\n"
+msgstr "La clave de sesión del par '%s' no pudo ser verificada.\n"
+
+#: src/testbed/testbed_api_topology.c:614
+#, fuzzy, c-format
+msgid "Failed to read peer index from toology file: %s"
+msgstr "Imposible pasar el fichero de configuración '%s'.\n"
+
+#: src/testbed/testbed_api_topology.c:623
+#: src/testbed/testbed_api_topology.c:648
+#, c-format
+msgid "Value in given topology file: %s out of range\n"
+msgstr ""
+
+#: src/testbed/testbed_api_topology.c:629
+#: src/testbed/testbed_api_topology.c:654
+#, fuzzy, c-format
+msgid "Failed to read peer index from topology file: %s"
+msgstr "Imposible pasar el fichero de configuración '%s'.\n"
+
+#: src/testbed/testbed_api_topology.c:635
+#: src/testbed/testbed_api_topology.c:660
+msgid "Topology file need more peers than the given ones\n"
+msgstr ""
+
 #: src/testing/gnunet-testing.c:131
 #, fuzzy, c-format
 msgid "Could not extract hostkey %u (offset too large?)\n"
@@ -4467,59 +4574,59 @@
 msgid "name of the service to run"
 msgstr ""
 
-#: src/testing/testing.c:198
+#: src/testing/testing.c:199
 #, c-format
 msgid "Hostkeys file not found: %s\n"
 msgstr ""
 
-#: src/testing/testing.c:214
+#: src/testing/testing.c:215
 #, c-format
 msgid "Incorrect hostkey file format: %s\n"
 msgstr ""
 
-#: src/testing/testing.c:525
+#: src/testing/testing.c:526
 #, fuzzy, c-format
 msgid "Key number %u does not exist\n"
 msgstr "número de mensajes a usar por iteración"
 
-#: src/testing/testing.c:535
+#: src/testing/testing.c:536
 #, fuzzy, c-format
 msgid "Error while decoding key %u\n"
 msgstr "Error descargando: %s\n"
 
-#: src/testing/testing.c:848
+#: src/testing/testing.c:850
 #, fuzzy
 msgid "Failed to create configuration for peer (not enough free ports?)\n"
 msgstr "Imposible acceder a la información del espacio.\n"
 
-#: src/testing/testing.c:859
+#: src/testing/testing.c:861
 #, c-format
 msgid ""
 "You attempted to create a testbed with more than %u hosts.  Please "
 "precompute more hostkeys first.\n"
 msgstr ""
 
-#: src/testing/testing.c:873
+#: src/testing/testing.c:875
 #, fuzzy, c-format
 msgid "Failed to initialize hostkey for peer %u\n"
 msgstr "Imposible inicializar SQLite.\n"
 
-#: src/testing/testing.c:906
+#: src/testing/testing.c:908
 #, fuzzy, c-format
 msgid "Failed to write hostkey file for peer %u: %s\n"
 msgstr "Error en el formato del fichero (¿no es un directorio de GNUnet?)\n"
 
-#: src/testing/testing.c:924
+#: src/testing/testing.c:926
 #, fuzzy, c-format
 msgid "Failed to write configuration file `%s' for peer %u: %s\n"
 msgstr "Imposible guardar el fichero de configuración '%s':"
 
-#: src/testing/testing.c:985
+#: src/testing/testing.c:997
 #, fuzzy, c-format
 msgid "Failed to start `%s': %s\n"
 msgstr "Fallo al conectar a gnunetd.\n"
 
-#: src/testing/testing.c:1149
+#: src/testing/testing.c:1202
 #, fuzzy, c-format
 msgid "Failed to load configuration from %s\n"
 msgstr "Imposible guardar el fichero de configuración '%s':"
@@ -4659,27 +4766,27 @@
 msgid "# disconnects due to blacklist"
 msgstr ""
 
-#: src/transport/gnunet-service-transport.c:177
+#: src/transport/gnunet-service-transport.c:182
 #, fuzzy
 msgid "# bytes payload discarded due to not connected peer "
 msgstr "# Anuncios de los pares recibidos"
 
-#: src/transport/gnunet-service-transport.c:252
+#: src/transport/gnunet-service-transport.c:257
 #, fuzzy
 msgid "# bytes total received"
 msgstr "# bytes en la base de datos"
 
-#: src/transport/gnunet-service-transport.c:299
+#: src/transport/gnunet-service-transport.c:304
 #, fuzzy
 msgid "# bytes payload received"
 msgstr "# bytes desencriptados"
 
-#: src/transport/gnunet-service-transport.c:604
+#: src/transport/gnunet-service-transport.c:609
 #, fuzzy, c-format
 msgid "Transport service could not access hostkey: %s. Exiting.\n"
 msgstr "Imposible acceder a la información del espacio.\n"
 
-#: src/transport/gnunet-service-transport.c:674
+#: src/transport/gnunet-service-transport.c:679
 msgid "Transport service is lacking key configuration settings.  Exiting.\n"
 msgstr ""
 
@@ -4707,7 +4814,7 @@
 msgid "# REQUEST CONNECT messages received"
 msgstr "# mensajes PONG encriptados recibidos"
 
-#: src/transport/gnunet-service-transport_hello.c:172
+#: src/transport/gnunet-service-transport_hello.c:175
 msgid "# refreshed my HELLO"
 msgstr ""
 
@@ -5331,14 +5438,14 @@
 msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2317
+#: src/transport/plugin_transport_udp.c:2345
 #, c-format
 msgid ""
 "UDP could not transmit message to `%s': Network seems down, please check "
 "your network configuration\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2331
+#: src/transport/plugin_transport_udp.c:2359
 #, c-format
 msgid ""
 "UDP could not transmit message to `%s': Please check your network "
@@ -5346,22 +5453,22 @@
 "IPv6 address\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2572
+#: src/transport/plugin_transport_udp.c:2600
 #, fuzzy
 msgid "Failed to open UDP sockets\n"
 msgstr "Fichero almacenado en '%s'.\n"
 
-#: src/transport/plugin_transport_udp.c:2648
+#: src/transport/plugin_transport_udp.c:2676
 #, c-format
 msgid "Given `%s' option is out of range: %llu > %u\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2691
+#: src/transport/plugin_transport_udp.c:2719
 #, fuzzy, c-format
 msgid "Invalid IPv6 address: `%s'\n"
 msgstr "Argumento no válido: '%s'\n"
 
-#: src/transport/plugin_transport_unix.c:1333
+#: src/transport/plugin_transport_unix.c:1357
 #, fuzzy
 msgid "Failed to open UNIX sockets\n"
 msgstr "Fichero almacenado en '%s'.\n"
@@ -5973,7 +6080,7 @@
 "variable.\n"
 msgstr ""
 
-#: src/util/os_installation.c:653
+#: src/util/os_installation.c:699
 #, fuzzy, c-format
 msgid "Could not find binary `%s' in PATH!\n"
 msgstr "¡Imposible encontrar el par '%s' en la tabla de enrutado!\n"
@@ -6060,24 +6167,24 @@
 msgid "Attempt to cancel dead task %llu!\n"
 msgstr ""
 
-#: src/util/server.c:431
+#: src/util/server.c:426
 #, fuzzy, c-format
 msgid "`%s' failed for port %d (%s).\n"
 msgstr "'%s' falló para la unidad %s: %u\n"
 
-#: src/util/server.c:440
+#: src/util/server.c:435
 #, fuzzy, c-format
 msgid "`%s' failed for port %d (%s): address already in use\n"
 msgstr ""
 "'%s' falló para el puerto %d: %s. ¿Está gnunet ejecutandose actualmente?\n"
 
-#: src/util/server.c:451
+#: src/util/server.c:446
 #, fuzzy, c-format
 msgid "`%s' failed for `%.*s': address already in use\n"
 msgstr ""
 "'%s' falló para el puerto %d: %s. ¿Está gnunet ejecutandose actualmente?\n"
 
-#: src/util/server.c:835
+#: src/util/server.c:830
 #, c-format
 msgid ""
 "Processing code for message of type %u did not call "
@@ -6970,10 +7077,6 @@
 #~ msgid "Unable to accept connection for service `%s': %s\n"
 #~ msgstr "Imposible guardar el fichero de configuración '%s':"
 
-#, fuzzy
-#~ msgid "Peer `%s' plugin: `%s' address `%s'\n"
-#~ msgstr "Par '%s' con credibilidad %8u y dirección '%s'\n"
-
 #~ msgid "KiB"
 #~ msgstr "KiB"
 
@@ -9054,9 +9157,6 @@
 #~ msgstr ""
 #~ "TESTBED no puede generar el mensaje de saludo para el protocolo %u\n"
 
-#~ msgid "received invalid `%s' message\n"
-#~ msgstr "recibido mensaje '%s' no válido\n"
-
 #~ msgid "received invalid `%s' message (empty module name)\n"
 #~ msgstr "recibido mensaje '%s' no válido (nombre del módulo vacío)\n"
 

Modified: gnunet/po/sv.po
===================================================================
--- gnunet/po/sv.po     2012-11-28 16:14:35 UTC (rev 25153)
+++ gnunet/po/sv.po     2012-11-28 16:32:15 UTC (rev 25154)
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: GNUnet 0.7.0b\n"
 "Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2012-11-14 15:54+0100\n"
+"POT-Creation-Date: 2012-11-26 14:59+0100\n"
 "PO-Revision-Date: 2006-01-21 17:16+0100\n"
 "Last-Translator: Daniel Nylander <address@hidden>\n"
 "Language-Team: Swedish <address@hidden>\n"
@@ -233,66 +233,103 @@
 msgid "Initiating shutdown as requested by client.\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:75
-#, c-format
-msgid ""
-"Peer `%s' plugin `%s', address `%s', bandwidth out: %u Bytes/s, bandwidth in "
-"%u Bytes/s\n"
-msgstr ""
+#: src/ats/ats_api_performance.c:465
+#, fuzzy, c-format
+msgid "Received %s message\n"
+msgstr "mottog ogiltigt \"%s\" meddelande\n"
 
-#: src/ats-tool/gnunet-ats.c:137
+#: src/ats/ats_api_performance.c:508
+#, fuzzy, c-format
+msgid "Received last message for %s \n"
+msgstr "Mottog ogiltigt \"%s\" meddelande från \"%s\".\n"
+
+#: src/ats-tool/gnunet-ats.c:134
 #, c-format
 msgid "%u address resolutions had a timeout\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:139
+#: src/ats-tool/gnunet-ats.c:136
 #, c-format
 msgid "ATS returned results for %u addresses\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:153 src/namestore/gnunet-namestore.c:610
+#: src/ats-tool/gnunet-ats.c:190
+#, fuzzy, c-format
+msgid ""
+"Peer `%s' plugin `%s', address `%s', bw out: %u Bytes/s, bw in %u Bytes/s, "
+"%s\n"
+msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n"
+
+#: src/ats-tool/gnunet-ats.c:274 src/namestore/gnunet-namestore.c:610
 #: src/transport/gnunet-transport.c:744
 #, fuzzy, c-format
 msgid "Service `%s' is not running\n"
 msgstr "\"%s\" är inte en fil.\n"
 
-#: src/ats-tool/gnunet-ats.c:162 src/transport/gnunet-transport.c:750
+#: src/ats-tool/gnunet-ats.c:284 src/transport/gnunet-transport.c:750
 #, fuzzy, c-format
 msgid "Failed to parse peer identity `%s'\n"
 msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
 
-#: src/ats-tool/gnunet-ats.c:167 src/ats-tool/gnunet-ats.c:182
-msgid "Type required\n"
+#: src/ats-tool/gnunet-ats.c:292
+#, c-format
+msgid "Please select one operation : %s or %s or %s or %s\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:189 src/ats-tool/gnunet-ats.c:199
+#: src/ats-tool/gnunet-ats.c:305 src/ats-tool/gnunet-ats.c:324
+#: src/ats-tool/gnunet-ats.c:341 src/ats-tool/gnunet-ats.c:366
 #, fuzzy, c-format
 msgid "Cannot connect to ATS service, exiting...\n"
 msgstr "Misslyckades att initiera tjänsten \"%s\".\n"
 
-#: src/ats-tool/gnunet-ats.c:247
+#: src/ats-tool/gnunet-ats.c:314 src/ats-tool/gnunet-ats.c:331
+#, fuzzy, c-format
+msgid "Cannot issue request to ATS service, exiting...\n"
+msgstr "Misslyckades att initiera tjänsten \"%s\".\n"
+
+#: src/ats-tool/gnunet-ats.c:359
+msgid "Type required\n"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:416
+msgid "get list of active addresses currently used"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:419
+msgid "get list of all active addresses"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:422
 #, fuzzy
 msgid "do not resolve IP addresses to hostnames"
 msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
 
-#: src/ats-tool/gnunet-ats.c:250
+#: src/ats-tool/gnunet-ats.c:425
 msgid "monitor mode"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:253
+#: src/ats-tool/gnunet-ats.c:428
 #, fuzzy
 msgid "set preference for the given peer"
 msgstr "Skriv ut information om GNUnets motparter."
 
-#: src/ats-tool/gnunet-ats.c:256
+#: src/ats-tool/gnunet-ats.c:431
+msgid "peer id"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:434
 msgid "preference type to set: latency | bandwidth"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:259
+#: src/ats-tool/gnunet-ats.c:437
 msgid "preference value"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:268
+#: src/ats-tool/gnunet-ats.c:440
+msgid "verbose output (include ATS address properties)"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:449
 #, fuzzy
 msgid "Print information about ATS state"
 msgstr "Skriv ut information om GNUnets motparter."
@@ -306,7 +343,7 @@
 msgid "Client was disconnected from core service, trying to reconnect.\n"
 msgstr ""
 
-#: src/core/gnunet-core.c:86 src/peerinfo-tool/gnunet-peerinfo.c:286
+#: src/core/gnunet-core.c:86 src/peerinfo-tool/gnunet-peerinfo.c:214
 #, fuzzy, c-format
 msgid "Peer `%s'\n"
 msgstr "Jag är ändpunkt \"%s\".\n"
@@ -327,7 +364,8 @@
 msgid "Disconnected from"
 msgstr "\"%s\" ansluten till \"%s\".\n"
 
-#: src/core/gnunet-core.c:174 src/peerinfo-tool/gnunet-peerinfo.c:825
+#: src/core/gnunet-core.c:174 src/mesh/gnunet-mesh.c:131
+#: src/peerinfo-tool/gnunet-peerinfo.c:541
 #, fuzzy, c-format
 msgid "Invalid command line argument `%s'\n"
 msgstr "Ogiltiga kommandoradsargument:\n"
@@ -358,7 +396,7 @@
 msgstr "GNUnet-konfiguration"
 
 #: src/core/gnunet-service-core.c:163
-#: src/transport/gnunet-service-transport.c:685
+#: src/transport/gnunet-service-transport.c:696
 #, fuzzy
 msgid "Transport service is unable to access hostkey. Exiting.\n"
 msgstr "Kunde inte komma åt namnrymdsinformation.\n"
@@ -507,8 +545,8 @@
 msgstr "# byte dekrypterade"
 
 #: src/core/gnunet-service-core_kx.c:1703 src/hostlist/hostlist-server.c:552
-#: src/peerinfo-tool/gnunet-peerinfo.c:831
-#: src/transport/gnunet-service-transport.c:627
+#: src/peerinfo-tool/gnunet-peerinfo.c:547
+#: src/transport/gnunet-service-transport.c:632
 #, fuzzy
 msgid "Could not access PEERINFO service.  Exiting.\n"
 msgstr "Kunde inte komma åt namnrymdsinformation.\n"
@@ -534,8 +572,8 @@
 
 #: src/core/gnunet-service-core_sessions.c:206
 #: src/core/gnunet-service-core_sessions.c:269
-#: src/dht/gnunet-service-dht_neighbours.c:639
-#: src/dht/gnunet-service-dht_neighbours.c:697
+#: src/dht/gnunet-service-dht_neighbours.c:645
+#: src/dht/gnunet-service-dht_neighbours.c:703
 #: src/fs/gnunet-service-fs_cp.c:630 src/fs/gnunet-service-fs_cp.c:1544
 #: src/topology/gnunet-daemon-topology.c:704
 #: src/topology/gnunet-daemon-topology.c:805
@@ -626,17 +664,17 @@
 msgid "`%s' failed at %s:%d with error: %s\n"
 msgstr "\"%s\" misslyckades vid %s:%d med fel: %s\n"
 
-#: src/datacache/plugin_datacache_sqlite.c:448
+#: src/datacache/plugin_datacache_sqlite.c:450
 msgid "Sqlite datacache running\n"
 msgstr ""
 
-#: src/datacache/plugin_datacache_sqlite.c:482
+#: src/datacache/plugin_datacache_sqlite.c:484
 #: src/datastore/plugin_datastore_sqlite.c:401
 #: src/namestore/plugin_namestore_sqlite.c:362
 msgid "Tried to close sqlite without finalizing all prepared statements.\n"
 msgstr ""
 
-#: src/datacache/plugin_datacache_sqlite.c:489
+#: src/datacache/plugin_datacache_sqlite.c:491
 #, fuzzy, c-format
 msgid "Failed to close statement %p: %d\n"
 msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
@@ -1071,55 +1109,55 @@
 msgid "Issue a PUT request to the GNUnet DHT insert DATA under KEY."
 msgstr ""
 
-#: src/dht/gnunet-service-dht.c:163
+#: src/dht/gnunet-service-dht.c:172
 #, fuzzy
 msgid "Failed to connect to transport service!\n"
 msgstr "Misslyckades att ansluta till gnunetd.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:407
+#: src/dht/gnunet-service-dht_clients.c:413
 #, fuzzy
 msgid "# GET requests from clients injected"
 msgstr "# byte mottogs via TCP"
 
-#: src/dht/gnunet-service-dht_clients.c:497
+#: src/dht/gnunet-service-dht_clients.c:503
 #, fuzzy
 msgid "# PUT requests received from clients"
 msgstr "Meddelande mottaget från klient är ogiltig.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:579
+#: src/dht/gnunet-service-dht_clients.c:585
 #, fuzzy
 msgid "# GET requests received from clients"
 msgstr "Meddelande mottaget från klient är ogiltig.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:775
+#: src/dht/gnunet-service-dht_clients.c:791
 #, fuzzy
 msgid "# GET STOP requests received from clients"
 msgstr "Meddelande mottaget från klient är ogiltig.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:1012
+#: src/dht/gnunet-service-dht_clients.c:1035
 msgid "# Key match, type mismatches in REPLY to CLIENT"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1025
+#: src/dht/gnunet-service-dht_clients.c:1048
 msgid "# Duplicate REPLIES to CLIENT request dropped"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1062
+#: src/dht/gnunet-service-dht_clients.c:1085
 #, c-format
 msgid "Unsupported block type (%u) in request!\n"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1085
+#: src/dht/gnunet-service-dht_clients.c:1108
 #, fuzzy
 msgid "# RESULTS queued for clients"
 msgstr "Meddelande mottaget från klient är ogiltig.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:1134
-#: src/dht/gnunet-service-dht_clients.c:1177
+#: src/dht/gnunet-service-dht_clients.c:1157
+#: src/dht/gnunet-service-dht_clients.c:1199
 msgid "# REPLIES ignored for CLIENTS (no match)"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1144
+#: src/dht/gnunet-service-dht_clients.c:1167
 #, fuzzy
 msgid "Could not pass reply to client, message too big!\n"
 msgstr "Kunde inte skicka meddelande till gnunetd\n"
@@ -1168,100 +1206,100 @@
 msgid "# HELLOs obtained from peerinfo"
 msgstr "Meddelande mottaget från klient är ogiltig.\n"
 
-#: src/dht/gnunet-service-dht_neighbours.c:495
+#: src/dht/gnunet-service-dht_neighbours.c:501
 msgid "# Preference updates given to core"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:585
+#: src/dht/gnunet-service-dht_neighbours.c:591
 #, fuzzy
 msgid "# FIND PEER messages initiated"
 msgstr "# PING-meddelanden skapade"
 
-#: src/dht/gnunet-service-dht_neighbours.c:731
+#: src/dht/gnunet-service-dht_neighbours.c:737
 #, fuzzy
 msgid "# Queued messages discarded (peer disconnected)"
 msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
 
-#: src/dht/gnunet-service-dht_neighbours.c:786
+#: src/dht/gnunet-service-dht_neighbours.c:792
 #, fuzzy
 msgid "# Bytes transmitted to other peers"
 msgstr "# byte skickade av typen %d"
 
-#: src/dht/gnunet-service-dht_neighbours.c:824
+#: src/dht/gnunet-service-dht_neighbours.c:830
 msgid "# Bytes of bandwidth requested from core"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1046
-#: src/dht/gnunet-service-dht_neighbours.c:1074
+#: src/dht/gnunet-service-dht_neighbours.c:1052
+#: src/dht/gnunet-service-dht_neighbours.c:1080
 msgid "# Peers excluded from routing due to Bloomfilter"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1055
-#: src/dht/gnunet-service-dht_neighbours.c:1089
+#: src/dht/gnunet-service-dht_neighbours.c:1061
+#: src/dht/gnunet-service-dht_neighbours.c:1095
 msgid "# Peer selection failed"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1223
+#: src/dht/gnunet-service-dht_neighbours.c:1229
 #, fuzzy
 msgid "# PUT requests routed"
 msgstr "# byte mottogs via TCP"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1252
+#: src/dht/gnunet-service-dht_neighbours.c:1258
 #, fuzzy
 msgid "# PUT messages queued for transmission"
 msgstr "# PING-meddelanden skapade"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1259
-#: src/dht/gnunet-service-dht_neighbours.c:1372
-#: src/dht/gnunet-service-dht_neighbours.c:1472
+#: src/dht/gnunet-service-dht_neighbours.c:1265
+#: src/dht/gnunet-service-dht_neighbours.c:1378
+#: src/dht/gnunet-service-dht_neighbours.c:1478
 #, fuzzy
 msgid "# P2P messages dropped due to full queue"
 msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1337
+#: src/dht/gnunet-service-dht_neighbours.c:1343
 #, fuzzy
 msgid "# GET requests routed"
 msgstr "# byte mottogs via TCP"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1364
+#: src/dht/gnunet-service-dht_neighbours.c:1370
 #, fuzzy
 msgid "# GET messages queued for transmission"
 msgstr "# PING-meddelanden skapade"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1479
+#: src/dht/gnunet-service-dht_neighbours.c:1485
 #, fuzzy
 msgid "# RESULT messages queued for transmission"
 msgstr "# PING-meddelanden skapade"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1567
+#: src/dht/gnunet-service-dht_neighbours.c:1573
 #, fuzzy
 msgid "# P2P PUT requests received"
 msgstr "# byte mottogs via TCP"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1694
+#: src/dht/gnunet-service-dht_neighbours.c:1702
 msgid "# FIND PEER requests ignored due to Bloomfilter"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1702
+#: src/dht/gnunet-service-dht_neighbours.c:1710
 msgid "# FIND PEER requests ignored due to lack of HELLO"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1793
+#: src/dht/gnunet-service-dht_neighbours.c:1801
 #, fuzzy
 msgid "# P2P GET requests received"
 msgstr "# byte mottogs via TCP"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1835
+#: src/dht/gnunet-service-dht_neighbours.c:1843
 #, fuzzy
 msgid "# P2P FIND PEER requests processed"
 msgstr "# byte mottogs via TCP"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1849
+#: src/dht/gnunet-service-dht_neighbours.c:1857
 #, fuzzy
 msgid "# P2P GET requests ONLY routed"
 msgstr "# byte mottogs via TCP"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1934
+#: src/dht/gnunet-service-dht_neighbours.c:1944
 #, fuzzy
 msgid "# P2P RESULTS received"
 msgstr "# krypterade PONG-meddelanden mottagna"
@@ -1299,7 +1337,7 @@
 msgid "# Entries added to routing table"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_routing.c:417
+#: src/dht/gnunet-service-dht_routing.c:418
 #, fuzzy
 msgid "# DHT requests combined"
 msgstr "# byte mottogs via TCP"
@@ -2308,7 +2346,7 @@
 msgid "Special file-sharing operations"
 msgstr "Visa alla alternativ"
 
-#: src/fs/gnunet-pseudonym.c:160 src/statistics/gnunet-statistics.c:204
+#: src/fs/gnunet-pseudonym.c:160 src/statistics/gnunet-statistics.c:283
 #, fuzzy, c-format
 msgid "Invalid argument `%s'\n"
 msgstr "Ogiltigt argument: \"%s\"\n"
@@ -2568,15 +2606,15 @@
 msgid "Search GNUnet for files that were published on GNUnet"
 msgstr ""
 
-#: src/fs/gnunet-service-fs.c:245
+#: src/fs/gnunet-service-fs.c:248
 msgid "# running average P2P latency (ms)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs.c:306 src/fs/gnunet-service-fs.c:496
+#: src/fs/gnunet-service-fs.c:309 src/fs/gnunet-service-fs.c:523
 msgid "# Loopback routes suppressed"
 msgstr ""
 
-#: src/fs/gnunet-service-fs.c:588 src/hostlist/gnunet-daemon-hostlist.c:297
+#: src/fs/gnunet-service-fs.c:628 src/hostlist/gnunet-daemon-hostlist.c:297
 #: src/topology/gnunet-daemon-topology.c:1321
 #: src/topology/gnunet-daemon-topology.c:1328
 #, fuzzy, c-format
@@ -2774,103 +2812,112 @@
 msgid "# query plan entries"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:293
+#: src/fs/gnunet-service-fs_pr.c:299
 #, fuzzy
 msgid "# Pending requests created"
 msgstr "# byte mottogs via TCP"
 
-#: src/fs/gnunet-service-fs_pr.c:385 src/fs/gnunet-service-fs_pr.c:643
+#: src/fs/gnunet-service-fs_pr.c:391 src/fs/gnunet-service-fs_pr.c:654
 msgid "# Pending requests active"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:806
+#: src/fs/gnunet-service-fs_pr.c:822
 #, fuzzy
 msgid "# replies received and matched"
 msgstr "# byte mottagna av typen %d"
 
-#: src/fs/gnunet-service-fs_pr.c:839
+#: src/fs/gnunet-service-fs_pr.c:855
 msgid "# duplicate replies discarded (bloomfilter)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:854
+#: src/fs/gnunet-service-fs_pr.c:864
+msgid "# irrelevant replies discarded"
+msgstr ""
+
+#: src/fs/gnunet-service-fs_pr.c:878
 #, c-format
 msgid "Unsupported block type %u\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:867
+#: src/fs/gnunet-service-fs_pr.c:891
 msgid "# results found locally"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:988
+#: src/fs/gnunet-service-fs_pr.c:1012
 msgid "# Datastore `PUT' failures"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1015
+#: src/fs/gnunet-service-fs_pr.c:1039
 #, fuzzy
 msgid "# storage requests dropped due to high load"
 msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
 
-#: src/fs/gnunet-service-fs_pr.c:1050
+#: src/fs/gnunet-service-fs_pr.c:1074
 #, fuzzy
 msgid "# Replies received from DHT"
 msgstr "# byte mottagna via HTTP"
 
-#: src/fs/gnunet-service-fs_pr.c:1145
+#: src/fs/gnunet-service-fs_pr.c:1203
+#, fuzzy
+msgid "# Replies received from STREAM"
+msgstr "# byte mottagna via HTTP"
+
+#: src/fs/gnunet-service-fs_pr.c:1255
 #, c-format
 msgid "Datastore lookup already took %s!\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1165
+#: src/fs/gnunet-service-fs_pr.c:1275
 #, c-format
 msgid "On-demand lookup already took %s!\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1212
+#: src/fs/gnunet-service-fs_pr.c:1322
 msgid "# Datastore lookups concluded (no results)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1227
+#: src/fs/gnunet-service-fs_pr.c:1337
 msgid "# Datastore lookups concluded (seen all)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1236
+#: src/fs/gnunet-service-fs_pr.c:1346
 msgid "# Datastore lookups aborted (more than MAX_RESULTS)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1251
+#: src/fs/gnunet-service-fs_pr.c:1361
 msgid "# requested DBLOCK or IBLOCK not found"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1265
+#: src/fs/gnunet-service-fs_pr.c:1375
 msgid "# on-demand blocks matched requests"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1278
+#: src/fs/gnunet-service-fs_pr.c:1388
 msgid "# on-demand lookups performed successfully"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1283
+#: src/fs/gnunet-service-fs_pr.c:1393
 msgid "# on-demand lookups failed"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1310 src/fs/gnunet-service-fs_pr.c:1350
-#: src/fs/gnunet-service-fs_pr.c:1490
+#: src/fs/gnunet-service-fs_pr.c:1420 src/fs/gnunet-service-fs_pr.c:1460
+#: src/fs/gnunet-service-fs_pr.c:1601
 msgid "# Datastore lookups concluded (error queueing)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1368
+#: src/fs/gnunet-service-fs_pr.c:1478
 msgid "# Datastore lookups concluded (found last result)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1379
+#: src/fs/gnunet-service-fs_pr.c:1489
 msgid "# Datastore lookups concluded (load too high)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1466
+#: src/fs/gnunet-service-fs_pr.c:1577
 msgid "# Datastore lookups initiated"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1551
+#: src/fs/gnunet-service-fs_pr.c:1662
 #, fuzzy
 msgid "# GAP PUT messages received"
 msgstr "# krypterade PONG-meddelanden mottagna"
@@ -2910,10 +2957,6 @@
 msgid "Unindex a file that was previously indexed with gnunet-publish."
 msgstr ""
 
-#: src/fs/plugin_block_fs.c:130
-msgid "Reply mismatched in terms of namespace.  Discarded.\n"
-msgstr ""
-
 #: src/gns/gns_api.c:598
 #, fuzzy
 msgid "Failed to serialize lookup reply from GNS service!\n"
@@ -3124,6 +3167,41 @@
 msgid "Error writing HELLO to file `%s': %s\n"
 msgstr "Fel vid skapandet av användare"
 
+#: src/hello/hello.c:905
+#, fuzzy
+msgid "Failed to parse HELLO message: missing expiration time\n"
+msgstr "Kunde inte spara konfiguration!"
+
+#: src/hello/hello.c:914
+#, fuzzy
+msgid "Failed to parse HELLO message: invalid expiration time\n"
+msgstr "Kunde inte spara konfiguration!"
+
+#: src/hello/hello.c:924
+#, fuzzy
+msgid "Failed to parse HELLO message: malformed\n"
+msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
+
+#: src/hello/hello.c:934
+#, fuzzy
+msgid "Failed to parse HELLO message: missing transport plugin\n"
+msgstr "Kunde inte slå upp \"%s\": %s\n"
+
+#: src/hello/hello.c:951
+#, c-format
+msgid "Plugin `%s' not found\n"
+msgstr ""
+
+#: src/hello/hello.c:960
+#, c-format
+msgid "Plugin `%s' does not support URIs yet\n"
+msgstr ""
+
+#: src/hello/hello.c:979
+#, fuzzy, c-format
+msgid "Failed to parse `%s' as an address for plugin `%s'\n"
+msgstr "Misslyckades att binda till UDP-port %d.\n"
+
 #: src/hostlist/gnunet-daemon-hostlist.c:264
 msgid ""
 "None of the functions for the hostlist daemon were enabled.  I have no "
@@ -3317,8 +3395,8 @@
 msgstr ""
 
 #: src/hostlist/hostlist-server.c:184 src/hostlist/hostlist-server.c:425
-#: src/peerinfo-tool/gnunet-peerinfo.c:403
-#: src/peerinfo-tool/gnunet-peerinfo.c:519
+#: src/peerinfo-tool/gnunet-peerinfo.c:331
+#: src/peerinfo-tool/gnunet-peerinfo.c:386
 #: src/topology/gnunet-daemon-topology.c:922
 #, fuzzy, c-format
 msgid "Error in communication with PEERINFO service: %s\n"
@@ -3422,16 +3500,17 @@
 #: src/mesh/gnunet-daemon-regexprofiler.c:209
 #: src/mesh/gnunet-daemon-regexprofiler.c:222
 #: src/mesh/gnunet-daemon-regexprofiler.c:235
-#: src/mesh/gnunet-service-mesh.c:8376 src/mesh/gnunet-service-mesh.c:8388
-#: src/mesh/gnunet-service-mesh.c:8400 src/mesh/gnunet-service-mesh.c:8414
-#: src/mesh/gnunet-service-mesh.c:8426 src/mesh/gnunet-service-mesh.c:8438
-#: src/mesh/gnunet-service-mesh.c:8450 src/mesh/gnunet-service-mesh-new.c:8292
+#: src/mesh/gnunet-service-mesh.c:8692 src/mesh/gnunet-service-mesh.c:8704
+#: src/mesh/gnunet-service-mesh.c:8716 src/mesh/gnunet-service-mesh.c:8730
+#: src/mesh/gnunet-service-mesh.c:8742 src/mesh/gnunet-service-mesh.c:8754
+#: src/mesh/gnunet-service-mesh.c:8766 src/mesh/gnunet-service-mesh-new.c:8292
 #: src/mesh/gnunet-service-mesh-new.c:8304
 #: src/mesh/gnunet-service-mesh-new.c:8316
 #: src/mesh/gnunet-service-mesh-new.c:8329
 #: src/mesh/gnunet-service-mesh-new.c:8344
 #: src/mesh/gnunet-service-mesh-new.c:8356
 #: src/mesh/gnunet-service-mesh-new.c:8368
+#: src/regex/gnunet-regex-simulation-profiler.c:659
 #, fuzzy, c-format
 msgid "%s service is lacking key configuration settings (%s).  Exiting.\n"
 msgstr "GNUnet-konfiguration"
@@ -3440,12 +3519,24 @@
 msgid "Daemon to announce regular expressions for the peer using mesh."
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1146
+#: src/mesh/gnunet-mesh.c:162
+#, fuzzy
+msgid ""
+"provide inthe 'struct GNUNET_TRANSPORT_PeerIterateContextformation about all "
+"tunnels (continuously)"
+msgstr "Skriv ut information om GNUnets motparter."
+
+#: src/mesh/gnunet-mesh.c:173
+#, fuzzy
+msgid "Print information about mesh tunnels and peers."
+msgstr "Skriv ut information om GNUnets motparter."
+
+#: src/mesh/gnunet-regex-profiler.c:1147
 #: src/testbed/gnunet-testbed-profiler.c:320
 msgid "An operation has failed while starting peers\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1192
+#: src/mesh/gnunet-regex-profiler.c:1193
 #: src/testbed/gnunet-testbed-profiler.c:389
 #, fuzzy, c-format
 msgid "Creating a peer failed. Error: %s\n"
@@ -3453,55 +3544,56 @@
 "\n"
 "Fel vid uppladdning av fil: %s\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1319
+#: src/mesh/gnunet-regex-profiler.c:1320
 #: src/testbed/gnunet-testbed-profiler.c:494
 msgid "An operation has failed while starting slaves\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1341
+#: src/mesh/gnunet-regex-profiler.c:1342
 #, fuzzy, c-format
 msgid "No files found in `%s'\n"
 msgstr "%d filer hittades i katalog.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1396
+#: src/mesh/gnunet-regex-profiler.c:1397
 msgid "An operation has failed while linking\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1507
+#: src/mesh/gnunet-regex-profiler.c:1508
 #: src/testbed/gnunet-testbed-profiler.c:598
 #, c-format
 msgid "Host registration failed for a host. Error: %s\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1587
+#: src/mesh/gnunet-regex-profiler.c:1588
 #: src/testbed/gnunet-testbed-profiler.c:677
 msgid "Unable to connect to master controller -- Check config\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1686
+#: src/mesh/gnunet-regex-profiler.c:1687
 #, c-format
 msgid "No hosts-file specified on command line. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1691
-#: src/regex/gnunet-regex-simulation-profiler.c:498
+#: src/mesh/gnunet-regex-profiler.c:1692
+#: src/regex/gnunet-regex-simulation-profiler.c:622
 #, c-format
 msgid "No policy directory specified on command line. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1697
+#: src/mesh/gnunet-regex-profiler.c:1698
 #: src/testbed/gnunet-testbed-profiler.c:717
 #, c-format
 msgid "No hosts loaded. Need at least one host\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1704
+#: src/mesh/gnunet-regex-profiler.c:1705
 #: src/testbed/gnunet-testbed-profiler.c:724
+#: src/testbed/testbed_api_testbed.c:759
 #, c-format
 msgid "Host %s cannot start testbed\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1711
+#: src/mesh/gnunet-regex-profiler.c:1712
 #: src/testbed/gnunet-testbed-profiler.c:731
 #, fuzzy, c-format
 msgid "Exiting\n"
@@ -3509,84 +3601,84 @@
 "\n"
 "Avslutar.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1717
+#: src/mesh/gnunet-regex-profiler.c:1718
 #, fuzzy, c-format
 msgid "No configuration file given. Exiting\n"
 msgstr "använd konfigurationsfil FILNAMN"
 
-#: src/mesh/gnunet-regex-profiler.c:1726
+#: src/mesh/gnunet-regex-profiler.c:1727
 #, fuzzy, c-format
 msgid "Configuration option (regex_prefix) missing. Exiting\n"
 msgstr "Konfigurationsfil \"%s\" skapad.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1744
-#: src/regex/gnunet-regex-simulation-profiler.c:504
+#: src/mesh/gnunet-regex-profiler.c:1745
+#: src/regex/gnunet-regex-simulation-profiler.c:629
 #, c-format
 msgid "Specified policies directory does not exist. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1751
+#: src/mesh/gnunet-regex-profiler.c:1752
 #, c-format
 msgid "No search strings file given. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1759
+#: src/mesh/gnunet-regex-profiler.c:1760
 #, c-format
 msgid ""
 "Error loading search strings. Given file does not contain enough strings. "
 "Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1765
+#: src/mesh/gnunet-regex-profiler.c:1766
 #, fuzzy, c-format
 msgid "Error loading search strings. Exiting.\n"
 msgstr "Fel vid lämning av DHT.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1799
+#: src/mesh/gnunet-regex-profiler.c:1800
 #, fuzzy
 msgid "name of the file for writing statistics"
 msgstr "Visa värde av alternativet"
 
-#: src/mesh/gnunet-regex-profiler.c:1802
+#: src/mesh/gnunet-regex-profiler.c:1803
 msgid "create COUNT number of random links between peers"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1805
+#: src/mesh/gnunet-regex-profiler.c:1806
 msgid "wait TIMEOUT before considering a string match as failed"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1808
+#: src/mesh/gnunet-regex-profiler.c:1809
 msgid "wait DELAY before starting string search"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1811
+#: src/mesh/gnunet-regex-profiler.c:1812
 msgid "number of search strings to read from search strings file"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1814
-#: src/regex/gnunet-regex-simulation-profiler.c:555
+#: src/mesh/gnunet-regex-profiler.c:1815
+#: src/regex/gnunet-regex-simulation-profiler.c:692
 msgid "maximum path compression length"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1817
+#: src/mesh/gnunet-regex-profiler.c:1818
 msgid ""
 "if this option is set, only one peer is responsible for searching all strings"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1829
+#: src/mesh/gnunet-regex-profiler.c:1830
 msgid "Profiler for regex/mesh"
 msgstr ""
 
-#: src/mesh/gnunet-service-mesh.c:8082 src/mesh/gnunet-service-mesh-new.c:7998
+#: src/mesh/gnunet-service-mesh.c:8398 src/mesh/gnunet-service-mesh-new.c:7998
 msgid "Wrong CORE service\n"
 msgstr ""
 
-#: src/mesh/gnunet-service-mesh.c:8287 src/mesh/gnunet-service-mesh-new.c:8203
+#: src/mesh/gnunet-service-mesh.c:8603 src/mesh/gnunet-service-mesh-new.c:8203
 #, fuzzy
 msgid "Mesh service could not access hostkey.  Exiting.\n"
 msgstr "Kunde inte komma åt namnrymdsinformation.\n"
 
-#: src/mesh/gnunet-service-mesh.c:8462 src/mesh/gnunet-service-mesh.c:8473
+#: src/mesh/gnunet-service-mesh.c:8778 src/mesh/gnunet-service-mesh.c:8789
 #: src/mesh/gnunet-service-mesh-new.c:8380
 #: src/mesh/gnunet-service-mesh-new.c:8391
 #, fuzzy, c-format
@@ -3684,7 +3776,7 @@
 msgstr ""
 
 #: src/namestore/gnunet-namestore.c:569
-#: src/peerinfo-tool/gnunet-peerinfo.c:882
+#: src/peerinfo-tool/gnunet-peerinfo.c:598
 #, fuzzy, c-format
 msgid "Invalid URI `%s'\n"
 msgstr "Ogiltiga argument: "
@@ -3744,36 +3836,36 @@
 msgid "GNUnet zone manipulation tool"
 msgstr "GNUnet-konfiguration"
 
-#: src/namestore/gnunet-service-namestore.c:242
-#: src/namestore/gnunet-service-namestore.c:258
+#: src/namestore/gnunet-service-namestore.c:241
+#: src/namestore/gnunet-service-namestore.c:257
 #, fuzzy, c-format
 msgid "Failed to write zone key to file `%s': %s\n"
 msgstr "Misslyckades att leverera \"%s\" meddelande.\n"
 
-#: src/namestore/gnunet-service-namestore.c:244
+#: src/namestore/gnunet-service-namestore.c:243
 msgid "file exists but reading key failed"
 msgstr ""
 
-#: src/namestore/gnunet-service-namestore.c:260
+#: src/namestore/gnunet-service-namestore.c:259
 msgid "file exists with different key"
 msgstr ""
 
-#: src/namestore/gnunet-service-namestore.c:1519
+#: src/namestore/gnunet-service-namestore.c:1557
 #, fuzzy
 msgid "Failed to find record to remove\n"
 msgstr "Kunde inte ansluta till gnunetd.\n"
 
-#: src/namestore/gnunet-service-namestore.c:2133
+#: src/namestore/gnunet-service-namestore.c:2172
 #, fuzzy, c-format
 msgid "Could not parse zone key file `%s'\n"
 msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
 
-#: src/namestore/gnunet-service-namestore.c:2223
+#: src/namestore/gnunet-service-namestore.c:2262
 #, fuzzy
 msgid "No directory to load zonefiles specified in configuration\n"
 msgstr "Inga applikationer definierade i konfiguration!\n"
 
-#: src/namestore/gnunet-service-namestore.c:2233
+#: src/namestore/gnunet-service-namestore.c:2272
 #, c-format
 msgid "Creating directory `%s' for zone files failed!\n"
 msgstr ""
@@ -3815,42 +3907,42 @@
 msgid "Protocol error"
 msgstr ""
 
-#: src/namestore/namestore_common.c:494 src/namestore/namestore_common.c:634
+#: src/namestore/namestore_common.c:509 src/namestore/namestore_common.c:649
 #, fuzzy, c-format
 msgid "Unsupported record type %d\n"
 msgstr "Kommando \"%s\" stöds ej.  Avbryter.\n"
 
-#: src/namestore/namestore_common.c:501
+#: src/namestore/namestore_common.c:516
 #, fuzzy, c-format
 msgid "Unable to parse IPv4 address `%s'\n"
 msgstr "Ogiltigt svar på \"%s\".\n"
 
-#: src/namestore/namestore_common.c:524
+#: src/namestore/namestore_common.c:539
 #, fuzzy, c-format
 msgid "Unable to parse SOA record `%s'\n"
 msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
 
-#: src/namestore/namestore_common.c:547
+#: src/namestore/namestore_common.c:562
 #, fuzzy, c-format
 msgid "Unable to parse MX record `%s'\n"
 msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
 
-#: src/namestore/namestore_common.c:565
+#: src/namestore/namestore_common.c:580
 #, fuzzy, c-format
 msgid "Unable to parse IPv6 address `%s'\n"
 msgstr "Ogiltigt svar på \"%s\".\n"
 
-#: src/namestore/namestore_common.c:578
+#: src/namestore/namestore_common.c:593
 #, fuzzy, c-format
 msgid "Unable to parse PKEY record `%s'\n"
 msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
 
-#: src/namestore/namestore_common.c:599
+#: src/namestore/namestore_common.c:614
 #, fuzzy, c-format
 msgid "Unable to parse VPN record string `%s'\n"
 msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
 
-#: src/namestore/namestore_common.c:625
+#: src/namestore/namestore_common.c:640
 #, fuzzy, c-format
 msgid "Unable to parse TLSA record string `%s'\n"
 msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
@@ -4040,86 +4132,51 @@
 msgid "Could not connect to `%s' service.\n"
 msgstr "Kunde inte ansluta till gnunetd.\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:581
-#, fuzzy
-msgid "Failed to parse HELLO message: missing expiration time\n"
-msgstr "Kunde inte spara konfiguration!"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:589
-#, fuzzy
-msgid "Failed to parse HELLO message: invalid expiration time\n"
-msgstr "Kunde inte spara konfiguration!"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:598
-#, fuzzy
-msgid "Failed to parse HELLO message: malformed\n"
-msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:608
-#, fuzzy
-msgid "Failed to parse HELLO message: missing transport plugin\n"
-msgstr "Kunde inte slå upp \"%s\": %s\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:625
+#: src/peerinfo-tool/gnunet-peerinfo.c:419
 #, c-format
-msgid "Plugin `%s' not found\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:634
-#, c-format
-msgid "Plugin `%s' does not support URIs yet\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:653
-#, fuzzy, c-format
-msgid "Failed to parse `%s' as an address for plugin `%s'\n"
-msgstr "Misslyckades att binda till UDP-port %d.\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:685
-#, c-format
 msgid "Failure adding HELLO: %s\n"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:841
+#: src/peerinfo-tool/gnunet-peerinfo.c:557
 #, fuzzy, c-format
 msgid "Could not find option `%s:%s' in configuration.\n"
 msgstr "Kunde inte hitta motpart \"%s\" i routingtabell!\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:847
+#: src/peerinfo-tool/gnunet-peerinfo.c:563
 #, fuzzy, c-format
 msgid "Loading hostkey from `%s' failed.\n"
 msgstr "Tolkning av HTTP-svar för URL \"%s\" misslyckades.\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:906
+#: src/peerinfo-tool/gnunet-peerinfo.c:622
 #, c-format
 msgid "I am peer `%s'.\n"
 msgstr "Jag är ändpunkt \"%s\".\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:943
+#: src/peerinfo-tool/gnunet-peerinfo.c:648
 msgid "don't resolve host names"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:946
+#: src/peerinfo-tool/gnunet-peerinfo.c:651
 msgid "output only the identity strings"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:949
+#: src/peerinfo-tool/gnunet-peerinfo.c:654
 msgid "output our own identity only"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:952
+#: src/peerinfo-tool/gnunet-peerinfo.c:657
 msgid "list all known peers"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:955
+#: src/peerinfo-tool/gnunet-peerinfo.c:660
 msgid "also output HELLO uri(s)"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:958
+#: src/peerinfo-tool/gnunet-peerinfo.c:663
 msgid "add given HELLO uri to the database"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:969
+#: src/peerinfo-tool/gnunet-peerinfo.c:674
 #, fuzzy
 msgid "Print information about peers."
 msgstr "Skriv ut information om GNUnets motparter."
@@ -4218,12 +4275,12 @@
 msgid "Daemon to run to perform IP protocol translation to GNUnet"
 msgstr ""
 
-#: src/regex/gnunet-regex-simulation-profiler.c:552
+#: src/regex/gnunet-regex-simulation-profiler.c:689
 #, fuzzy
 msgid "name of the table to write DFAs"
 msgstr "Visa värde av alternativet"
 
-#: src/regex/gnunet-regex-simulation-profiler.c:567
+#: src/regex/gnunet-regex-simulation-profiler.c:705
 msgid "Profiler for regex library"
 msgstr ""
 
@@ -4237,65 +4294,78 @@
 msgid "Wrote %llu bytes of statistics to `%s'\n"
 msgstr "Ladda ner filer från GNUnet."
 
-#: src/statistics/gnunet-statistics.c:132
+#: src/statistics/gnunet-statistics.c:141
 #, fuzzy
 msgid "Failed to obtain statistics.\n"
 msgstr "Misslyckades att binda till UDP-port %d.\n"
 
-#: src/statistics/gnunet-statistics.c:134
+#: src/statistics/gnunet-statistics.c:143
 #, fuzzy, c-format
 msgid "Failed to obtain statistics from host `%s:%llu'\n"
 msgstr "Misslyckades att binda till UDP-port %d.\n"
 
-#: src/statistics/gnunet-statistics.c:183
+#: src/statistics/gnunet-statistics.c:181
 #, fuzzy, c-format
+msgid "Trying to connect to remote host, but service `%s' is not running\n"
+msgstr "Kunde inte ansluta till gnunetd.\n"
+
+#: src/statistics/gnunet-statistics.c:190
+#, fuzzy, c-format
 msgid "A port is required to connect to host `%s'\n"
 msgstr "Kan inte ansluta till %u.%u.%u.%u:%u: %s\n"
 
-#: src/statistics/gnunet-statistics.c:189
+#: src/statistics/gnunet-statistics.c:196
 #, c-format
 msgid "A port has to be between 1 and 65535 to connect to host `%s'\n"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:235
+#: src/statistics/gnunet-statistics.c:210
+msgid "Missing argument: subsystem \n"
+msgstr ""
+
+#: src/statistics/gnunet-statistics.c:216
+msgid "Missing argument: name\n"
+msgstr ""
+
+#: src/statistics/gnunet-statistics.c:247
 #, c-format
 msgid "No subsystem or name given\n"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:243
+#: src/statistics/gnunet-statistics.c:255
 #, fuzzy, c-format
 msgid "Failed to initialize watch routine\n"
 msgstr "Misslyckades att initiera tjänsten \"%s\".\n"
 
-#: src/statistics/gnunet-statistics.c:265
+#: src/statistics/gnunet-statistics.c:310
 msgid "limit output to statistics for the given NAME"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:268
+#: src/statistics/gnunet-statistics.c:313
 msgid "make the value being set persistent"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:271
+#: src/statistics/gnunet-statistics.c:316
 msgid "limit output to the given SUBSYSTEM"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:274
+#: src/statistics/gnunet-statistics.c:319
 msgid "just print the statistics value"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:277
+#: src/statistics/gnunet-statistics.c:322
 msgid "watch value continuously"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:280
+#: src/statistics/gnunet-statistics.c:325
 msgid "connect to remote host"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:283
+#: src/statistics/gnunet-statistics.c:328
 msgid "port for remote host"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:295
+#: src/statistics/gnunet-statistics.c:340
 msgid "Print statistics about GNUnet operations."
 msgstr "Skriv ut statistik om GNUnet-operationer."
 
@@ -4362,10 +4432,47 @@
 msgid "Hosts file %s cannot be read\n"
 msgstr ""
 
-#: src/testbed/testbed_api_testbed.c:295
+#: src/testbed/testbed_api_testbed.c:320
 msgid "Some operations are still pending. Cancelling them\n"
 msgstr ""
 
+#: src/testbed/testbed_api_topology.c:580
+#, fuzzy, c-format
+msgid "Topology file %s not found\n"
+msgstr "\"%s\" misslyckades: tabell hittades inte!\n"
+
+#: src/testbed/testbed_api_topology.c:586
+#, c-format
+msgid "Topology file %s has no data\n"
+msgstr ""
+
+#: src/testbed/testbed_api_topology.c:592
+#, c-format
+msgid "Topology file %s cannot be read\n"
+msgstr ""
+
+#: src/testbed/testbed_api_topology.c:614
+#, fuzzy, c-format
+msgid "Failed to read peer index from toology file: %s"
+msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
+
+#: src/testbed/testbed_api_topology.c:623
+#: src/testbed/testbed_api_topology.c:648
+#, c-format
+msgid "Value in given topology file: %s out of range\n"
+msgstr ""
+
+#: src/testbed/testbed_api_topology.c:629
+#: src/testbed/testbed_api_topology.c:654
+#, fuzzy, c-format
+msgid "Failed to read peer index from topology file: %s"
+msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
+
+#: src/testbed/testbed_api_topology.c:635
+#: src/testbed/testbed_api_topology.c:660
+msgid "Topology file need more peers than the given ones\n"
+msgstr ""
+
 #: src/testing/gnunet-testing.c:131
 #, fuzzy, c-format
 msgid "Could not extract hostkey %u (offset too large?)\n"
@@ -4410,59 +4517,59 @@
 msgid "name of the service to run"
 msgstr ""
 
-#: src/testing/testing.c:198
+#: src/testing/testing.c:199
 #, c-format
 msgid "Hostkeys file not found: %s\n"
 msgstr ""
 
-#: src/testing/testing.c:214
+#: src/testing/testing.c:215
 #, c-format
 msgid "Incorrect hostkey file format: %s\n"
 msgstr ""
 
-#: src/testing/testing.c:525
+#: src/testing/testing.c:526
 #, fuzzy, c-format
 msgid "Key number %u does not exist\n"
 msgstr "antal meddelanden att använda per iteration"
 
-#: src/testing/testing.c:535
+#: src/testing/testing.c:536
 #, fuzzy, c-format
 msgid "Error while decoding key %u\n"
 msgstr "Fel vid nedladdning: %s\n"
 
-#: src/testing/testing.c:848
+#: src/testing/testing.c:850
 #, fuzzy
 msgid "Failed to create configuration for peer (not enough free ports?)\n"
 msgstr "Kunde inte komma åt namnrymdsinformation.\n"
 
-#: src/testing/testing.c:859
+#: src/testing/testing.c:861
 #, c-format
 msgid ""
 "You attempted to create a testbed with more than %u hosts.  Please "
 "precompute more hostkeys first.\n"
 msgstr ""
 
-#: src/testing/testing.c:873
+#: src/testing/testing.c:875
 #, fuzzy, c-format
 msgid "Failed to initialize hostkey for peer %u\n"
 msgstr "Misslyckades att initiera tjänsten \"%s\".\n"
 
-#: src/testing/testing.c:906
+#: src/testing/testing.c:908
 #, fuzzy, c-format
 msgid "Failed to write hostkey file for peer %u: %s\n"
 msgstr "Kunde inte skapa användarkonto:"
 
-#: src/testing/testing.c:924
+#: src/testing/testing.c:926
 #, fuzzy, c-format
 msgid "Failed to write configuration file `%s' for peer %u: %s\n"
 msgstr "Kunde inte spara konfigurationsfil \"%s\":"
 
-#: src/testing/testing.c:985
+#: src/testing/testing.c:997
 #, fuzzy, c-format
 msgid "Failed to start `%s': %s\n"
 msgstr "Fel vid %s:%d.\n"
 
-#: src/testing/testing.c:1149
+#: src/testing/testing.c:1202
 #, fuzzy, c-format
 msgid "Failed to load configuration from %s\n"
 msgstr "Kunde inte spara konfigurationsfil \"%s\":"
@@ -4599,27 +4706,27 @@
 msgid "# disconnects due to blacklist"
 msgstr ""
 
-#: src/transport/gnunet-service-transport.c:177
+#: src/transport/gnunet-service-transport.c:182
 #, fuzzy
 msgid "# bytes payload discarded due to not connected peer "
 msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
 
-#: src/transport/gnunet-service-transport.c:252
+#: src/transport/gnunet-service-transport.c:257
 #, fuzzy
 msgid "# bytes total received"
 msgstr "# byte krypterade"
 
-#: src/transport/gnunet-service-transport.c:299
+#: src/transport/gnunet-service-transport.c:304
 #, fuzzy
 msgid "# bytes payload received"
 msgstr "# byte dekrypterade"
 
-#: src/transport/gnunet-service-transport.c:604
+#: src/transport/gnunet-service-transport.c:609
 #, fuzzy, c-format
 msgid "Transport service could not access hostkey: %s. Exiting.\n"
 msgstr "Kunde inte komma åt namnrymdsinformation.\n"
 
-#: src/transport/gnunet-service-transport.c:674
+#: src/transport/gnunet-service-transport.c:679
 msgid "Transport service is lacking key configuration settings.  Exiting.\n"
 msgstr ""
 
@@ -4646,7 +4753,7 @@
 msgid "# REQUEST CONNECT messages received"
 msgstr "# krypterade PONG-meddelanden mottagna"
 
-#: src/transport/gnunet-service-transport_hello.c:172
+#: src/transport/gnunet-service-transport_hello.c:175
 msgid "# refreshed my HELLO"
 msgstr ""
 
@@ -5271,14 +5378,14 @@
 msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2317
+#: src/transport/plugin_transport_udp.c:2345
 #, c-format
 msgid ""
 "UDP could not transmit message to `%s': Network seems down, please check "
 "your network configuration\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2331
+#: src/transport/plugin_transport_udp.c:2359
 #, c-format
 msgid ""
 "UDP could not transmit message to `%s': Please check your network "
@@ -5286,22 +5393,22 @@
 "IPv6 address\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2572
+#: src/transport/plugin_transport_udp.c:2600
 #, fuzzy
 msgid "Failed to open UDP sockets\n"
 msgstr "Misslyckades att binda till UDP6-port %d.\n"
 
-#: src/transport/plugin_transport_udp.c:2648
+#: src/transport/plugin_transport_udp.c:2676
 #, c-format
 msgid "Given `%s' option is out of range: %llu > %u\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2691
+#: src/transport/plugin_transport_udp.c:2719
 #, fuzzy, c-format
 msgid "Invalid IPv6 address: `%s'\n"
 msgstr "Ogiltigt svar på \"%s\".\n"
 
-#: src/transport/plugin_transport_unix.c:1333
+#: src/transport/plugin_transport_unix.c:1357
 #, fuzzy
 msgid "Failed to open UNIX sockets\n"
 msgstr "Misslyckades att leverera \"%s\" meddelande.\n"
@@ -5909,7 +6016,7 @@
 "variable.\n"
 msgstr ""
 
-#: src/util/os_installation.c:653
+#: src/util/os_installation.c:699
 #, fuzzy, c-format
 msgid "Could not find binary `%s' in PATH!\n"
 msgstr "Kunde inte hitta motpart \"%s\" i routingtabell!\n"
@@ -5997,22 +6104,22 @@
 msgstr ""
 
 # drive = hard drive ?
-#: src/util/server.c:431
+#: src/util/server.c:426
 #, fuzzy, c-format
 msgid "`%s' failed for port %d (%s).\n"
 msgstr "\"%s\" misslyckades för enhet %s: %u\n"
 
-#: src/util/server.c:440
+#: src/util/server.c:435
 #, fuzzy, c-format
 msgid "`%s' failed for port %d (%s): address already in use\n"
 msgstr "\"%s\" misslyckades för port %d: %s. Körs verkligen gnunetd?\n"
 
-#: src/util/server.c:451
+#: src/util/server.c:446
 #, fuzzy, c-format
 msgid "`%s' failed for `%.*s': address already in use\n"
 msgstr "\"%s\" misslyckades för port %d: %s. Körs verkligen gnunetd?\n"
 
-#: src/util/server.c:835
+#: src/util/server.c:830
 #, c-format
 msgid ""
 "Processing code for message of type %u did not call "
@@ -6849,10 +6956,6 @@
 #~ msgstr "Kunde inte spara konfigurationsfil \"%s\":"
 
 #, fuzzy
-#~ msgid "Peer `%s' plugin: `%s' address `%s'\n"
-#~ msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n"
-
-#, fuzzy
 #~ msgid "Failed to create IPv4 broadcast socket on port %d\n"
 #~ msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
 
@@ -7919,9 +8022,6 @@
 #~ msgid "size of `%s' message is wrong. Ignoring.\n"
 #~ msgstr "storlek på \"%s\" meddelande är fel. Ignorerar.\n"
 
-#~ msgid "received invalid `%s' message\n"
-#~ msgstr "mottog ogiltigt \"%s\" meddelande\n"
-
 #~ msgid "'..' is not allowed in file name (%s).\n"
 #~ msgstr "\"..\" tillåts inte i filnamn (%s).\n"
 

Modified: gnunet/po/vi.po
===================================================================
--- gnunet/po/vi.po     2012-11-28 16:14:35 UTC (rev 25153)
+++ gnunet/po/vi.po     2012-11-28 16:32:15 UTC (rev 25154)
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gnunet 0.8.0a\n"
 "Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2012-11-14 15:54+0100\n"
+"POT-Creation-Date: 2012-11-26 14:59+0100\n"
 "PO-Revision-Date: 2008-09-10 22:05+0930\n"
 "Last-Translator: Clytie Siddall <address@hidden>\n"
 "Language-Team: Vietnamese <address@hidden>\n"
@@ -240,66 +240,103 @@
 msgid "Initiating shutdown as requested by client.\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:75
-#, c-format
-msgid ""
-"Peer `%s' plugin `%s', address `%s', bandwidth out: %u Bytes/s, bandwidth in "
-"%u Bytes/s\n"
-msgstr ""
+#: src/ats/ats_api_performance.c:465
+#, fuzzy, c-format
+msgid "Received %s message\n"
+msgstr "Nhận yêu cầu định tuyến\n"
 
-#: src/ats-tool/gnunet-ats.c:137
+#: src/ats/ats_api_performance.c:508
+#, fuzzy, c-format
+msgid "Received last message for %s \n"
+msgstr "Nhận yêu cầu định tuyến\n"
+
+#: src/ats-tool/gnunet-ats.c:134
 #, c-format
 msgid "%u address resolutions had a timeout\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:139
+#: src/ats-tool/gnunet-ats.c:136
 #, c-format
 msgid "ATS returned results for %u addresses\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:153 src/namestore/gnunet-namestore.c:610
+#: src/ats-tool/gnunet-ats.c:190
+#, fuzzy, c-format
+msgid ""
+"Peer `%s' plugin `%s', address `%s', bw out: %u Bytes/s, bw in %u Bytes/s, "
+"%s\n"
+msgstr "Đồng đẳng « %s » có mức tin cậy %8u và địa chỉ « %s »\n"
+
+#: src/ats-tool/gnunet-ats.c:274 src/namestore/gnunet-namestore.c:610
 #: src/transport/gnunet-transport.c:744
 #, fuzzy, c-format
 msgid "Service `%s' is not running\n"
 msgstr "« %s » không phải là một tập tin.\n"
 
-#: src/ats-tool/gnunet-ats.c:162 src/transport/gnunet-transport.c:750
+#: src/ats-tool/gnunet-ats.c:284 src/transport/gnunet-transport.c:750
 #, fuzzy, c-format
 msgid "Failed to parse peer identity `%s'\n"
 msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
 
-#: src/ats-tool/gnunet-ats.c:167 src/ats-tool/gnunet-ats.c:182
-msgid "Type required\n"
+#: src/ats-tool/gnunet-ats.c:292
+#, c-format
+msgid "Please select one operation : %s or %s or %s or %s\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:189 src/ats-tool/gnunet-ats.c:199
+#: src/ats-tool/gnunet-ats.c:305 src/ats-tool/gnunet-ats.c:324
+#: src/ats-tool/gnunet-ats.c:341 src/ats-tool/gnunet-ats.c:366
 #, fuzzy, c-format
 msgid "Cannot connect to ATS service, exiting...\n"
 msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
 
-#: src/ats-tool/gnunet-ats.c:247
+#: src/ats-tool/gnunet-ats.c:314 src/ats-tool/gnunet-ats.c:331
+#, fuzzy, c-format
+msgid "Cannot issue request to ATS service, exiting...\n"
+msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
+
+#: src/ats-tool/gnunet-ats.c:359
+msgid "Type required\n"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:416
+msgid "get list of active addresses currently used"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:419
+msgid "get list of all active addresses"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:422
 #, fuzzy
 msgid "do not resolve IP addresses to hostnames"
 msgstr "không quyết định các tên máy"
 
-#: src/ats-tool/gnunet-ats.c:250
+#: src/ats-tool/gnunet-ats.c:425
 msgid "monitor mode"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:253
+#: src/ats-tool/gnunet-ats.c:428
 #, fuzzy
 msgid "set preference for the given peer"
 msgstr "In ra thông tin về các đồng đẳng GNUnet."
 
-#: src/ats-tool/gnunet-ats.c:256
+#: src/ats-tool/gnunet-ats.c:431
+msgid "peer id"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:434
 msgid "preference type to set: latency | bandwidth"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:259
+#: src/ats-tool/gnunet-ats.c:437
 msgid "preference value"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:268
+#: src/ats-tool/gnunet-ats.c:440
+msgid "verbose output (include ATS address properties)"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:449
 #, fuzzy
 msgid "Print information about ATS state"
 msgstr "In ra thông tin về các đồng đẳng GNUnet."
@@ -313,7 +350,7 @@
 msgid "Client was disconnected from core service, trying to reconnect.\n"
 msgstr ""
 
-#: src/core/gnunet-core.c:86 src/peerinfo-tool/gnunet-peerinfo.c:286
+#: src/core/gnunet-core.c:86 src/peerinfo-tool/gnunet-peerinfo.c:214
 #, fuzzy, c-format
 msgid "Peer `%s'\n"
 msgstr "Tôi là đồng đẳng « %s ».\n"
@@ -334,7 +371,8 @@
 msgid "Disconnected from"
 msgstr "« %.*s » được kết nối tới « %.*s ».\n"
 
-#: src/core/gnunet-core.c:174 src/peerinfo-tool/gnunet-peerinfo.c:825
+#: src/core/gnunet-core.c:174 src/mesh/gnunet-mesh.c:131
+#: src/peerinfo-tool/gnunet-peerinfo.c:541
 #, fuzzy, c-format
 msgid "Invalid command line argument `%s'\n"
 msgstr "Đối số không hợp lệ cho « %s ».\n"
@@ -365,7 +403,7 @@
 msgstr "Lưu cấu hình ngay bây giờ không?"
 
 #: src/core/gnunet-service-core.c:163
-#: src/transport/gnunet-service-transport.c:685
+#: src/transport/gnunet-service-transport.c:696
 #, fuzzy
 msgid "Transport service is unable to access hostkey. Exiting.\n"
 msgstr "Không thể truy cập đến thông tin về không gian tên.\n"
@@ -515,8 +553,8 @@
 msgstr "# các byte đã giải mã"
 
 #: src/core/gnunet-service-core_kx.c:1703 src/hostlist/hostlist-server.c:552
-#: src/peerinfo-tool/gnunet-peerinfo.c:831
-#: src/transport/gnunet-service-transport.c:627
+#: src/peerinfo-tool/gnunet-peerinfo.c:547
+#: src/transport/gnunet-service-transport.c:632
 #, fuzzy
 msgid "Could not access PEERINFO service.  Exiting.\n"
 msgstr "Không thể truy cập đến thông tin về không gian tên.\n"
@@ -542,8 +580,8 @@
 
 #: src/core/gnunet-service-core_sessions.c:206
 #: src/core/gnunet-service-core_sessions.c:269
-#: src/dht/gnunet-service-dht_neighbours.c:639
-#: src/dht/gnunet-service-dht_neighbours.c:697
+#: src/dht/gnunet-service-dht_neighbours.c:645
+#: src/dht/gnunet-service-dht_neighbours.c:703
 #: src/fs/gnunet-service-fs_cp.c:630 src/fs/gnunet-service-fs_cp.c:1544
 #: src/topology/gnunet-daemon-topology.c:704
 #: src/topology/gnunet-daemon-topology.c:805
@@ -636,17 +674,17 @@
 msgid "`%s' failed at %s:%d with error: %s\n"
 msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s\n"
 
-#: src/datacache/plugin_datacache_sqlite.c:448
+#: src/datacache/plugin_datacache_sqlite.c:450
 msgid "Sqlite datacache running\n"
 msgstr ""
 
-#: src/datacache/plugin_datacache_sqlite.c:482
+#: src/datacache/plugin_datacache_sqlite.c:484
 #: src/datastore/plugin_datastore_sqlite.c:401
 #: src/namestore/plugin_namestore_sqlite.c:362
 msgid "Tried to close sqlite without finalizing all prepared statements.\n"
 msgstr ""
 
-#: src/datacache/plugin_datacache_sqlite.c:489
+#: src/datacache/plugin_datacache_sqlite.c:491
 #, fuzzy, c-format
 msgid "Failed to close statement %p: %d\n"
 msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
@@ -1096,54 +1134,54 @@
 msgid "Issue a PUT request to the GNUnet DHT insert DATA under KEY."
 msgstr ""
 
-#: src/dht/gnunet-service-dht.c:163
+#: src/dht/gnunet-service-dht.c:172
 #, fuzzy
 msgid "Failed to connect to transport service!\n"
 msgstr "Lỗi kết nối đến gnunetd.\n"
 
-#: src/dht/gnunet-service-dht_clients.c:407
+#: src/dht/gnunet-service-dht_clients.c:413
 #, fuzzy
 msgid "# GET requests from clients injected"
 msgstr "# các yêu cầu get (lấy) dht được nhận"
 
-#: src/dht/gnunet-service-dht_clients.c:497
+#: src/dht/gnunet-service-dht_clients.c:503
 #, fuzzy
 msgid "# PUT requests received from clients"
 msgstr "# các đáp ứng lỗ hổng được gửi cho trình/máy khách"
 
-#: src/dht/gnunet-service-dht_clients.c:579
+#: src/dht/gnunet-service-dht_clients.c:585
 #, fuzzy
 msgid "# GET requests received from clients"
 msgstr "# các yêu cầu get (lấy) dht được nhận"
 
-#: src/dht/gnunet-service-dht_clients.c:775
+#: src/dht/gnunet-service-dht_clients.c:791
 #, fuzzy
 msgid "# GET STOP requests received from clients"
 msgstr "# các yêu cầu get (lấy) dht được nhận"
 
-#: src/dht/gnunet-service-dht_clients.c:1012
+#: src/dht/gnunet-service-dht_clients.c:1035
 msgid "# Key match, type mismatches in REPLY to CLIENT"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1025
+#: src/dht/gnunet-service-dht_clients.c:1048
 msgid "# Duplicate REPLIES to CLIENT request dropped"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1062
+#: src/dht/gnunet-service-dht_clients.c:1085
 #, c-format
 msgid "Unsupported block type (%u) in request!\n"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1085
+#: src/dht/gnunet-service-dht_clients.c:1108
 msgid "# RESULTS queued for clients"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1134
-#: src/dht/gnunet-service-dht_clients.c:1177
+#: src/dht/gnunet-service-dht_clients.c:1157
+#: src/dht/gnunet-service-dht_clients.c:1199
 msgid "# REPLIES ignored for CLIENTS (no match)"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1144
+#: src/dht/gnunet-service-dht_clients.c:1167
 msgid "Could not pass reply to client, message too big!\n"
 msgstr ""
 
@@ -1191,103 +1229,103 @@
 msgid "# HELLOs obtained from peerinfo"
 msgstr "Nhận được thông báo « %s » sai từ đồng đẳng « %s ».\n"
 
-#: src/dht/gnunet-service-dht_neighbours.c:495
+#: src/dht/gnunet-service-dht_neighbours.c:501
 msgid "# Preference updates given to core"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:585
+#: src/dht/gnunet-service-dht_neighbours.c:591
 #, fuzzy
 msgid "# FIND PEER messages initiated"
 msgstr "# các thông báo PING được tạo"
 
-#: src/dht/gnunet-service-dht_neighbours.c:731
+#: src/dht/gnunet-service-dht_neighbours.c:737
 #, fuzzy
 msgid "# Queued messages discarded (peer disconnected)"
 msgstr "# các thông báo được chắp liền"
 
-#: src/dht/gnunet-service-dht_neighbours.c:786
+#: src/dht/gnunet-service-dht_neighbours.c:792
 #, fuzzy
 msgid "# Bytes transmitted to other peers"
 msgstr "# các byte kiểu %d được gửi "
 
-#: src/dht/gnunet-service-dht_neighbours.c:824
+#: src/dht/gnunet-service-dht_neighbours.c:830
 #, fuzzy
 msgid "# Bytes of bandwidth requested from core"
 msgstr "# các yêu cầu máy/trình khách lỗ hổng được phun vào"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1046
-#: src/dht/gnunet-service-dht_neighbours.c:1074
+#: src/dht/gnunet-service-dht_neighbours.c:1052
+#: src/dht/gnunet-service-dht_neighbours.c:1080
 msgid "# Peers excluded from routing due to Bloomfilter"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1055
-#: src/dht/gnunet-service-dht_neighbours.c:1089
+#: src/dht/gnunet-service-dht_neighbours.c:1061
+#: src/dht/gnunet-service-dht_neighbours.c:1095
 #, fuzzy
 msgid "# Peer selection failed"
 msgstr "# các cuộc gọi HTTP select (lựa chọn)"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1223
+#: src/dht/gnunet-service-dht_neighbours.c:1229
 #, fuzzy
 msgid "# PUT requests routed"
 msgstr "# các yêu cầu dht được định tuyến"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1252
+#: src/dht/gnunet-service-dht_neighbours.c:1258
 #, fuzzy
 msgid "# PUT messages queued for transmission"
 msgstr "# các thông báo PING được tạo"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1259
-#: src/dht/gnunet-service-dht_neighbours.c:1372
-#: src/dht/gnunet-service-dht_neighbours.c:1472
+#: src/dht/gnunet-service-dht_neighbours.c:1265
+#: src/dht/gnunet-service-dht_neighbours.c:1378
+#: src/dht/gnunet-service-dht_neighbours.c:1478
 #, fuzzy
 msgid "# P2P messages dropped due to full queue"
 msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1337
+#: src/dht/gnunet-service-dht_neighbours.c:1343
 #, fuzzy
 msgid "# GET requests routed"
 msgstr "# các yêu cầu dht được định tuyến"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1364
+#: src/dht/gnunet-service-dht_neighbours.c:1370
 #, fuzzy
 msgid "# GET messages queued for transmission"
 msgstr "# các thông báo PING được tạo"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1479
+#: src/dht/gnunet-service-dht_neighbours.c:1485
 #, fuzzy
 msgid "# RESULT messages queued for transmission"
 msgstr "# các thông báo PING được tạo"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1567
+#: src/dht/gnunet-service-dht_neighbours.c:1573
 #, fuzzy
 msgid "# P2P PUT requests received"
 msgstr "# các yêu cầu get (lấy) dht được nhận"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1694
+#: src/dht/gnunet-service-dht_neighbours.c:1702
 #, fuzzy
 msgid "# FIND PEER requests ignored due to Bloomfilter"
 msgstr "# các yêu cầu được lọc theo bộ lọc bloom"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1702
+#: src/dht/gnunet-service-dht_neighbours.c:1710
 msgid "# FIND PEER requests ignored due to lack of HELLO"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1793
+#: src/dht/gnunet-service-dht_neighbours.c:1801
 #, fuzzy
 msgid "# P2P GET requests received"
 msgstr "# các yêu cầu get (lấy) dht được nhận"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1835
+#: src/dht/gnunet-service-dht_neighbours.c:1843
 #, fuzzy
 msgid "# P2P FIND PEER requests processed"
 msgstr "# các yêu cầu get (lấy) dht được nhận"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1849
+#: src/dht/gnunet-service-dht_neighbours.c:1857
 #, fuzzy
 msgid "# P2P GET requests ONLY routed"
 msgstr "# các yêu cầu dht được định tuyến"
 
-#: src/dht/gnunet-service-dht_neighbours.c:1934
+#: src/dht/gnunet-service-dht_neighbours.c:1944
 #, fuzzy
 msgid "# P2P RESULTS received"
 msgstr "# Tín hiệu HTTP PUT được nhận"
@@ -1325,7 +1363,7 @@
 msgid "# Entries added to routing table"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_routing.c:417
+#: src/dht/gnunet-service-dht_routing.c:418
 #, fuzzy
 msgid "# DHT requests combined"
 msgstr "# các yêu cầu get (lấy) dht được nhận"
@@ -2335,7 +2373,7 @@
 msgid "Special file-sharing operations"
 msgstr "Tùy chọn chia sẻ tập tin"
 
-#: src/fs/gnunet-pseudonym.c:160 src/statistics/gnunet-statistics.c:204
+#: src/fs/gnunet-pseudonym.c:160 src/statistics/gnunet-statistics.c:283
 #, fuzzy, c-format
 msgid "Invalid argument `%s'\n"
 msgstr "Đối số không hợp lệ cho « %s ».\n"
@@ -2614,16 +2652,16 @@
 msgid "Search GNUnet for files that were published on GNUnet"
 msgstr "Không hiển thị kết quả tìm kiếm cho tập tin được chúng ta tải lên"
 
-#: src/fs/gnunet-service-fs.c:245
+#: src/fs/gnunet-service-fs.c:248
 msgid "# running average P2P latency (ms)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs.c:306 src/fs/gnunet-service-fs.c:496
+#: src/fs/gnunet-service-fs.c:309 src/fs/gnunet-service-fs.c:523
 #, fuzzy
 msgid "# Loopback routes suppressed"
 msgstr "# tổng số định tuyến lỗ hổng thành công"
 
-#: src/fs/gnunet-service-fs.c:588 src/hostlist/gnunet-daemon-hostlist.c:297
+#: src/fs/gnunet-service-fs.c:628 src/hostlist/gnunet-daemon-hostlist.c:297
 #: src/topology/gnunet-daemon-topology.c:1321
 #: src/topology/gnunet-daemon-topology.c:1328
 #, fuzzy, c-format
@@ -2829,105 +2867,114 @@
 msgid "# query plan entries"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:293
+#: src/fs/gnunet-service-fs_pr.c:299
 #, fuzzy
 msgid "# Pending requests created"
 msgstr "# các yêu cầu get (lấy) dht được nhận"
 
-#: src/fs/gnunet-service-fs_pr.c:385 src/fs/gnunet-service-fs_pr.c:643
+#: src/fs/gnunet-service-fs_pr.c:391 src/fs/gnunet-service-fs_pr.c:654
 #, fuzzy
 msgid "# Pending requests active"
 msgstr "# các yêu cầu get (lấy) dht được nhận"
 
-#: src/fs/gnunet-service-fs_pr.c:806
+#: src/fs/gnunet-service-fs_pr.c:822
 #, fuzzy
 msgid "# replies received and matched"
 msgstr "# các byte kiểu %d được nhận"
 
-#: src/fs/gnunet-service-fs_pr.c:839
+#: src/fs/gnunet-service-fs_pr.c:855
 msgid "# duplicate replies discarded (bloomfilter)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:854
+#: src/fs/gnunet-service-fs_pr.c:864
+msgid "# irrelevant replies discarded"
+msgstr ""
+
+#: src/fs/gnunet-service-fs_pr.c:878
 #, c-format
 msgid "Unsupported block type %u\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:867
+#: src/fs/gnunet-service-fs_pr.c:891
 #, fuzzy
 msgid "# results found locally"
 msgstr "# nội dung lỗ hổng được tìm cục bộ"
 
-#: src/fs/gnunet-service-fs_pr.c:988
+#: src/fs/gnunet-service-fs_pr.c:1012
 msgid "# Datastore `PUT' failures"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1015
+#: src/fs/gnunet-service-fs_pr.c:1039
 #, fuzzy
 msgid "# storage requests dropped due to high load"
 msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
 
-#: src/fs/gnunet-service-fs_pr.c:1050
+#: src/fs/gnunet-service-fs_pr.c:1074
 #, fuzzy
 msgid "# Replies received from DHT"
 msgstr "# các byte đã nhận qua HTTP"
 
-#: src/fs/gnunet-service-fs_pr.c:1145
+#: src/fs/gnunet-service-fs_pr.c:1203
+#, fuzzy
+msgid "# Replies received from STREAM"
+msgstr "# các byte đã nhận qua HTTP"
+
+#: src/fs/gnunet-service-fs_pr.c:1255
 #, c-format
 msgid "Datastore lookup already took %s!\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1165
+#: src/fs/gnunet-service-fs_pr.c:1275
 #, c-format
 msgid "On-demand lookup already took %s!\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1212
+#: src/fs/gnunet-service-fs_pr.c:1322
 msgid "# Datastore lookups concluded (no results)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1227
+#: src/fs/gnunet-service-fs_pr.c:1337
 msgid "# Datastore lookups concluded (seen all)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1236
+#: src/fs/gnunet-service-fs_pr.c:1346
 msgid "# Datastore lookups aborted (more than MAX_RESULTS)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1251
+#: src/fs/gnunet-service-fs_pr.c:1361
 msgid "# requested DBLOCK or IBLOCK not found"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1265
+#: src/fs/gnunet-service-fs_pr.c:1375
 msgid "# on-demand blocks matched requests"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1278
+#: src/fs/gnunet-service-fs_pr.c:1388
 msgid "# on-demand lookups performed successfully"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1283
+#: src/fs/gnunet-service-fs_pr.c:1393
 msgid "# on-demand lookups failed"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1310 src/fs/gnunet-service-fs_pr.c:1350
-#: src/fs/gnunet-service-fs_pr.c:1490
+#: src/fs/gnunet-service-fs_pr.c:1420 src/fs/gnunet-service-fs_pr.c:1460
+#: src/fs/gnunet-service-fs_pr.c:1601
 msgid "# Datastore lookups concluded (error queueing)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1368
+#: src/fs/gnunet-service-fs_pr.c:1478
 msgid "# Datastore lookups concluded (found last result)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1379
+#: src/fs/gnunet-service-fs_pr.c:1489
 msgid "# Datastore lookups concluded (load too high)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1466
+#: src/fs/gnunet-service-fs_pr.c:1577
 msgid "# Datastore lookups initiated"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1551
+#: src/fs/gnunet-service-fs_pr.c:1662
 #, fuzzy
 msgid "# GAP PUT messages received"
 msgstr "# các thông báo PONG đã mật mã được nhận"
@@ -2967,10 +3014,6 @@
 msgid "Unindex a file that was previously indexed with gnunet-publish."
 msgstr ""
 
-#: src/fs/plugin_block_fs.c:130
-msgid "Reply mismatched in terms of namespace.  Discarded.\n"
-msgstr ""
-
 #: src/gns/gns_api.c:598
 #, fuzzy
 msgid "Failed to serialize lookup reply from GNS service!\n"
@@ -3183,6 +3226,41 @@
 msgid "Error writing HELLO to file `%s': %s\n"
 msgstr "Gặp lỗi khi tạo người dùng"
 
+#: src/hello/hello.c:905
+#, fuzzy
+msgid "Failed to parse HELLO message: missing expiration time\n"
+msgstr "Lỗi lưu cấu hình."
+
+#: src/hello/hello.c:914
+#, fuzzy
+msgid "Failed to parse HELLO message: invalid expiration time\n"
+msgstr "Lỗi lưu cấu hình."
+
+#: src/hello/hello.c:924
+#, fuzzy
+msgid "Failed to parse HELLO message: malformed\n"
+msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
+
+#: src/hello/hello.c:934
+#, fuzzy
+msgid "Failed to parse HELLO message: missing transport plugin\n"
+msgstr "Không thể nạp phần bổ sung truyền tải « %s »\n"
+
+#: src/hello/hello.c:951
+#, c-format
+msgid "Plugin `%s' not found\n"
+msgstr ""
+
+#: src/hello/hello.c:960
+#, c-format
+msgid "Plugin `%s' does not support URIs yet\n"
+msgstr ""
+
+#: src/hello/hello.c:979
+#, fuzzy, c-format
+msgid "Failed to parse `%s' as an address for plugin `%s'\n"
+msgstr "Lỗi đóng kết đến cổng %s %d.\n"
+
 #: src/hostlist/gnunet-daemon-hostlist.c:264
 msgid ""
 "None of the functions for the hostlist daemon were enabled.  I have no "
@@ -3382,8 +3460,8 @@
 msgstr ""
 
 #: src/hostlist/hostlist-server.c:184 src/hostlist/hostlist-server.c:425
-#: src/peerinfo-tool/gnunet-peerinfo.c:403
-#: src/peerinfo-tool/gnunet-peerinfo.c:519
+#: src/peerinfo-tool/gnunet-peerinfo.c:331
+#: src/peerinfo-tool/gnunet-peerinfo.c:386
 #: src/topology/gnunet-daemon-topology.c:922
 #, fuzzy, c-format
 msgid "Error in communication with PEERINFO service: %s\n"
@@ -3492,16 +3570,17 @@
 #: src/mesh/gnunet-daemon-regexprofiler.c:209
 #: src/mesh/gnunet-daemon-regexprofiler.c:222
 #: src/mesh/gnunet-daemon-regexprofiler.c:235
-#: src/mesh/gnunet-service-mesh.c:8376 src/mesh/gnunet-service-mesh.c:8388
-#: src/mesh/gnunet-service-mesh.c:8400 src/mesh/gnunet-service-mesh.c:8414
-#: src/mesh/gnunet-service-mesh.c:8426 src/mesh/gnunet-service-mesh.c:8438
-#: src/mesh/gnunet-service-mesh.c:8450 src/mesh/gnunet-service-mesh-new.c:8292
+#: src/mesh/gnunet-service-mesh.c:8692 src/mesh/gnunet-service-mesh.c:8704
+#: src/mesh/gnunet-service-mesh.c:8716 src/mesh/gnunet-service-mesh.c:8730
+#: src/mesh/gnunet-service-mesh.c:8742 src/mesh/gnunet-service-mesh.c:8754
+#: src/mesh/gnunet-service-mesh.c:8766 src/mesh/gnunet-service-mesh-new.c:8292
 #: src/mesh/gnunet-service-mesh-new.c:8304
 #: src/mesh/gnunet-service-mesh-new.c:8316
 #: src/mesh/gnunet-service-mesh-new.c:8329
 #: src/mesh/gnunet-service-mesh-new.c:8344
 #: src/mesh/gnunet-service-mesh-new.c:8356
 #: src/mesh/gnunet-service-mesh-new.c:8368
+#: src/regex/gnunet-regex-simulation-profiler.c:659
 #, fuzzy, c-format
 msgid "%s service is lacking key configuration settings (%s).  Exiting.\n"
 msgstr "Lưu cấu hình ngay bây giờ không?"
@@ -3510,149 +3589,162 @@
 msgid "Daemon to announce regular expressions for the peer using mesh."
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1146
+#: src/mesh/gnunet-mesh.c:162
+#, fuzzy
+msgid ""
+"provide inthe 'struct GNUNET_TRANSPORT_PeerIterateContextformation about all "
+"tunnels (continuously)"
+msgstr "In ra thông tin về các đồng đẳng GNUnet."
+
+#: src/mesh/gnunet-mesh.c:173
+#, fuzzy
+msgid "Print information about mesh tunnels and peers."
+msgstr "In ra thông tin về các đồng đẳng GNUnet."
+
+#: src/mesh/gnunet-regex-profiler.c:1147
 #: src/testbed/gnunet-testbed-profiler.c:320
 msgid "An operation has failed while starting peers\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1192
+#: src/mesh/gnunet-regex-profiler.c:1193
 #: src/testbed/gnunet-testbed-profiler.c:389
 #, fuzzy, c-format
 msgid "Creating a peer failed. Error: %s\n"
 msgstr "Gặp lỗi khi tải lên tập tin: %s\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1319
+#: src/mesh/gnunet-regex-profiler.c:1320
 #: src/testbed/gnunet-testbed-profiler.c:494
 msgid "An operation has failed while starting slaves\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1341
+#: src/mesh/gnunet-regex-profiler.c:1342
 #, fuzzy, c-format
 msgid "No files found in `%s'\n"
 msgstr "Vẫn còn không tìm thấy đồng đẳng trong « %s ».\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1396
+#: src/mesh/gnunet-regex-profiler.c:1397
 msgid "An operation has failed while linking\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1507
+#: src/mesh/gnunet-regex-profiler.c:1508
 #: src/testbed/gnunet-testbed-profiler.c:598
 #, c-format
 msgid "Host registration failed for a host. Error: %s\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1587
+#: src/mesh/gnunet-regex-profiler.c:1588
 #: src/testbed/gnunet-testbed-profiler.c:677
 msgid "Unable to connect to master controller -- Check config\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1686
+#: src/mesh/gnunet-regex-profiler.c:1687
 #, c-format
 msgid "No hosts-file specified on command line. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1691
-#: src/regex/gnunet-regex-simulation-profiler.c:498
+#: src/mesh/gnunet-regex-profiler.c:1692
+#: src/regex/gnunet-regex-simulation-profiler.c:622
 #, c-format
 msgid "No policy directory specified on command line. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1697
+#: src/mesh/gnunet-regex-profiler.c:1698
 #: src/testbed/gnunet-testbed-profiler.c:717
 #, c-format
 msgid "No hosts loaded. Need at least one host\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1704
+#: src/mesh/gnunet-regex-profiler.c:1705
 #: src/testbed/gnunet-testbed-profiler.c:724
+#: src/testbed/testbed_api_testbed.c:759
 #, c-format
 msgid "Host %s cannot start testbed\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1711
+#: src/mesh/gnunet-regex-profiler.c:1712
 #: src/testbed/gnunet-testbed-profiler.c:731
 #, fuzzy, c-format
 msgid "Exiting\n"
 msgstr "Thoát"
 
-#: src/mesh/gnunet-regex-profiler.c:1717
+#: src/mesh/gnunet-regex-profiler.c:1718
 #, fuzzy, c-format
 msgid "No configuration file given. Exiting\n"
 msgstr "dùng tập tin cấu hình TÊN_TẬP_TIN"
 
-#: src/mesh/gnunet-regex-profiler.c:1726
+#: src/mesh/gnunet-regex-profiler.c:1727
 #, fuzzy, c-format
 msgid "Configuration option (regex_prefix) missing. Exiting\n"
 msgstr "Giá trị cấu hình « %s » cho « %s » trong phần « %s » nên là con số\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1744
-#: src/regex/gnunet-regex-simulation-profiler.c:504
+#: src/mesh/gnunet-regex-profiler.c:1745
+#: src/regex/gnunet-regex-simulation-profiler.c:629
 #, c-format
 msgid "Specified policies directory does not exist. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1751
+#: src/mesh/gnunet-regex-profiler.c:1752
 #, c-format
 msgid "No search strings file given. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1759
+#: src/mesh/gnunet-regex-profiler.c:1760
 #, c-format
 msgid ""
 "Error loading search strings. Given file does not contain enough strings. "
 "Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1765
+#: src/mesh/gnunet-regex-profiler.c:1766
 #, fuzzy, c-format
 msgid "Error loading search strings. Exiting.\n"
 msgstr "Gặp lỗi khi tải xuống: %s\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1799
+#: src/mesh/gnunet-regex-profiler.c:1800
 #, fuzzy
 msgid "name of the file for writing statistics"
 msgstr "Lỗi lấy thông kê về truyền tải.\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1802
+#: src/mesh/gnunet-regex-profiler.c:1803
 msgid "create COUNT number of random links between peers"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1805
+#: src/mesh/gnunet-regex-profiler.c:1806
 msgid "wait TIMEOUT before considering a string match as failed"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1808
+#: src/mesh/gnunet-regex-profiler.c:1809
 msgid "wait DELAY before starting string search"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1811
+#: src/mesh/gnunet-regex-profiler.c:1812
 msgid "number of search strings to read from search strings file"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1814
-#: src/regex/gnunet-regex-simulation-profiler.c:555
+#: src/mesh/gnunet-regex-profiler.c:1815
+#: src/regex/gnunet-regex-simulation-profiler.c:692
 msgid "maximum path compression length"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1817
+#: src/mesh/gnunet-regex-profiler.c:1818
 msgid ""
 "if this option is set, only one peer is responsible for searching all strings"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1829
+#: src/mesh/gnunet-regex-profiler.c:1830
 msgid "Profiler for regex/mesh"
 msgstr ""
 
-#: src/mesh/gnunet-service-mesh.c:8082 src/mesh/gnunet-service-mesh-new.c:7998
+#: src/mesh/gnunet-service-mesh.c:8398 src/mesh/gnunet-service-mesh-new.c:7998
 msgid "Wrong CORE service\n"
 msgstr ""
 
-#: src/mesh/gnunet-service-mesh.c:8287 src/mesh/gnunet-service-mesh-new.c:8203
+#: src/mesh/gnunet-service-mesh.c:8603 src/mesh/gnunet-service-mesh-new.c:8203
 #, fuzzy
 msgid "Mesh service could not access hostkey.  Exiting.\n"
 msgstr "Không thể truy cập đến thông tin về không gian tên.\n"
 
-#: src/mesh/gnunet-service-mesh.c:8462 src/mesh/gnunet-service-mesh.c:8473
+#: src/mesh/gnunet-service-mesh.c:8778 src/mesh/gnunet-service-mesh.c:8789
 #: src/mesh/gnunet-service-mesh-new.c:8380
 #: src/mesh/gnunet-service-mesh-new.c:8391
 #, fuzzy, c-format
@@ -3746,7 +3838,7 @@
 msgstr ""
 
 #: src/namestore/gnunet-namestore.c:569
-#: src/peerinfo-tool/gnunet-peerinfo.c:882
+#: src/peerinfo-tool/gnunet-peerinfo.c:598
 #, fuzzy, c-format
 msgid "Invalid URI `%s'\n"
 msgstr "Dữ liệu nhập không hợp lệ.\n"
@@ -3807,36 +3899,36 @@
 msgid "GNUnet zone manipulation tool"
 msgstr "Cấu hình GNUnet"
 
-#: src/namestore/gnunet-service-namestore.c:242
-#: src/namestore/gnunet-service-namestore.c:258
+#: src/namestore/gnunet-service-namestore.c:241
+#: src/namestore/gnunet-service-namestore.c:257
 #, fuzzy, c-format
 msgid "Failed to write zone key to file `%s': %s\n"
 msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
 
-#: src/namestore/gnunet-service-namestore.c:244
+#: src/namestore/gnunet-service-namestore.c:243
 msgid "file exists but reading key failed"
 msgstr ""
 
-#: src/namestore/gnunet-service-namestore.c:260
+#: src/namestore/gnunet-service-namestore.c:259
 #, fuzzy
 msgid "file exists with different key"
 msgstr "tên tập tin"
 
-#: src/namestore/gnunet-service-namestore.c:1519
+#: src/namestore/gnunet-service-namestore.c:1557
 #, fuzzy
 msgid "Failed to find record to remove\n"
 msgstr "Không thể kết nối tới %s:%u: %s\n"
 
-#: src/namestore/gnunet-service-namestore.c:2133
+#: src/namestore/gnunet-service-namestore.c:2172
 #, fuzzy, c-format
 msgid "Could not parse zone key file `%s'\n"
 msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
 
-#: src/namestore/gnunet-service-namestore.c:2223
+#: src/namestore/gnunet-service-namestore.c:2262
 msgid "No directory to load zonefiles specified in configuration\n"
 msgstr ""
 
-#: src/namestore/gnunet-service-namestore.c:2233
+#: src/namestore/gnunet-service-namestore.c:2272
 #, c-format
 msgid "Creating directory `%s' for zone files failed!\n"
 msgstr ""
@@ -3882,42 +3974,42 @@
 msgid "Protocol error"
 msgstr ""
 
-#: src/namestore/namestore_common.c:494 src/namestore/namestore_common.c:634
+#: src/namestore/namestore_common.c:509 src/namestore/namestore_common.c:649
 #, fuzzy, c-format
 msgid "Unsupported record type %d\n"
 msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n"
 
-#: src/namestore/namestore_common.c:501
+#: src/namestore/namestore_common.c:516
 #, fuzzy, c-format
 msgid "Unable to parse IPv4 address `%s'\n"
 msgstr "Mức ưu tiên tiến trình không hợp lê « %s ».\n"
 
-#: src/namestore/namestore_common.c:524
+#: src/namestore/namestore_common.c:539
 #, fuzzy, c-format
 msgid "Unable to parse SOA record `%s'\n"
 msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
 
-#: src/namestore/namestore_common.c:547
+#: src/namestore/namestore_common.c:562
 #, fuzzy, c-format
 msgid "Unable to parse MX record `%s'\n"
 msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
 
-#: src/namestore/namestore_common.c:565
+#: src/namestore/namestore_common.c:580
 #, fuzzy, c-format
 msgid "Unable to parse IPv6 address `%s'\n"
 msgstr "Mức ưu tiên tiến trình không hợp lê « %s ».\n"
 
-#: src/namestore/namestore_common.c:578
+#: src/namestore/namestore_common.c:593
 #, fuzzy, c-format
 msgid "Unable to parse PKEY record `%s'\n"
 msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
 
-#: src/namestore/namestore_common.c:599
+#: src/namestore/namestore_common.c:614
 #, fuzzy, c-format
 msgid "Unable to parse VPN record string `%s'\n"
 msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
 
-#: src/namestore/namestore_common.c:625
+#: src/namestore/namestore_common.c:640
 #, fuzzy, c-format
 msgid "Unable to parse TLSA record string `%s'\n"
 msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
@@ -4112,87 +4204,52 @@
 msgid "Could not connect to `%s' service.\n"
 msgstr "Không thể kết nối tới %s:%u: %s\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:581
-#, fuzzy
-msgid "Failed to parse HELLO message: missing expiration time\n"
-msgstr "Lỗi lưu cấu hình."
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:589
-#, fuzzy
-msgid "Failed to parse HELLO message: invalid expiration time\n"
-msgstr "Lỗi lưu cấu hình."
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:598
-#, fuzzy
-msgid "Failed to parse HELLO message: malformed\n"
-msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:608
-#, fuzzy
-msgid "Failed to parse HELLO message: missing transport plugin\n"
-msgstr "Không thể nạp phần bổ sung truyền tải « %s »\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:625
+#: src/peerinfo-tool/gnunet-peerinfo.c:419
 #, c-format
-msgid "Plugin `%s' not found\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:634
-#, c-format
-msgid "Plugin `%s' does not support URIs yet\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:653
-#, fuzzy, c-format
-msgid "Failed to parse `%s' as an address for plugin `%s'\n"
-msgstr "Lỗi đóng kết đến cổng %s %d.\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:685
-#, c-format
 msgid "Failure adding HELLO: %s\n"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:841
+#: src/peerinfo-tool/gnunet-peerinfo.c:557
 #, fuzzy, c-format
 msgid "Could not find option `%s:%s' in configuration.\n"
 msgstr "Không tìm thấy phương pháp « %s%s » trong thư viện « %s ».\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:847
+#: src/peerinfo-tool/gnunet-peerinfo.c:563
 #, c-format
 msgid "Loading hostkey from `%s' failed.\n"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:906
+#: src/peerinfo-tool/gnunet-peerinfo.c:622
 #, c-format
 msgid "I am peer `%s'.\n"
 msgstr "Tôi là đồng đẳng « %s ».\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:943
+#: src/peerinfo-tool/gnunet-peerinfo.c:648
 msgid "don't resolve host names"
 msgstr "không quyết định các tên máy"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:946
+#: src/peerinfo-tool/gnunet-peerinfo.c:651
 msgid "output only the identity strings"
 msgstr "chỉ xuất những chuỗi nhận diện"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:949
+#: src/peerinfo-tool/gnunet-peerinfo.c:654
 msgid "output our own identity only"
 msgstr "chỉ xuất nhận diện mình"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:952
+#: src/peerinfo-tool/gnunet-peerinfo.c:657
 #, fuzzy
 msgid "list all known peers"
 msgstr "liệt kê mọi bộ tiếp hợp mạng"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:955
+#: src/peerinfo-tool/gnunet-peerinfo.c:660
 msgid "also output HELLO uri(s)"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:958
+#: src/peerinfo-tool/gnunet-peerinfo.c:663
 msgid "add given HELLO uri to the database"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:969
+#: src/peerinfo-tool/gnunet-peerinfo.c:674
 #, fuzzy
 msgid "Print information about peers."
 msgstr "In ra thông tin về các đồng đẳng GNUnet."
@@ -4291,11 +4348,11 @@
 msgid "Daemon to run to perform IP protocol translation to GNUnet"
 msgstr ""
 
-#: src/regex/gnunet-regex-simulation-profiler.c:552
+#: src/regex/gnunet-regex-simulation-profiler.c:689
 msgid "name of the table to write DFAs"
 msgstr ""
 
-#: src/regex/gnunet-regex-simulation-profiler.c:567
+#: src/regex/gnunet-regex-simulation-profiler.c:705
 msgid "Profiler for regex library"
 msgstr ""
 
@@ -4309,65 +4366,78 @@
 msgid "Wrote %llu bytes of statistics to `%s'\n"
 msgstr "Đã tải %llu byte xuống « %s ».\n"
 
-#: src/statistics/gnunet-statistics.c:132
+#: src/statistics/gnunet-statistics.c:141
 #, fuzzy
 msgid "Failed to obtain statistics.\n"
 msgstr "Lỗi lấy thông kê về truyền tải.\n"
 
-#: src/statistics/gnunet-statistics.c:134
+#: src/statistics/gnunet-statistics.c:143
 #, fuzzy, c-format
 msgid "Failed to obtain statistics from host `%s:%llu'\n"
 msgstr "Lỗi lấy thông kê về truyền tải.\n"
 
-#: src/statistics/gnunet-statistics.c:183
+#: src/statistics/gnunet-statistics.c:181
 #, fuzzy, c-format
+msgid "Trying to connect to remote host, but service `%s' is not running\n"
+msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
+
+#: src/statistics/gnunet-statistics.c:190
+#, fuzzy, c-format
 msgid "A port is required to connect to host `%s'\n"
 msgstr "Không thể kết nối tới %s:%u: %s\n"
 
-#: src/statistics/gnunet-statistics.c:189
+#: src/statistics/gnunet-statistics.c:196
 #, c-format
 msgid "A port has to be between 1 and 65535 to connect to host `%s'\n"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:235
+#: src/statistics/gnunet-statistics.c:210
+msgid "Missing argument: subsystem \n"
+msgstr ""
+
+#: src/statistics/gnunet-statistics.c:216
+msgid "Missing argument: name\n"
+msgstr ""
+
+#: src/statistics/gnunet-statistics.c:247
 #, fuzzy, c-format
 msgid "No subsystem or name given\n"
 msgstr "chưa đưa ra tên"
 
-#: src/statistics/gnunet-statistics.c:243
+#: src/statistics/gnunet-statistics.c:255
 #, fuzzy, c-format
 msgid "Failed to initialize watch routine\n"
 msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
 
-#: src/statistics/gnunet-statistics.c:265
+#: src/statistics/gnunet-statistics.c:310
 msgid "limit output to statistics for the given NAME"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:268
+#: src/statistics/gnunet-statistics.c:313
 msgid "make the value being set persistent"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:271
+#: src/statistics/gnunet-statistics.c:316
 msgid "limit output to the given SUBSYSTEM"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:274
+#: src/statistics/gnunet-statistics.c:319
 msgid "just print the statistics value"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:277
+#: src/statistics/gnunet-statistics.c:322
 msgid "watch value continuously"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:280
+#: src/statistics/gnunet-statistics.c:325
 msgid "connect to remote host"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:283
+#: src/statistics/gnunet-statistics.c:328
 msgid "port for remote host"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:295
+#: src/statistics/gnunet-statistics.c:340
 msgid "Print statistics about GNUnet operations."
 msgstr "In ra thống kê về các thao tác GNUnet."
 
@@ -4434,10 +4504,47 @@
 msgid "Hosts file %s cannot be read\n"
 msgstr "Khoá phiên chạy từ đồng đẳng « %s » không thể được thẩm tra.\n"
 
-#: src/testbed/testbed_api_testbed.c:295
+#: src/testbed/testbed_api_testbed.c:320
 msgid "Some operations are still pending. Cancelling them\n"
 msgstr ""
 
+#: src/testbed/testbed_api_topology.c:580
+#, fuzzy, c-format
+msgid "Topology file %s not found\n"
+msgstr "Khoá phiên chạy từ đồng đẳng « %s » không thể được thẩm tra.\n"
+
+#: src/testbed/testbed_api_topology.c:586
+#, fuzzy, c-format
+msgid "Topology file %s has no data\n"
+msgstr "Khoá phiên chạy từ đồng đẳng « %s » không thể được thẩm tra.\n"
+
+#: src/testbed/testbed_api_topology.c:592
+#, fuzzy, c-format
+msgid "Topology file %s cannot be read\n"
+msgstr "Khoá phiên chạy từ đồng đẳng « %s » không thể được thẩm tra.\n"
+
+#: src/testbed/testbed_api_topology.c:614
+#, fuzzy, c-format
+msgid "Failed to read peer index from toology file: %s"
+msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
+
+#: src/testbed/testbed_api_topology.c:623
+#: src/testbed/testbed_api_topology.c:648
+#, c-format
+msgid "Value in given topology file: %s out of range\n"
+msgstr ""
+
+#: src/testbed/testbed_api_topology.c:629
+#: src/testbed/testbed_api_topology.c:654
+#, fuzzy, c-format
+msgid "Failed to read peer index from topology file: %s"
+msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
+
+#: src/testbed/testbed_api_topology.c:635
+#: src/testbed/testbed_api_topology.c:660
+msgid "Topology file need more peers than the given ones\n"
+msgstr ""
+
 #: src/testing/gnunet-testing.c:131
 #, fuzzy, c-format
 msgid "Could not extract hostkey %u (offset too large?)\n"
@@ -4482,59 +4589,59 @@
 msgid "name of the service to run"
 msgstr ""
 
-#: src/testing/testing.c:198
+#: src/testing/testing.c:199
 #, c-format
 msgid "Hostkeys file not found: %s\n"
 msgstr ""
 
-#: src/testing/testing.c:214
+#: src/testing/testing.c:215
 #, c-format
 msgid "Incorrect hostkey file format: %s\n"
 msgstr ""
 
-#: src/testing/testing.c:525
+#: src/testing/testing.c:526
 #, fuzzy, c-format
 msgid "Key number %u does not exist\n"
 msgstr "đặt số trình nền cần khởi chạy"
 
-#: src/testing/testing.c:535
+#: src/testing/testing.c:536
 #, fuzzy, c-format
 msgid "Error while decoding key %u\n"
 msgstr "Gặp lỗi khi tải xuống: %s\n"
 
-#: src/testing/testing.c:848
+#: src/testing/testing.c:850
 #, fuzzy
 msgid "Failed to create configuration for peer (not enough free ports?)\n"
 msgstr "Không thể truy cập đến thông tin về không gian tên.\n"
 
-#: src/testing/testing.c:859
+#: src/testing/testing.c:861
 #, c-format
 msgid ""
 "You attempted to create a testbed with more than %u hosts.  Please "
 "precompute more hostkeys first.\n"
 msgstr ""
 
-#: src/testing/testing.c:873
+#: src/testing/testing.c:875
 #, fuzzy, c-format
 msgid "Failed to initialize hostkey for peer %u\n"
 msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
 
-#: src/testing/testing.c:906
+#: src/testing/testing.c:908
 #, fuzzy, c-format
 msgid "Failed to write hostkey file for peer %u: %s\n"
 msgstr "Lỗi tạo thư mục tạm thời."
 
-#: src/testing/testing.c:924
+#: src/testing/testing.c:926
 #, fuzzy, c-format
 msgid "Failed to write configuration file `%s' for peer %u: %s\n"
 msgstr "Không thể lưu tập tin cấu hình « %s »:"
 
-#: src/testing/testing.c:985
+#: src/testing/testing.c:997
 #, fuzzy, c-format
 msgid "Failed to start `%s': %s\n"
 msgstr "Lỗi chạy %s: %s %d\n"
 
-#: src/testing/testing.c:1149
+#: src/testing/testing.c:1202
 #, fuzzy, c-format
 msgid "Failed to load configuration from %s\n"
 msgstr "Không thể lưu tập tin cấu hình « %s »:"
@@ -4679,27 +4786,27 @@
 msgid "# disconnects due to blacklist"
 msgstr ""
 
-#: src/transport/gnunet-service-transport.c:177
+#: src/transport/gnunet-service-transport.c:182
 #, fuzzy
 msgid "# bytes payload discarded due to not connected peer "
 msgstr "# Các quảng cáo đồng đẳng bị hủy do trọng tải"
 
-#: src/transport/gnunet-service-transport.c:252
+#: src/transport/gnunet-service-transport.c:257
 #, fuzzy
 msgid "# bytes total received"
 msgstr "# tổng số nội dung lỗ hổng được nhận"
 
-#: src/transport/gnunet-service-transport.c:299
+#: src/transport/gnunet-service-transport.c:304
 #, fuzzy
 msgid "# bytes payload received"
 msgstr "# các byte đã giải mã"
 
-#: src/transport/gnunet-service-transport.c:604
+#: src/transport/gnunet-service-transport.c:609
 #, fuzzy, c-format
 msgid "Transport service could not access hostkey: %s. Exiting.\n"
 msgstr "Không thể truy cập đến thông tin về không gian tên.\n"
 
-#: src/transport/gnunet-service-transport.c:674
+#: src/transport/gnunet-service-transport.c:679
 msgid "Transport service is lacking key configuration settings.  Exiting.\n"
 msgstr ""
 
@@ -4727,7 +4834,7 @@
 msgid "# REQUEST CONNECT messages received"
 msgstr "# các thông báo PONG đã mật mã được nhận"
 
-#: src/transport/gnunet-service-transport_hello.c:172
+#: src/transport/gnunet-service-transport_hello.c:175
 msgid "# refreshed my HELLO"
 msgstr ""
 
@@ -5345,14 +5452,14 @@
 msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2317
+#: src/transport/plugin_transport_udp.c:2345
 #, c-format
 msgid ""
 "UDP could not transmit message to `%s': Network seems down, please check "
 "your network configuration\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2331
+#: src/transport/plugin_transport_udp.c:2359
 #, c-format
 msgid ""
 "UDP could not transmit message to `%s': Please check your network "
@@ -5360,22 +5467,22 @@
 "IPv6 address\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2572
+#: src/transport/plugin_transport_udp.c:2600
 #, fuzzy
 msgid "Failed to open UDP sockets\n"
 msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
 
-#: src/transport/plugin_transport_udp.c:2648
+#: src/transport/plugin_transport_udp.c:2676
 #, c-format
 msgid "Given `%s' option is out of range: %llu > %u\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2691
+#: src/transport/plugin_transport_udp.c:2719
 #, fuzzy, c-format
 msgid "Invalid IPv6 address: `%s'\n"
 msgstr "Mức ưu tiên tiến trình không hợp lê « %s ».\n"
 
-#: src/transport/plugin_transport_unix.c:1333
+#: src/transport/plugin_transport_unix.c:1357
 #, fuzzy
 msgid "Failed to open UNIX sockets\n"
 msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
@@ -5983,7 +6090,7 @@
 "variable.\n"
 msgstr ""
 
-#: src/util/os_installation.c:653
+#: src/util/os_installation.c:699
 #, fuzzy, c-format
 msgid "Could not find binary `%s' in PATH!\n"
 msgstr "Không thể đọc danh sách bạn bè « %s »\n"
@@ -6067,22 +6174,22 @@
 msgid "Attempt to cancel dead task %llu!\n"
 msgstr ""
 
-#: src/util/server.c:431
+#: src/util/server.c:426
 #, fuzzy, c-format
 msgid "`%s' failed for port %d (%s).\n"
 msgstr "« %s » thất bại cho ổ đĩa « %s »: %u\n"
 
-#: src/util/server.c:440
+#: src/util/server.c:435
 #, fuzzy, c-format
 msgid "`%s' failed for port %d (%s): address already in use\n"
 msgstr "« %s » bị lỗi cho cổng %d. Trình gnunetd có chạy chưa?\n"
 
-#: src/util/server.c:451
+#: src/util/server.c:446
 #, fuzzy, c-format
 msgid "`%s' failed for `%.*s': address already in use\n"
 msgstr "« %s » bị lỗi cho cổng %d. Trình gnunetd có chạy chưa?\n"
 
-#: src/util/server.c:835
+#: src/util/server.c:830
 #, c-format
 msgid ""
 "Processing code for message of type %u did not call "
@@ -7086,10 +7193,6 @@
 #~ msgid "Unable to accept connection for service `%s': %s\n"
 #~ msgstr "Không thể lưu tập tin cấu hình « %s »:"
 
-#, fuzzy
-#~ msgid "Peer `%s' plugin: `%s' address `%s'\n"
-#~ msgstr "Đồng đẳng « %s » có mức tin cậy %8u và địa chỉ « %s »\n"
-
 #~ msgid "KiB"
 #~ msgstr "KiB"
 

Modified: gnunet/po/zh_CN.po
===================================================================
--- gnunet/po/zh_CN.po  2012-11-28 16:14:35 UTC (rev 25153)
+++ gnunet/po/zh_CN.po  2012-11-28 16:32:15 UTC (rev 25154)
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gnunet-0.8.1\n"
 "Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2012-11-14 15:54+0100\n"
+"POT-Creation-Date: 2012-11-26 14:59+0100\n"
 "PO-Revision-Date: 2011-07-09 12:12+0800\n"
 "Last-Translator: Wylmer Wang <address@hidden>\n"
 "Language-Team: Chinese (simplified) <address@hidden>\n"
@@ -231,66 +231,103 @@
 msgid "Initiating shutdown as requested by client.\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:75
+#: src/ats/ats_api_performance.c:465
 #, c-format
-msgid ""
-"Peer `%s' plugin `%s', address `%s', bandwidth out: %u Bytes/s, bandwidth in "
-"%u Bytes/s\n"
+msgid "Received %s message\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:137
+#: src/ats/ats_api_performance.c:508
 #, c-format
+msgid "Received last message for %s \n"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:134
+#, c-format
 msgid "%u address resolutions had a timeout\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:139
+#: src/ats-tool/gnunet-ats.c:136
 #, c-format
 msgid "ATS returned results for %u addresses\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:153 src/namestore/gnunet-namestore.c:610
+#: src/ats-tool/gnunet-ats.c:190
+#, c-format
+msgid ""
+"Peer `%s' plugin `%s', address `%s', bw out: %u Bytes/s, bw in %u Bytes/s, "
+"%s\n"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:274 src/namestore/gnunet-namestore.c:610
 #: src/transport/gnunet-transport.c:744
 #, fuzzy, c-format
 msgid "Service `%s' is not running\n"
 msgstr "服务已删除。\n"
 
-#: src/ats-tool/gnunet-ats.c:162 src/transport/gnunet-transport.c:750
+#: src/ats-tool/gnunet-ats.c:284 src/transport/gnunet-transport.c:750
 #, fuzzy, c-format
 msgid "Failed to parse peer identity `%s'\n"
 msgstr "解析配置文件“%s”失败\n"
 
-#: src/ats-tool/gnunet-ats.c:167 src/ats-tool/gnunet-ats.c:182
-msgid "Type required\n"
+#: src/ats-tool/gnunet-ats.c:292
+#, c-format
+msgid "Please select one operation : %s or %s or %s or %s\n"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:189 src/ats-tool/gnunet-ats.c:199
+#: src/ats-tool/gnunet-ats.c:305 src/ats-tool/gnunet-ats.c:324
+#: src/ats-tool/gnunet-ats.c:341 src/ats-tool/gnunet-ats.c:366
 #, fuzzy, c-format
 msgid "Cannot connect to ATS service, exiting...\n"
 msgstr "初始化“%s”服务失败。\n"
 
-#: src/ats-tool/gnunet-ats.c:247
+#: src/ats-tool/gnunet-ats.c:314 src/ats-tool/gnunet-ats.c:331
+#, fuzzy, c-format
+msgid "Cannot issue request to ATS service, exiting...\n"
+msgstr "初始化“%s”服务失败。\n"
+
+#: src/ats-tool/gnunet-ats.c:359
+msgid "Type required\n"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:416
+msgid "get list of active addresses currently used"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:419
+msgid "get list of all active addresses"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:422
 #, fuzzy
 msgid "do not resolve IP addresses to hostnames"
 msgstr "GNUnet 现在使用 IP 地址 %s。\n"
 
-#: src/ats-tool/gnunet-ats.c:250
+#: src/ats-tool/gnunet-ats.c:425
 msgid "monitor mode"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:253
+#: src/ats-tool/gnunet-ats.c:428
 #, fuzzy
 msgid "set preference for the given peer"
 msgstr "无法获取有关用户“%s”的信息:%s\n"
 
-#: src/ats-tool/gnunet-ats.c:256
+#: src/ats-tool/gnunet-ats.c:431
+msgid "peer id"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:434
 msgid "preference type to set: latency | bandwidth"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:259
+#: src/ats-tool/gnunet-ats.c:437
 msgid "preference value"
 msgstr ""
 
-#: src/ats-tool/gnunet-ats.c:268
+#: src/ats-tool/gnunet-ats.c:440
+msgid "verbose output (include ATS address properties)"
+msgstr ""
+
+#: src/ats-tool/gnunet-ats.c:449
 #, fuzzy
 msgid "Print information about ATS state"
 msgstr "无法获取有关用户“%s”的信息:%s\n"
@@ -304,7 +341,7 @@
 msgid "Client was disconnected from core service, trying to reconnect.\n"
 msgstr ""
 
-#: src/core/gnunet-core.c:86 src/peerinfo-tool/gnunet-peerinfo.c:286
+#: src/core/gnunet-core.c:86 src/peerinfo-tool/gnunet-peerinfo.c:214
 #, c-format
 msgid "Peer `%s'\n"
 msgstr ""
@@ -325,7 +362,8 @@
 msgid "Disconnected from"
 msgstr "“%s”已连接到“%s”。\n"
 
-#: src/core/gnunet-core.c:174 src/peerinfo-tool/gnunet-peerinfo.c:825
+#: src/core/gnunet-core.c:174 src/mesh/gnunet-mesh.c:131
+#: src/peerinfo-tool/gnunet-peerinfo.c:541
 #, fuzzy, c-format
 msgid "Invalid command line argument `%s'\n"
 msgstr "“%s”的参数无效。\n"
@@ -354,7 +392,7 @@
 msgstr "立即保存配置?"
 
 #: src/core/gnunet-service-core.c:163
-#: src/transport/gnunet-service-transport.c:685
+#: src/transport/gnunet-service-transport.c:696
 #, fuzzy
 msgid "Transport service is unable to access hostkey. Exiting.\n"
 msgstr "找不到接口“%s”的一个 IP 地址。\n"
@@ -486,8 +524,8 @@
 msgstr ""
 
 #: src/core/gnunet-service-core_kx.c:1703 src/hostlist/hostlist-server.c:552
-#: src/peerinfo-tool/gnunet-peerinfo.c:831
-#: src/transport/gnunet-service-transport.c:627
+#: src/peerinfo-tool/gnunet-peerinfo.c:547
+#: src/transport/gnunet-service-transport.c:632
 msgid "Could not access PEERINFO service.  Exiting.\n"
 msgstr ""
 
@@ -511,8 +549,8 @@
 
 #: src/core/gnunet-service-core_sessions.c:206
 #: src/core/gnunet-service-core_sessions.c:269
-#: src/dht/gnunet-service-dht_neighbours.c:639
-#: src/dht/gnunet-service-dht_neighbours.c:697
+#: src/dht/gnunet-service-dht_neighbours.c:645
+#: src/dht/gnunet-service-dht_neighbours.c:703
 #: src/fs/gnunet-service-fs_cp.c:630 src/fs/gnunet-service-fs_cp.c:1544
 #: src/topology/gnunet-daemon-topology.c:704
 #: src/topology/gnunet-daemon-topology.c:805
@@ -599,17 +637,17 @@
 msgid "`%s' failed at %s:%d with error: %s\n"
 msgstr "“%s”于 %s:%d 处失败,错误为:%s\n"
 
-#: src/datacache/plugin_datacache_sqlite.c:448
+#: src/datacache/plugin_datacache_sqlite.c:450
 msgid "Sqlite datacache running\n"
 msgstr ""
 
-#: src/datacache/plugin_datacache_sqlite.c:482
+#: src/datacache/plugin_datacache_sqlite.c:484
 #: src/datastore/plugin_datastore_sqlite.c:401
 #: src/namestore/plugin_namestore_sqlite.c:362
 msgid "Tried to close sqlite without finalizing all prepared statements.\n"
 msgstr ""
 
-#: src/datacache/plugin_datacache_sqlite.c:489
+#: src/datacache/plugin_datacache_sqlite.c:491
 #, fuzzy, c-format
 msgid "Failed to close statement %p: %d\n"
 msgstr "解析配置文件“%s”失败\n"
@@ -1029,50 +1067,50 @@
 msgid "Issue a PUT request to the GNUnet DHT insert DATA under KEY."
 msgstr ""
 
-#: src/dht/gnunet-service-dht.c:163
+#: src/dht/gnunet-service-dht.c:172
 #, fuzzy
 msgid "Failed to connect to transport service!\n"
 msgstr "初始化“%s”服务失败。\n"
 
-#: src/dht/gnunet-service-dht_clients.c:407
+#: src/dht/gnunet-service-dht_clients.c:413
 msgid "# GET requests from clients injected"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:497
+#: src/dht/gnunet-service-dht_clients.c:503
 msgid "# PUT requests received from clients"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:579
+#: src/dht/gnunet-service-dht_clients.c:585
 msgid "# GET requests received from clients"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:775
+#: src/dht/gnunet-service-dht_clients.c:791
 msgid "# GET STOP requests received from clients"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1012
+#: src/dht/gnunet-service-dht_clients.c:1035
 msgid "# Key match, type mismatches in REPLY to CLIENT"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1025
+#: src/dht/gnunet-service-dht_clients.c:1048
 msgid "# Duplicate REPLIES to CLIENT request dropped"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1062
+#: src/dht/gnunet-service-dht_clients.c:1085
 #, c-format
 msgid "Unsupported block type (%u) in request!\n"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1085
+#: src/dht/gnunet-service-dht_clients.c:1108
 msgid "# RESULTS queued for clients"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1134
-#: src/dht/gnunet-service-dht_clients.c:1177
+#: src/dht/gnunet-service-dht_clients.c:1157
+#: src/dht/gnunet-service-dht_clients.c:1199
 msgid "# REPLIES ignored for CLIENTS (no match)"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_clients.c:1144
+#: src/dht/gnunet-service-dht_clients.c:1167
 msgid "Could not pass reply to client, message too big!\n"
 msgstr ""
 
@@ -1118,87 +1156,87 @@
 msgid "# HELLOs obtained from peerinfo"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:495
+#: src/dht/gnunet-service-dht_neighbours.c:501
 msgid "# Preference updates given to core"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:585
+#: src/dht/gnunet-service-dht_neighbours.c:591
 msgid "# FIND PEER messages initiated"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:731
+#: src/dht/gnunet-service-dht_neighbours.c:737
 msgid "# Queued messages discarded (peer disconnected)"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:786
+#: src/dht/gnunet-service-dht_neighbours.c:792
 msgid "# Bytes transmitted to other peers"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:824
+#: src/dht/gnunet-service-dht_neighbours.c:830
 msgid "# Bytes of bandwidth requested from core"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1046
-#: src/dht/gnunet-service-dht_neighbours.c:1074
+#: src/dht/gnunet-service-dht_neighbours.c:1052
+#: src/dht/gnunet-service-dht_neighbours.c:1080
 msgid "# Peers excluded from routing due to Bloomfilter"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1055
-#: src/dht/gnunet-service-dht_neighbours.c:1089
+#: src/dht/gnunet-service-dht_neighbours.c:1061
+#: src/dht/gnunet-service-dht_neighbours.c:1095
 msgid "# Peer selection failed"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1223
+#: src/dht/gnunet-service-dht_neighbours.c:1229
 msgid "# PUT requests routed"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1252
+#: src/dht/gnunet-service-dht_neighbours.c:1258
 msgid "# PUT messages queued for transmission"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1259
-#: src/dht/gnunet-service-dht_neighbours.c:1372
-#: src/dht/gnunet-service-dht_neighbours.c:1472
+#: src/dht/gnunet-service-dht_neighbours.c:1265
+#: src/dht/gnunet-service-dht_neighbours.c:1378
+#: src/dht/gnunet-service-dht_neighbours.c:1478
 msgid "# P2P messages dropped due to full queue"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1337
+#: src/dht/gnunet-service-dht_neighbours.c:1343
 msgid "# GET requests routed"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1364
+#: src/dht/gnunet-service-dht_neighbours.c:1370
 msgid "# GET messages queued for transmission"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1479
+#: src/dht/gnunet-service-dht_neighbours.c:1485
 msgid "# RESULT messages queued for transmission"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1567
+#: src/dht/gnunet-service-dht_neighbours.c:1573
 msgid "# P2P PUT requests received"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1694
+#: src/dht/gnunet-service-dht_neighbours.c:1702
 msgid "# FIND PEER requests ignored due to Bloomfilter"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1702
+#: src/dht/gnunet-service-dht_neighbours.c:1710
 msgid "# FIND PEER requests ignored due to lack of HELLO"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1793
+#: src/dht/gnunet-service-dht_neighbours.c:1801
 msgid "# P2P GET requests received"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1835
+#: src/dht/gnunet-service-dht_neighbours.c:1843
 msgid "# P2P FIND PEER requests processed"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1849
+#: src/dht/gnunet-service-dht_neighbours.c:1857
 msgid "# P2P GET requests ONLY routed"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_neighbours.c:1934
+#: src/dht/gnunet-service-dht_neighbours.c:1944
 msgid "# P2P RESULTS received"
 msgstr ""
 
@@ -1234,7 +1272,7 @@
 msgid "# Entries added to routing table"
 msgstr ""
 
-#: src/dht/gnunet-service-dht_routing.c:417
+#: src/dht/gnunet-service-dht_routing.c:418
 msgid "# DHT requests combined"
 msgstr ""
 
@@ -2205,7 +2243,7 @@
 msgid "Special file-sharing operations"
 msgstr ""
 
-#: src/fs/gnunet-pseudonym.c:160 src/statistics/gnunet-statistics.c:204
+#: src/fs/gnunet-pseudonym.c:160 src/statistics/gnunet-statistics.c:283
 #, fuzzy, c-format
 msgid "Invalid argument `%s'\n"
 msgstr "“%s”的参数无效。\n"
@@ -2459,15 +2497,15 @@
 msgid "Search GNUnet for files that were published on GNUnet"
 msgstr ""
 
-#: src/fs/gnunet-service-fs.c:245
+#: src/fs/gnunet-service-fs.c:248
 msgid "# running average P2P latency (ms)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs.c:306 src/fs/gnunet-service-fs.c:496
+#: src/fs/gnunet-service-fs.c:309 src/fs/gnunet-service-fs.c:523
 msgid "# Loopback routes suppressed"
 msgstr ""
 
-#: src/fs/gnunet-service-fs.c:588 src/hostlist/gnunet-daemon-hostlist.c:297
+#: src/fs/gnunet-service-fs.c:628 src/hostlist/gnunet-daemon-hostlist.c:297
 #: src/topology/gnunet-daemon-topology.c:1321
 #: src/topology/gnunet-daemon-topology.c:1328
 #, fuzzy, c-format
@@ -2651,99 +2689,107 @@
 msgid "# query plan entries"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:293
+#: src/fs/gnunet-service-fs_pr.c:299
 msgid "# Pending requests created"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:385 src/fs/gnunet-service-fs_pr.c:643
+#: src/fs/gnunet-service-fs_pr.c:391 src/fs/gnunet-service-fs_pr.c:654
 msgid "# Pending requests active"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:806
+#: src/fs/gnunet-service-fs_pr.c:822
 msgid "# replies received and matched"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:839
+#: src/fs/gnunet-service-fs_pr.c:855
 msgid "# duplicate replies discarded (bloomfilter)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:854
+#: src/fs/gnunet-service-fs_pr.c:864
+msgid "# irrelevant replies discarded"
+msgstr ""
+
+#: src/fs/gnunet-service-fs_pr.c:878
 #, c-format
 msgid "Unsupported block type %u\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:867
+#: src/fs/gnunet-service-fs_pr.c:891
 msgid "# results found locally"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:988
+#: src/fs/gnunet-service-fs_pr.c:1012
 msgid "# Datastore `PUT' failures"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1015
+#: src/fs/gnunet-service-fs_pr.c:1039
 msgid "# storage requests dropped due to high load"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1050
+#: src/fs/gnunet-service-fs_pr.c:1074
 msgid "# Replies received from DHT"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1145
+#: src/fs/gnunet-service-fs_pr.c:1203
+msgid "# Replies received from STREAM"
+msgstr ""
+
+#: src/fs/gnunet-service-fs_pr.c:1255
 #, c-format
 msgid "Datastore lookup already took %s!\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1165
+#: src/fs/gnunet-service-fs_pr.c:1275
 #, c-format
 msgid "On-demand lookup already took %s!\n"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1212
+#: src/fs/gnunet-service-fs_pr.c:1322
 msgid "# Datastore lookups concluded (no results)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1227
+#: src/fs/gnunet-service-fs_pr.c:1337
 msgid "# Datastore lookups concluded (seen all)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1236
+#: src/fs/gnunet-service-fs_pr.c:1346
 msgid "# Datastore lookups aborted (more than MAX_RESULTS)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1251
+#: src/fs/gnunet-service-fs_pr.c:1361
 msgid "# requested DBLOCK or IBLOCK not found"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1265
+#: src/fs/gnunet-service-fs_pr.c:1375
 msgid "# on-demand blocks matched requests"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1278
+#: src/fs/gnunet-service-fs_pr.c:1388
 msgid "# on-demand lookups performed successfully"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1283
+#: src/fs/gnunet-service-fs_pr.c:1393
 msgid "# on-demand lookups failed"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1310 src/fs/gnunet-service-fs_pr.c:1350
-#: src/fs/gnunet-service-fs_pr.c:1490
+#: src/fs/gnunet-service-fs_pr.c:1420 src/fs/gnunet-service-fs_pr.c:1460
+#: src/fs/gnunet-service-fs_pr.c:1601
 msgid "# Datastore lookups concluded (error queueing)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1368
+#: src/fs/gnunet-service-fs_pr.c:1478
 msgid "# Datastore lookups concluded (found last result)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1379
+#: src/fs/gnunet-service-fs_pr.c:1489
 msgid "# Datastore lookups concluded (load too high)"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1466
+#: src/fs/gnunet-service-fs_pr.c:1577
 msgid "# Datastore lookups initiated"
 msgstr ""
 
-#: src/fs/gnunet-service-fs_pr.c:1551
+#: src/fs/gnunet-service-fs_pr.c:1662
 msgid "# GAP PUT messages received"
 msgstr ""
 
@@ -2778,10 +2824,6 @@
 msgid "Unindex a file that was previously indexed with gnunet-publish."
 msgstr ""
 
-#: src/fs/plugin_block_fs.c:130
-msgid "Reply mismatched in terms of namespace.  Discarded.\n"
-msgstr ""
-
 #: src/gns/gns_api.c:598
 #, fuzzy
 msgid "Failed to serialize lookup reply from GNS service!\n"
@@ -2991,6 +3033,40 @@
 msgid "Error writing HELLO to file `%s': %s\n"
 msgstr "创建用户出错"
 
+#: src/hello/hello.c:905
+#, fuzzy
+msgid "Failed to parse HELLO message: missing expiration time\n"
+msgstr "保存配置失败。"
+
+#: src/hello/hello.c:914
+#, fuzzy
+msgid "Failed to parse HELLO message: invalid expiration time\n"
+msgstr "保存配置失败。"
+
+#: src/hello/hello.c:924
+#, fuzzy
+msgid "Failed to parse HELLO message: malformed\n"
+msgstr "打开日志文件“%s”失败:%s\n"
+
+#: src/hello/hello.c:934
+msgid "Failed to parse HELLO message: missing transport plugin\n"
+msgstr ""
+
+#: src/hello/hello.c:951
+#, c-format
+msgid "Plugin `%s' not found\n"
+msgstr ""
+
+#: src/hello/hello.c:960
+#, c-format
+msgid "Plugin `%s' does not support URIs yet\n"
+msgstr ""
+
+#: src/hello/hello.c:979
+#, fuzzy, c-format
+msgid "Failed to parse `%s' as an address for plugin `%s'\n"
+msgstr "找不到接口“%s”的一个 IP 地址。\n"
+
 #: src/hostlist/gnunet-daemon-hostlist.c:264
 msgid ""
 "None of the functions for the hostlist daemon were enabled.  I have no "
@@ -3180,8 +3256,8 @@
 msgstr ""
 
 #: src/hostlist/hostlist-server.c:184 src/hostlist/hostlist-server.c:425
-#: src/peerinfo-tool/gnunet-peerinfo.c:403
-#: src/peerinfo-tool/gnunet-peerinfo.c:519
+#: src/peerinfo-tool/gnunet-peerinfo.c:331
+#: src/peerinfo-tool/gnunet-peerinfo.c:386
 #: src/topology/gnunet-daemon-topology.c:922
 #, c-format
 msgid "Error in communication with PEERINFO service: %s\n"
@@ -3284,16 +3360,17 @@
 #: src/mesh/gnunet-daemon-regexprofiler.c:209
 #: src/mesh/gnunet-daemon-regexprofiler.c:222
 #: src/mesh/gnunet-daemon-regexprofiler.c:235
-#: src/mesh/gnunet-service-mesh.c:8376 src/mesh/gnunet-service-mesh.c:8388
-#: src/mesh/gnunet-service-mesh.c:8400 src/mesh/gnunet-service-mesh.c:8414
-#: src/mesh/gnunet-service-mesh.c:8426 src/mesh/gnunet-service-mesh.c:8438
-#: src/mesh/gnunet-service-mesh.c:8450 src/mesh/gnunet-service-mesh-new.c:8292
+#: src/mesh/gnunet-service-mesh.c:8692 src/mesh/gnunet-service-mesh.c:8704
+#: src/mesh/gnunet-service-mesh.c:8716 src/mesh/gnunet-service-mesh.c:8730
+#: src/mesh/gnunet-service-mesh.c:8742 src/mesh/gnunet-service-mesh.c:8754
+#: src/mesh/gnunet-service-mesh.c:8766 src/mesh/gnunet-service-mesh-new.c:8292
 #: src/mesh/gnunet-service-mesh-new.c:8304
 #: src/mesh/gnunet-service-mesh-new.c:8316
 #: src/mesh/gnunet-service-mesh-new.c:8329
 #: src/mesh/gnunet-service-mesh-new.c:8344
 #: src/mesh/gnunet-service-mesh-new.c:8356
 #: src/mesh/gnunet-service-mesh-new.c:8368
+#: src/regex/gnunet-regex-simulation-profiler.c:659
 #, fuzzy, c-format
 msgid "%s service is lacking key configuration settings (%s).  Exiting.\n"
 msgstr "立即保存配置?"
@@ -3302,149 +3379,161 @@
 msgid "Daemon to announce regular expressions for the peer using mesh."
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1146
+#: src/mesh/gnunet-mesh.c:162
+msgid ""
+"provide inthe 'struct GNUNET_TRANSPORT_PeerIterateContextformation about all "
+"tunnels (continuously)"
+msgstr ""
+
+#: src/mesh/gnunet-mesh.c:173
+#, fuzzy
+msgid "Print information about mesh tunnels and peers."
+msgstr "无法获取有关用户“%s”的信息:%s\n"
+
+#: src/mesh/gnunet-regex-profiler.c:1147
 #: src/testbed/gnunet-testbed-profiler.c:320
 msgid "An operation has failed while starting peers\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1192
+#: src/mesh/gnunet-regex-profiler.c:1193
 #: src/testbed/gnunet-testbed-profiler.c:389
 #, fuzzy, c-format
 msgid "Creating a peer failed. Error: %s\n"
 msgstr "“%s”以错误码 %d 失败:%s\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1319
+#: src/mesh/gnunet-regex-profiler.c:1320
 #: src/testbed/gnunet-testbed-profiler.c:494
 msgid "An operation has failed while starting slaves\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1341
+#: src/mesh/gnunet-regex-profiler.c:1342
 #, fuzzy, c-format
 msgid "No files found in `%s'\n"
 msgstr "运行 %s失败:%s %d\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1396
+#: src/mesh/gnunet-regex-profiler.c:1397
 msgid "An operation has failed while linking\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1507
+#: src/mesh/gnunet-regex-profiler.c:1508
 #: src/testbed/gnunet-testbed-profiler.c:598
 #, c-format
 msgid "Host registration failed for a host. Error: %s\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1587
+#: src/mesh/gnunet-regex-profiler.c:1588
 #: src/testbed/gnunet-testbed-profiler.c:677
 msgid "Unable to connect to master controller -- Check config\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1686
+#: src/mesh/gnunet-regex-profiler.c:1687
 #, c-format
 msgid "No hosts-file specified on command line. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1691
-#: src/regex/gnunet-regex-simulation-profiler.c:498
+#: src/mesh/gnunet-regex-profiler.c:1692
+#: src/regex/gnunet-regex-simulation-profiler.c:622
 #, c-format
 msgid "No policy directory specified on command line. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1697
+#: src/mesh/gnunet-regex-profiler.c:1698
 #: src/testbed/gnunet-testbed-profiler.c:717
 #, c-format
 msgid "No hosts loaded. Need at least one host\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1704
+#: src/mesh/gnunet-regex-profiler.c:1705
 #: src/testbed/gnunet-testbed-profiler.c:724
+#: src/testbed/testbed_api_testbed.c:759
 #, c-format
 msgid "Host %s cannot start testbed\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1711
+#: src/mesh/gnunet-regex-profiler.c:1712
 #: src/testbed/gnunet-testbed-profiler.c:731
 #, fuzzy, c-format
 msgid "Exiting\n"
 msgstr "退出"
 
-#: src/mesh/gnunet-regex-profiler.c:1717
+#: src/mesh/gnunet-regex-profiler.c:1718
 #, c-format
 msgid "No configuration file given. Exiting\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1726
+#: src/mesh/gnunet-regex-profiler.c:1727
 #, fuzzy, c-format
 msgid "Configuration option (regex_prefix) missing. Exiting\n"
 msgstr "配置文件“%s”已写入。\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1744
-#: src/regex/gnunet-regex-simulation-profiler.c:504
+#: src/mesh/gnunet-regex-profiler.c:1745
+#: src/regex/gnunet-regex-simulation-profiler.c:629
 #, c-format
 msgid "Specified policies directory does not exist. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1751
+#: src/mesh/gnunet-regex-profiler.c:1752
 #, c-format
 msgid "No search strings file given. Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1759
+#: src/mesh/gnunet-regex-profiler.c:1760
 #, c-format
 msgid ""
 "Error loading search strings. Given file does not contain enough strings. "
 "Exiting.\n"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1765
+#: src/mesh/gnunet-regex-profiler.c:1766
 #, fuzzy, c-format
 msgid "Error loading search strings. Exiting.\n"
 msgstr "创建用户出错"
 
-#: src/mesh/gnunet-regex-profiler.c:1799
+#: src/mesh/gnunet-regex-profiler.c:1800
 #, fuzzy
 msgid "name of the file for writing statistics"
 msgstr "初始化“%s”服务失败。\n"
 
-#: src/mesh/gnunet-regex-profiler.c:1802
+#: src/mesh/gnunet-regex-profiler.c:1803
 msgid "create COUNT number of random links between peers"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1805
+#: src/mesh/gnunet-regex-profiler.c:1806
 msgid "wait TIMEOUT before considering a string match as failed"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1808
+#: src/mesh/gnunet-regex-profiler.c:1809
 msgid "wait DELAY before starting string search"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1811
+#: src/mesh/gnunet-regex-profiler.c:1812
 msgid "number of search strings to read from search strings file"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1814
-#: src/regex/gnunet-regex-simulation-profiler.c:555
+#: src/mesh/gnunet-regex-profiler.c:1815
+#: src/regex/gnunet-regex-simulation-profiler.c:692
 msgid "maximum path compression length"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1817
+#: src/mesh/gnunet-regex-profiler.c:1818
 msgid ""
 "if this option is set, only one peer is responsible for searching all strings"
 msgstr ""
 
-#: src/mesh/gnunet-regex-profiler.c:1829
+#: src/mesh/gnunet-regex-profiler.c:1830
 msgid "Profiler for regex/mesh"
 msgstr ""
 
-#: src/mesh/gnunet-service-mesh.c:8082 src/mesh/gnunet-service-mesh-new.c:7998
+#: src/mesh/gnunet-service-mesh.c:8398 src/mesh/gnunet-service-mesh-new.c:7998
 msgid "Wrong CORE service\n"
 msgstr ""
 
-#: src/mesh/gnunet-service-mesh.c:8287 src/mesh/gnunet-service-mesh-new.c:8203
+#: src/mesh/gnunet-service-mesh.c:8603 src/mesh/gnunet-service-mesh-new.c:8203
 #, fuzzy
 msgid "Mesh service could not access hostkey.  Exiting.\n"
 msgstr "找不到接口“%s”的一个 IP 地址。\n"
 
-#: src/mesh/gnunet-service-mesh.c:8462 src/mesh/gnunet-service-mesh.c:8473
+#: src/mesh/gnunet-service-mesh.c:8778 src/mesh/gnunet-service-mesh.c:8789
 #: src/mesh/gnunet-service-mesh-new.c:8380
 #: src/mesh/gnunet-service-mesh-new.c:8391
 #, fuzzy, c-format
@@ -3538,7 +3627,7 @@
 msgstr ""
 
 #: src/namestore/gnunet-namestore.c:569
-#: src/peerinfo-tool/gnunet-peerinfo.c:882
+#: src/peerinfo-tool/gnunet-peerinfo.c:598
 #, fuzzy, c-format
 msgid "Invalid URI `%s'\n"
 msgstr "无效条目。\n"
@@ -3598,35 +3687,35 @@
 msgid "GNUnet zone manipulation tool"
 msgstr "GNUnet 配置"
 
-#: src/namestore/gnunet-service-namestore.c:242
-#: src/namestore/gnunet-service-namestore.c:258
+#: src/namestore/gnunet-service-namestore.c:241
+#: src/namestore/gnunet-service-namestore.c:257
 #, fuzzy, c-format
 msgid "Failed to write zone key to file `%s': %s\n"
 msgstr "打开日志文件“%s”失败:%s\n"
 
-#: src/namestore/gnunet-service-namestore.c:244
+#: src/namestore/gnunet-service-namestore.c:243
 msgid "file exists but reading key failed"
 msgstr ""
 
-#: src/namestore/gnunet-service-namestore.c:260
+#: src/namestore/gnunet-service-namestore.c:259
 msgid "file exists with different key"
 msgstr ""
 
-#: src/namestore/gnunet-service-namestore.c:1519
+#: src/namestore/gnunet-service-namestore.c:1557
 #, fuzzy
 msgid "Failed to find record to remove\n"
 msgstr "无法连接到 %s:%u:%s\n"
 
-#: src/namestore/gnunet-service-namestore.c:2133
+#: src/namestore/gnunet-service-namestore.c:2172
 #, fuzzy, c-format
 msgid "Could not parse zone key file `%s'\n"
 msgstr "找不到接口“%s”的一个 IP 地址。\n"
 
-#: src/namestore/gnunet-service-namestore.c:2223
+#: src/namestore/gnunet-service-namestore.c:2262
 msgid "No directory to load zonefiles specified in configuration\n"
 msgstr ""
 
-#: src/namestore/gnunet-service-namestore.c:2233
+#: src/namestore/gnunet-service-namestore.c:2272
 #, c-format
 msgid "Creating directory `%s' for zone files failed!\n"
 msgstr ""
@@ -3667,42 +3756,42 @@
 msgid "Protocol error"
 msgstr ""
 
-#: src/namestore/namestore_common.c:494 src/namestore/namestore_common.c:634
+#: src/namestore/namestore_common.c:509 src/namestore/namestore_common.c:649
 #, fuzzy, c-format
 msgid "Unsupported record type %d\n"
 msgstr "未知的命令“%s”。\n"
 
-#: src/namestore/namestore_common.c:501
+#: src/namestore/namestore_common.c:516
 #, fuzzy, c-format
 msgid "Unable to parse IPv4 address `%s'\n"
 msgstr "无效的进程优先级“%s”\n"
 
-#: src/namestore/namestore_common.c:524
+#: src/namestore/namestore_common.c:539
 #, fuzzy, c-format
 msgid "Unable to parse SOA record `%s'\n"
 msgstr "解析配置文件“%s”失败\n"
 
-#: src/namestore/namestore_common.c:547
+#: src/namestore/namestore_common.c:562
 #, fuzzy, c-format
 msgid "Unable to parse MX record `%s'\n"
 msgstr "解析配置文件“%s”失败\n"
 
-#: src/namestore/namestore_common.c:565
+#: src/namestore/namestore_common.c:580
 #, fuzzy, c-format
 msgid "Unable to parse IPv6 address `%s'\n"
 msgstr "无效的进程优先级“%s”\n"
 
-#: src/namestore/namestore_common.c:578
+#: src/namestore/namestore_common.c:593
 #, fuzzy, c-format
 msgid "Unable to parse PKEY record `%s'\n"
 msgstr "解析配置文件“%s”失败\n"
 
-#: src/namestore/namestore_common.c:599
+#: src/namestore/namestore_common.c:614
 #, fuzzy, c-format
 msgid "Unable to parse VPN record string `%s'\n"
 msgstr "解析配置文件“%s”失败\n"
 
-#: src/namestore/namestore_common.c:625
+#: src/namestore/namestore_common.c:640
 #, fuzzy, c-format
 msgid "Unable to parse TLSA record string `%s'\n"
 msgstr "解析配置文件“%s”失败\n"
@@ -3888,86 +3977,52 @@
 msgid "Could not connect to `%s' service.\n"
 msgstr "无法连接到 %s:%u:%s\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:581
-#, fuzzy
-msgid "Failed to parse HELLO message: missing expiration time\n"
-msgstr "保存配置失败。"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:589
-#, fuzzy
-msgid "Failed to parse HELLO message: invalid expiration time\n"
-msgstr "保存配置失败。"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:598
-#, fuzzy
-msgid "Failed to parse HELLO message: malformed\n"
-msgstr "打开日志文件“%s”失败:%s\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:608
-msgid "Failed to parse HELLO message: missing transport plugin\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:625
+#: src/peerinfo-tool/gnunet-peerinfo.c:419
 #, c-format
-msgid "Plugin `%s' not found\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:634
-#, c-format
-msgid "Plugin `%s' does not support URIs yet\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:653
-#, fuzzy, c-format
-msgid "Failed to parse `%s' as an address for plugin `%s'\n"
-msgstr "找不到接口“%s”的一个 IP 地址。\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:685
-#, c-format
 msgid "Failure adding HELLO: %s\n"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:841
+#: src/peerinfo-tool/gnunet-peerinfo.c:557
 #, fuzzy, c-format
 msgid "Could not find option `%s:%s' in configuration.\n"
 msgstr "找不到主机“%s”的 IP:%s\n"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:847
+#: src/peerinfo-tool/gnunet-peerinfo.c:563
 #, c-format
 msgid "Loading hostkey from `%s' failed.\n"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:906
+#: src/peerinfo-tool/gnunet-peerinfo.c:622
 #, c-format
 msgid "I am peer `%s'.\n"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:943
+#: src/peerinfo-tool/gnunet-peerinfo.c:648
 msgid "don't resolve host names"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:946
+#: src/peerinfo-tool/gnunet-peerinfo.c:651
 msgid "output only the identity strings"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:949
+#: src/peerinfo-tool/gnunet-peerinfo.c:654
 msgid "output our own identity only"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:952
+#: src/peerinfo-tool/gnunet-peerinfo.c:657
 #, fuzzy
 msgid "list all known peers"
 msgstr "列出所有网络适配器"
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:955
+#: src/peerinfo-tool/gnunet-peerinfo.c:660
 msgid "also output HELLO uri(s)"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:958
+#: src/peerinfo-tool/gnunet-peerinfo.c:663
 msgid "add given HELLO uri to the database"
 msgstr ""
 
-#: src/peerinfo-tool/gnunet-peerinfo.c:969
+#: src/peerinfo-tool/gnunet-peerinfo.c:674
 #, fuzzy
 msgid "Print information about peers."
 msgstr "无法获取有关用户“%s”的信息:%s\n"
@@ -4058,11 +4113,11 @@
 msgid "Daemon to run to perform IP protocol translation to GNUnet"
 msgstr ""
 
-#: src/regex/gnunet-regex-simulation-profiler.c:552
+#: src/regex/gnunet-regex-simulation-profiler.c:689
 msgid "name of the table to write DFAs"
 msgstr ""
 
-#: src/regex/gnunet-regex-simulation-profiler.c:567
+#: src/regex/gnunet-regex-simulation-profiler.c:705
 msgid "Profiler for regex library"
 msgstr ""
 
@@ -4076,65 +4131,78 @@
 msgid "Wrote %llu bytes of statistics to `%s'\n"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:132
+#: src/statistics/gnunet-statistics.c:141
 #, fuzzy
 msgid "Failed to obtain statistics.\n"
 msgstr "初始化“%s”服务失败。\n"
 
-#: src/statistics/gnunet-statistics.c:134
+#: src/statistics/gnunet-statistics.c:143
 #, fuzzy, c-format
 msgid "Failed to obtain statistics from host `%s:%llu'\n"
 msgstr "初始化“%s”服务失败。\n"
 
-#: src/statistics/gnunet-statistics.c:183
+#: src/statistics/gnunet-statistics.c:181
 #, fuzzy, c-format
+msgid "Trying to connect to remote host, but service `%s' is not running\n"
+msgstr "初始化“%s”服务失败。\n"
+
+#: src/statistics/gnunet-statistics.c:190
+#, fuzzy, c-format
 msgid "A port is required to connect to host `%s'\n"
 msgstr "无法连接到 %s:%u:%s\n"
 
-#: src/statistics/gnunet-statistics.c:189
+#: src/statistics/gnunet-statistics.c:196
 #, c-format
 msgid "A port has to be between 1 and 65535 to connect to host `%s'\n"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:235
+#: src/statistics/gnunet-statistics.c:210
+msgid "Missing argument: subsystem \n"
+msgstr ""
+
+#: src/statistics/gnunet-statistics.c:216
+msgid "Missing argument: name\n"
+msgstr ""
+
+#: src/statistics/gnunet-statistics.c:247
 #, c-format
 msgid "No subsystem or name given\n"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:243
+#: src/statistics/gnunet-statistics.c:255
 #, fuzzy, c-format
 msgid "Failed to initialize watch routine\n"
 msgstr "初始化“%s”服务失败。\n"
 
-#: src/statistics/gnunet-statistics.c:265
+#: src/statistics/gnunet-statistics.c:310
 msgid "limit output to statistics for the given NAME"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:268
+#: src/statistics/gnunet-statistics.c:313
 msgid "make the value being set persistent"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:271
+#: src/statistics/gnunet-statistics.c:316
 msgid "limit output to the given SUBSYSTEM"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:274
+#: src/statistics/gnunet-statistics.c:319
 msgid "just print the statistics value"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:277
+#: src/statistics/gnunet-statistics.c:322
 msgid "watch value continuously"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:280
+#: src/statistics/gnunet-statistics.c:325
 msgid "connect to remote host"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:283
+#: src/statistics/gnunet-statistics.c:328
 msgid "port for remote host"
 msgstr ""
 
-#: src/statistics/gnunet-statistics.c:295
+#: src/statistics/gnunet-statistics.c:340
 msgid "Print statistics about GNUnet operations."
 msgstr ""
 
@@ -4201,10 +4269,47 @@
 msgid "Hosts file %s cannot be read\n"
 msgstr ""
 
-#: src/testbed/testbed_api_testbed.c:295
+#: src/testbed/testbed_api_testbed.c:320
 msgid "Some operations are still pending. Cancelling them\n"
 msgstr ""
 
+#: src/testbed/testbed_api_topology.c:580
+#, c-format
+msgid "Topology file %s not found\n"
+msgstr ""
+
+#: src/testbed/testbed_api_topology.c:586
+#, c-format
+msgid "Topology file %s has no data\n"
+msgstr ""
+
+#: src/testbed/testbed_api_topology.c:592
+#, c-format
+msgid "Topology file %s cannot be read\n"
+msgstr ""
+
+#: src/testbed/testbed_api_topology.c:614
+#, fuzzy, c-format
+msgid "Failed to read peer index from toology file: %s"
+msgstr "解析配置文件“%s”失败\n"
+
+#: src/testbed/testbed_api_topology.c:623
+#: src/testbed/testbed_api_topology.c:648
+#, c-format
+msgid "Value in given topology file: %s out of range\n"
+msgstr ""
+
+#: src/testbed/testbed_api_topology.c:629
+#: src/testbed/testbed_api_topology.c:654
+#, fuzzy, c-format
+msgid "Failed to read peer index from topology file: %s"
+msgstr "解析配置文件“%s”失败\n"
+
+#: src/testbed/testbed_api_topology.c:635
+#: src/testbed/testbed_api_topology.c:660
+msgid "Topology file need more peers than the given ones\n"
+msgstr ""
+
 #: src/testing/gnunet-testing.c:131
 #, fuzzy, c-format
 msgid "Could not extract hostkey %u (offset too large?)\n"
@@ -4249,59 +4354,59 @@
 msgid "name of the service to run"
 msgstr ""
 
-#: src/testing/testing.c:198
+#: src/testing/testing.c:199
 #, c-format
 msgid "Hostkeys file not found: %s\n"
 msgstr ""
 
-#: src/testing/testing.c:214
+#: src/testing/testing.c:215
 #, c-format
 msgid "Incorrect hostkey file format: %s\n"
 msgstr ""
 
-#: src/testing/testing.c:525
+#: src/testing/testing.c:526
 #, c-format
 msgid "Key number %u does not exist\n"
 msgstr ""
 
-#: src/testing/testing.c:535
+#: src/testing/testing.c:536
 #, fuzzy, c-format
 msgid "Error while decoding key %u\n"
 msgstr "解析 dscl 输出时出错。\n"
 
-#: src/testing/testing.c:848
+#: src/testing/testing.c:850
 #, fuzzy
 msgid "Failed to create configuration for peer (not enough free ports?)\n"
 msgstr "解析配置文件“%s”失败\n"
 
-#: src/testing/testing.c:859
+#: src/testing/testing.c:861
 #, c-format
 msgid ""
 "You attempted to create a testbed with more than %u hosts.  Please "
 "precompute more hostkeys first.\n"
 msgstr ""
 
-#: src/testing/testing.c:873
+#: src/testing/testing.c:875
 #, fuzzy, c-format
 msgid "Failed to initialize hostkey for peer %u\n"
 msgstr "初始化“%s”服务失败。\n"
 
-#: src/testing/testing.c:906
+#: src/testing/testing.c:908
 #, fuzzy, c-format
 msgid "Failed to write hostkey file for peer %u: %s\n"
 msgstr "发送消息失败。\n"
 
-#: src/testing/testing.c:924
+#: src/testing/testing.c:926
 #, fuzzy, c-format
 msgid "Failed to write configuration file `%s' for peer %u: %s\n"
 msgstr "解析配置文件“%s”失败\n"
 
-#: src/testing/testing.c:985
+#: src/testing/testing.c:997
 #, fuzzy, c-format
 msgid "Failed to start `%s': %s\n"
 msgstr "运行 %s失败:%s %d\n"
 
-#: src/testing/testing.c:1149
+#: src/testing/testing.c:1202
 #, fuzzy, c-format
 msgid "Failed to load configuration from %s\n"
 msgstr "解析配置文件“%s”失败\n"
@@ -4439,24 +4544,24 @@
 msgid "# disconnects due to blacklist"
 msgstr ""
 
-#: src/transport/gnunet-service-transport.c:177
+#: src/transport/gnunet-service-transport.c:182
 msgid "# bytes payload discarded due to not connected peer "
 msgstr ""
 
-#: src/transport/gnunet-service-transport.c:252
+#: src/transport/gnunet-service-transport.c:257
 msgid "# bytes total received"
 msgstr ""
 
-#: src/transport/gnunet-service-transport.c:299
+#: src/transport/gnunet-service-transport.c:304
 msgid "# bytes payload received"
 msgstr ""
 
-#: src/transport/gnunet-service-transport.c:604
+#: src/transport/gnunet-service-transport.c:609
 #, fuzzy, c-format
 msgid "Transport service could not access hostkey: %s. Exiting.\n"
 msgstr "找不到接口“%s”的一个 IP 地址。\n"
 
-#: src/transport/gnunet-service-transport.c:674
+#: src/transport/gnunet-service-transport.c:679
 msgid "Transport service is lacking key configuration settings.  Exiting.\n"
 msgstr ""
 
@@ -4482,7 +4587,7 @@
 msgid "# REQUEST CONNECT messages received"
 msgstr ""
 
-#: src/transport/gnunet-service-transport_hello.c:172
+#: src/transport/gnunet-service-transport_hello.c:175
 msgid "# refreshed my HELLO"
 msgstr ""
 
@@ -5072,14 +5177,14 @@
 msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2317
+#: src/transport/plugin_transport_udp.c:2345
 #, c-format
 msgid ""
 "UDP could not transmit message to `%s': Network seems down, please check "
 "your network configuration\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2331
+#: src/transport/plugin_transport_udp.c:2359
 #, c-format
 msgid ""
 "UDP could not transmit message to `%s': Please check your network "
@@ -5087,22 +5192,22 @@
 "IPv6 address\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2572
+#: src/transport/plugin_transport_udp.c:2600
 #, fuzzy
 msgid "Failed to open UDP sockets\n"
 msgstr "打开日志文件“%s”失败:%s\n"
 
-#: src/transport/plugin_transport_udp.c:2648
+#: src/transport/plugin_transport_udp.c:2676
 #, c-format
 msgid "Given `%s' option is out of range: %llu > %u\n"
 msgstr ""
 
-#: src/transport/plugin_transport_udp.c:2691
+#: src/transport/plugin_transport_udp.c:2719
 #, fuzzy, c-format
 msgid "Invalid IPv6 address: `%s'\n"
 msgstr "无效的进程优先级“%s”\n"
 
-#: src/transport/plugin_transport_unix.c:1333
+#: src/transport/plugin_transport_unix.c:1357
 #, fuzzy
 msgid "Failed to open UNIX sockets\n"
 msgstr "打开日志文件“%s”失败:%s\n"
@@ -5692,7 +5797,7 @@
 "variable.\n"
 msgstr "无法确定安装路径。请尝试设置“%s”\n"
 
-#: src/util/os_installation.c:653
+#: src/util/os_installation.c:699
 #, fuzzy, c-format
 msgid "Could not find binary `%s' in PATH!\n"
 msgstr "找不到主机“%s”的 IP:%s\n"
@@ -5776,22 +5881,22 @@
 msgid "Attempt to cancel dead task %llu!\n"
 msgstr ""
 
-#: src/util/server.c:431
+#: src/util/server.c:426
 #, fuzzy, c-format
 msgid "`%s' failed for port %d (%s).\n"
 msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n"
 
-#: src/util/server.c:440
+#: src/util/server.c:435
 #, c-format
 msgid "`%s' failed for port %d (%s): address already in use\n"
 msgstr ""
 
-#: src/util/server.c:451
+#: src/util/server.c:446
 #, fuzzy, c-format
 msgid "`%s' failed for `%.*s': address already in use\n"
 msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n"
 
-#: src/util/server.c:835
+#: src/util/server.c:830
 #, c-format
 msgid ""
 "Processing code for message of type %u did not call "

Modified: gnunet/src/consensus/Makefile.am
===================================================================
--- gnunet/src/consensus/Makefile.am    2012-11-28 16:14:35 UTC (rev 25153)
+++ gnunet/src/consensus/Makefile.am    2012-11-28 16:32:15 UTC (rev 25154)
@@ -31,9 +31,10 @@
   $(GN_LIBINTL)
 
 gnunet_service_consensus_SOURCES = \
- gnunet-service-consensus.cc
+ gnunet-service-consensus.c
 gnunet_service_consensus_LDADD = \
   $(top_builddir)/src/util/libgnunetutil.la \
+  $(top_builddir)/src/core/libgnunetcore.la \
   $(GN_LIBINTL) 
 
 libgnunetconsensus_la_SOURCES = \

Modified: gnunet/src/consensus/consensus_api.c
===================================================================
--- gnunet/src/consensus/consensus_api.c        2012-11-28 16:14:35 UTC (rev 
25153)
+++ gnunet/src/consensus/consensus_api.c        2012-11-28 16:32:15 UTC (rev 
25154)
@@ -124,7 +124,7 @@
   element.type = msg->element_type;
   element.size = msg->header.size - sizeof (struct 
GNUNET_CONSENSUS_ElementMessage);
   element.data = &msg[1];
-  consensus->new_element_cb(consensus->new_element_cls, &element);
+  consensus->new_element_cb (consensus->new_element_cls, &element);
 }
 
 static void
@@ -152,12 +152,15 @@
 {
   struct GNUNET_CONSENSUS_Handle *consensus = cls;
 
+  LOG (GNUNET_ERROR_TYPE_INFO, "received message from consensus service\n");
+
   if (msg == NULL)
   {
     /* Error, timeout, death */
+    LOG (GNUNET_ERROR_TYPE_ERROR, "error receiving\n");
     GNUNET_CLIENT_disconnect (consensus->client);
     consensus->client = NULL;
-    consensus->new_element_cb(NULL, NULL);
+    consensus->new_element_cb (NULL, NULL);
     if (NULL != consensus->idc)
     {
       consensus->idc(consensus->idc_cls, GNUNET_NO);
@@ -170,10 +173,10 @@
   switch (ntohs(msg->type))
   {
     case GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_RECEIVED_ELEMENT:
-      handle_new_element(consensus, (struct GNUNET_CONSENSUS_ElementMessage *) 
msg);
+      handle_new_element (consensus, (struct GNUNET_CONSENSUS_ElementMessage 
*) msg);
       break;
     case GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_CONCLUDE_DONE:
-      handle_conclude_done(consensus, (struct 
GNUNET_CONSENSUS_ConcludeDoneMessage *) msg);
+      handle_conclude_done (consensus, (struct 
GNUNET_CONSENSUS_ConcludeDoneMessage *) msg);
       break;
     default:
       LOG(GNUNET_ERROR_TYPE_WARNING, "did not understand message type sent by 
service, ignoring");
@@ -220,16 +223,16 @@
 
   msg->header.type = htons (GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_INSERT);
   msg->header.size = htons (msize);
-  memcpy(&msg[1],
-         consensus->insert_element->data,
-         consensus->insert_element->size);
+  memcpy (&msg[1],
+          consensus->insert_element->data,
+          consensus->insert_element->size);
 
 
   idc = consensus->idc;
   consensus->idc = NULL;
   idc_cls = consensus->idc_cls;
   consensus->idc_cls = NULL;
-  idc(idc_cls, GNUNET_YES);
+  idc (idc_cls, GNUNET_YES);
 
   return msize;
 }
@@ -253,10 +256,10 @@
   struct GNUNET_CONSENSUS_Handle *consensus;
   int msize;
 
-  LOG(GNUNET_ERROR_TYPE_DEBUG, "transmitting CLIENT_JOIN to service\n");
-
   GNUNET_assert (NULL != buf);
 
+  LOG (GNUNET_ERROR_TYPE_DEBUG, "transmitting join message\n");
+
   consensus = cls;
   consensus->th = NULL;
   consensus->joined = 1;
@@ -283,7 +286,6 @@
                                              GNUNET_NO, &transmit_insert, 
consensus);
   }
 
-
   GNUNET_CLIENT_receive (consensus->client, &message_handler, consensus,
                          GNUNET_TIME_UNIT_FOREVER_REL);
   
@@ -321,7 +323,7 @@
   msg->header.type = htons (GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_CONCLUDE);
   msg->header.size = htons (msize);
   msg->timeout =
-      
GNUNET_TIME_relative_hton(GNUNET_TIME_absolute_get_remaining(consensus->conclude_deadline));
+      GNUNET_TIME_relative_hton 
(GNUNET_TIME_absolute_get_remaining(consensus->conclude_deadline));
 
   return msize;
 }
@@ -386,7 +388,6 @@
   struct GNUNET_CONSENSUS_Handle *consensus;
   size_t join_message_size;
 
-
   consensus = GNUNET_malloc (sizeof (struct GNUNET_CONSENSUS_Handle));
   consensus->cfg = cfg;
   consensus->new_element_cb = new_element_cb;
@@ -394,15 +395,12 @@
   consensus->num_peers = num_peers;
   consensus->session_id = *session_id;
 
-
-
   if (0 == num_peers)
   {
     consensus->peers = NULL;
   }
   else if (num_peers > 0)
   {
-
     consensus->peers = GNUNET_memdup (peers, num_peers * sizeof (struct 
GNUNET_PeerIdentity));
   }
   else
@@ -410,7 +408,6 @@
     GNUNET_break (0);
   }
 
-
   consensus->client = GNUNET_CLIENT_connect ("consensus", cfg);
 
   GNUNET_assert (consensus->client != NULL);
@@ -424,7 +421,6 @@
                                            GNUNET_TIME_UNIT_FOREVER_REL,
                                            GNUNET_NO, &transmit_join, 
consensus);
 
-
   GNUNET_assert (consensus->th != NULL);
 
   return consensus;

Copied: gnunet/src/consensus/gnunet-service-consensus.c (from rev 25139, 
gnunet/src/consensus/gnunet-service-consensus.cc)
===================================================================
--- gnunet/src/consensus/gnunet-service-consensus.c                             
(rev 0)
+++ gnunet/src/consensus/gnunet-service-consensus.c     2012-11-28 16:32:15 UTC 
(rev 25154)
@@ -0,0 +1,608 @@
+/*
+      This file is part of GNUnet
+      (C) 2012 Christian Grothoff (and other contributing authors)
+
+      GNUnet is free software; you can redistribute it and/or modify
+      it under the terms of the GNU General Public License as published
+      by the Free Software Foundation; either version 2, or (at your
+      option) any later version.
+
+      GNUnet is distributed in the hope that it will be useful, but
+      WITHOUT ANY WARRANTY; without even the implied warranty of
+      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+      General Public License for more details.
+
+      You should have received a copy of the GNU General Public License
+      along with GNUnet; see the file COPYING.  If not, write to the
+      Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+      Boston, MA 02111-1307, USA.
+ */
+
+
+#include "platform.h"
+#include "gnunet_protocols.h"
+#include "gnunet_common.h"
+#include "gnunet_service_lib.h"
+#include "gnunet_consensus_service.h"
+#include "gnunet_core_service.h"
+#include "gnunet_container_lib.h"
+#include "consensus.h"
+
+
+struct ConsensusClient;
+
+static void
+send_next (struct ConsensusClient *cli);
+
+
+/**
+ * An element that is waiting to be transmitted to a client.
+ */
+struct PendingElement
+{
+  /**
+   * Pending elements are kept in a DLL.
+   */
+  struct PendingElement *next;
+
+  /**
+   * Pending elements are kept in a DLL.
+   */
+  struct PendingElement *prev;
+
+  /**
+   * The actual element
+   */
+  struct GNUNET_CONSENSUS_Element *element;
+};
+
+
+/**
+ * A consensus session consists of one or more local clients,
+ * as well as zero or more remote authorities.
+ */
+struct ConsensusSession
+{
+  /**
+   * Consensus sessions are kept in a DLL.
+   */
+  struct ConsensusSession *next;
+
+  /**
+   * Consensus sessions are kept in a DLL.
+   */
+  struct ConsensusSession *prev;
+
+  /**
+   * Consensus clients are kept in a DLL.
+   */
+  struct ConsensusClient *clients_head;
+
+  /**
+   * Consensus clients are kept in a DLL.
+   */
+  struct ConsensusClient *clients_tail;
+
+  /**
+  * Local consensus identification, chosen by clients.
+  */
+  struct GNUNET_HashCode *local_id;
+ 
+  /**
+  * Global consensus identification, computed
+  * from the local id and participating authorities.
+  */
+  struct GNUNET_HashCode *global_id;
+
+  /**
+   * Values in the consensus set of this session.
+   */
+  struct GNUNET_CONTAINER_MultiHashMap *values;
+};
+
+
+struct ConsensusClient
+{
+  /**
+   * Consensus clients are kept in a DLL.
+   */
+  struct ConsensusClient *next;
+  /**
+   * Consensus clients are kept in a DLL.
+   */
+  struct ConsensusClient *prev;
+
+  /**
+   * Corresponding server handle.
+   */
+  struct GNUNET_SERVER_Client *client;
+
+  /**
+   * Client wants to receive and send updates.
+   */
+  int begin;
+
+  /**
+   * Session this client belongs to
+   */
+  struct ConsensusSession *session;
+
+  /**
+   * Values in the consensus set of this client.
+   * Includes pending elements.
+   */
+  struct GNUNET_CONTAINER_MultiHashMap *values;
+
+  /**
+   * Elements that have not been set to the client yet.
+   */
+  struct PendingElement *pending_head;
+  /**
+   * Elements that have not been set to the client yet.
+   */
+  struct PendingElement *pending_tail;
+
+  /**
+   * Currently active transmit handle for sending to the client
+   */
+  struct GNUNET_SERVER_TransmitHandle *th;
+
+  /**
+   * Once conclude_requested is GNUNET_YES, the client may not
+   * insert any more values.
+   */
+  int conclude_requested;
+
+  /**
+   * Client has been informed about the conclusion.
+   */
+  int conclude_sent;
+};
+
+
+/**
+ * Linked list of sesstions this peer participates in.
+ */
+static struct ConsensusSession *sessions_head;
+
+/**
+ * Linked list of sesstions this peer participates in.
+ */
+static struct ConsensusSession *sessions_tail;
+
+/**
+ * Configuration of the consensus service.
+ */
+static const struct GNUNET_CONFIGURATION_Handle *cfg;
+
+/**
+ * Handle to the server for this service.
+ */
+static struct GNUNET_SERVER_Handle *srv;
+
+/**
+ * Peer that runs this service
+ */
+static struct GNUNET_PeerIdentity *my_peer;
+
+
+struct ConsensusClient *
+find_client (const struct GNUNET_SERVER_Client *srv_client)
+{
+  struct ConsensusSession *session;
+  struct ConsensusClient *client;
+
+  session = sessions_head;
+  while (NULL != session)
+  {
+    client = session->clients_head;
+    while (NULL != client)
+    {
+      if (client->client == srv_client)
+      {
+        return client;
+      }
+      client = client->next;
+    }
+    session = session->next;
+  }
+  return NULL;
+}
+
+static void
+disconnect_client (struct GNUNET_SERVER_Client *client)
+{
+  /* FIXME */
+}
+
+static void
+compute_global_id (struct GNUNET_HashCode *dst,
+                   const struct GNUNET_HashCode *local_id,
+                   const struct GNUNET_PeerIdentity *peers,
+                   int num_peers)
+{
+  *dst = *local_id;
+
+  /* FIXME: hash other peers into global id */
+}
+
+
+
+/**
+ * Iterator over hash map entries.
+ *
+ * @param cls closure, the client
+ * @param key current key code
+ * @param value value in the hash map
+ * @return GNUNET_YES if we should continue to
+ *         iterate,
+ *         GNUNET_NO if not.
+ */
+int
+update_pending (void *cls,
+                 const struct GNUNET_HashCode *key,
+                 void *value)
+{
+  struct ConsensusClient *cli;
+  struct GNUNET_CONSENSUS_Element *element;
+  struct PendingElement *pending_element;
+
+  cli = (struct ConsensusClient *) cls;
+  element = (struct GNUNET_CONSENSUS_Element *) value;
+  pending_element = GNUNET_malloc (sizeof (struct PendingElement));
+  pending_element->element = element;
+
+  if (GNUNET_NO == GNUNET_CONTAINER_multihashmap_contains (cli->values, key))
+  {
+    GNUNET_CONTAINER_DLL_insert_tail (cli->pending_head, cli->pending_tail, 
pending_element);
+    GNUNET_CONTAINER_multihashmap_put (cli->values, key, element, 
GNUNET_CONTAINER_MULTIHASHMAPOPTION_UNIQUE_ONLY);
+  }
+  
+  return GNUNET_YES;
+}
+
+
+
+
+static size_t
+transmit_pending (void *cls, size_t size, void *buf)
+{
+  struct GNUNET_CONSENSUS_Element *element;
+  struct GNUNET_CONSENSUS_ElementMessage *msg;
+  struct ConsensusClient *cli;
+
+  cli = (struct ConsensusClient *) cls;
+  msg = (struct GNUNET_CONSENSUS_ElementMessage *) buf;
+  element = cli->pending_head->element;
+
+  GNUNET_assert (NULL != element);
+
+  cli->th = NULL;
+
+  msg->element_type = element->type;
+  msg->header.type = htons 
(GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_RECEIVED_ELEMENT);
+  msg->header.size = htons (sizeof (struct GNUNET_CONSENSUS_ElementMessage) + 
element->size);
+  memcpy (&msg[1], &element[1], element->size);
+
+
+  cli->pending_head = cli->pending_head->next;
+
+  send_next (cli);
+
+  return sizeof (struct GNUNET_CONSENSUS_ElementMessage) + element->size;
+}
+
+
+static size_t
+transmit_conclude_done (void *cls, size_t size, void *buf)
+{
+  struct GNUNET_CONSENSUS_ConcludeDoneMessage *msg;
+
+  msg = (struct GNUNET_CONSENSUS_ConcludeDoneMessage *) buf;
+  msg->header.type = htons (GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_CONCLUDE);
+  msg->header.size = htons (sizeof (struct 
GNUNET_CONSENSUS_ConcludeDoneMessage));
+  msg->num_peers = htons (0);
+
+  return sizeof (struct GNUNET_CONSENSUS_ConcludeDoneMessage);
+}
+
+
+/**
+ * Schedule sending the next message (if there is any) to a client.
+ *
+ * @param cli the client to send the next message to
+ */
+static void
+send_next (struct ConsensusClient *cli)
+{
+  int msize;
+
+  GNUNET_assert (NULL != cli);
+
+  if (NULL != cli->th)
+  {
+    return;
+  }
+
+  if ((cli->conclude_requested == GNUNET_YES) && (cli->conclude_sent == 
GNUNET_NO))
+  {
+    /* just the conclude message with no other authorities in the dummy */
+    msize = sizeof (struct GNUNET_CONSENSUS_ConcludeMessage);
+    cli->th =
+        GNUNET_SERVER_notify_transmit_ready (cli->client, msize,
+                                             GNUNET_TIME_UNIT_FOREVER_REL, 
&transmit_conclude_done, cli);
+    cli->conclude_sent = GNUNET_YES;
+  }
+  else if (NULL != cli->pending_head)
+  {
+    msize = cli->pending_head->element->size + sizeof (struct 
GNUNET_CONSENSUS_ElementMessage);
+    cli->th =
+        GNUNET_SERVER_notify_transmit_ready (cli->client, msize,
+                                             GNUNET_TIME_UNIT_FOREVER_REL, 
&transmit_pending, cli);
+  }
+}
+
+
+/**
+ * Called when a client wants to join a consensus session.
+ */
+static void
+client_join (void *cls,
+             struct GNUNET_SERVER_Client *client,
+             const struct GNUNET_MessageHeader *m)
+{
+  struct GNUNET_HashCode global_id;
+  const struct GNUNET_CONSENSUS_JoinMessage *msg;
+  struct ConsensusSession *session;
+  struct ConsensusClient *consensus_client;
+
+  GNUNET_log (GNUNET_ERROR_TYPE_INFO, "join\n");
+
+  fprintf(stderr, "foobar\n");
+
+  GNUNET_log (GNUNET_ERROR_TYPE_INFO, "client joined\n");
+
+  msg = (struct GNUNET_CONSENSUS_JoinMessage *) m;
+  
+  /* kill the client if it already is in a session */
+  if (NULL != find_client (client))
+  {
+    GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "client tried to join twice\n");
+    disconnect_client (client);
+    return;
+  }
+
+  consensus_client = GNUNET_malloc (sizeof (struct ConsensusClient));
+  consensus_client->client = client;
+  consensus_client->begin = GNUNET_NO;
+  consensus_client->values = GNUNET_CONTAINER_multihashmap_create (4, 
GNUNET_NO);
+
+  GNUNET_SERVER_client_keep (client);
+
+  GNUNET_assert (NULL != consensus_client->values);
+
+  compute_global_id (&global_id, &msg->session_id, (struct GNUNET_PeerIdentity 
*) &m[1], msg->num_peers);
+
+  /* look if we already have a session for this local id */
+  session = sessions_head;
+  while (NULL != session)
+  {
+    if (0 == memcmp(&global_id, session->global_id, sizeof (struct 
GNUNET_HashCode)))
+    {
+      GNUNET_CONTAINER_DLL_insert (session->clients_head, 
session->clients_tail, consensus_client);
+      GNUNET_SERVER_receive_done (client, GNUNET_OK);
+      return;
+    }
+    session = session->next;
+  }
+
+  /* session does not exist yet, create it */
+  session = GNUNET_malloc (sizeof (struct ConsensusSession));
+  session->local_id = GNUNET_memdup (&msg->session_id, sizeof (struct 
GNUNET_HashCode));
+  session->global_id = GNUNET_memdup (&global_id, sizeof (struct 
GNUNET_HashCode));
+  session->values = GNUNET_CONTAINER_multihashmap_create (4, GNUNET_NO);
+
+  GNUNET_CONTAINER_DLL_insert (sessions_head, sessions_tail, session);
+  GNUNET_CONTAINER_DLL_insert (session->clients_head, session->clients_tail, 
consensus_client);
+
+  GNUNET_log (GNUNET_ERROR_TYPE_INFO, "created new session");
+
+  GNUNET_SERVER_receive_done (client, GNUNET_OK);
+}
+
+
+/**
+ * Called when a client performs an insert operation.
+ */
+void
+client_insert (void *cls,
+             struct GNUNET_SERVER_Client *client,
+             const struct GNUNET_MessageHeader *m)
+{
+  struct ConsensusClient *consensus_client;
+  struct GNUNET_CONSENSUS_ElementMessage *msg;
+  struct GNUNET_CONSENSUS_Element *element;
+  struct PendingElement *pending_element;
+  struct GNUNET_HashCode key;
+  int element_size;
+
+  GNUNET_log(GNUNET_ERROR_TYPE_INFO, "insert\n");
+
+  consensus_client = find_client (client);
+
+  if (NULL == consensus_client)
+  {
+    GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "client tried to insert, but client 
is not in any session\n");
+    GNUNET_SERVER_client_disconnect (client);
+    return;
+  }
+
+  msg = (struct GNUNET_CONSENSUS_ElementMessage *) m;
+  element_size = msg->header.size - sizeof (struct 
GNUNET_CONSENSUS_ElementMessage);
+
+  element = GNUNET_malloc (sizeof (struct GNUNET_CONSENSUS_Element) + 
element_size);
+
+  element->type = msg->element_type;
+  element->size = element_size;
+  memcpy (&element[1], &msg[1], element_size);
+  element->data = &element[1];
+
+  GNUNET_CRYPTO_hash (element, element_size, &key);
+
+  GNUNET_CONTAINER_multihashmap_put (consensus_client->session->values, &key, 
element,
+                                     
GNUNET_CONTAINER_MULTIHASHMAPOPTION_REPLACE);
+  GNUNET_CONTAINER_multihashmap_put (consensus_client->values, &key, element,
+                                     
GNUNET_CONTAINER_MULTIHASHMAPOPTION_REPLACE);
+
+  /* send the new value to all clients that don't have it */
+
+  consensus_client = consensus_client->session->clients_head;
+  while (NULL != consensus_client)
+  {
+    if (GNUNET_NO == GNUNET_CONTAINER_multihashmap_contains 
(consensus_client->values, &key))
+    {
+      pending_element = GNUNET_malloc (sizeof (struct PendingElement));
+      pending_element->element = element;
+      GNUNET_CONTAINER_DLL_insert_tail (consensus_client->pending_head, 
consensus_client->pending_tail, pending_element);
+      GNUNET_CONTAINER_multihashmap_put (consensus_client->values, &key, 
element,
+                                         
GNUNET_CONTAINER_MULTIHASHMAPOPTION_UNIQUE_ONLY);
+      send_next (consensus_client);
+    }
+  }
+
+  GNUNET_SERVER_receive_done (client, GNUNET_OK);
+}
+
+
+/**
+ * Called when a client wants to begin
+ */
+void
+client_begin (void *cls,
+             struct GNUNET_SERVER_Client *client,
+             const struct GNUNET_MessageHeader *message)
+{
+  struct ConsensusClient *consensus_client;
+
+  consensus_client = find_client (client);
+
+  if (NULL == consensus_client)
+  {
+    GNUNET_SERVER_client_disconnect (client);
+    return;
+  }
+
+  consensus_client->begin = GNUNET_YES;
+
+  GNUNET_CONTAINER_multihashmap_iterate (consensus_client->session->values, 
&update_pending, NULL);
+  send_next (consensus_client);
+
+  GNUNET_SERVER_receive_done (client, GNUNET_OK);
+}
+
+
+
+/**
+ * Called when a client performs the conclude operation.
+ */
+void
+client_conclude (void *cls,
+             struct GNUNET_SERVER_Client *client,
+             const struct GNUNET_MessageHeader *message)
+{
+  struct ConsensusClient *consensus_client;
+
+  consensus_client = find_client (client);
+  if (NULL == consensus_client)
+  {
+    GNUNET_SERVER_client_disconnect (client);
+    return;
+  }
+  consensus_client->conclude_requested = GNUNET_YES;
+  send_next (consensus_client);
+
+  GNUNET_SERVER_receive_done (client, GNUNET_OK);
+}
+
+/**
+ * Task that disconnects from core.
+ *
+ * @param cls core handle
+ * @param tc context information (why was this task triggered now)
+ */
+static void
+disconnect_core (void *cls,
+                 const struct GNUNET_SCHEDULER_TaskContext *tc)
+{
+  struct GNUNET_CORE_Handle *core;
+  core = (struct GNUNET_CORE_Handle *) cls;
+  GNUNET_CORE_disconnect (core);
+
+  GNUNET_log(GNUNET_ERROR_TYPE_INFO, "disconnected from core\n");
+}
+
+
+static void
+core_startup (void *cls,
+              struct GNUNET_CORE_Handle *core,
+              const struct GNUNET_PeerIdentity *peer)
+{
+  static const struct GNUNET_SERVER_MessageHandler handlers[] = {
+    {&client_join, NULL, GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_JOIN, 0},
+    {&client_insert, NULL, GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_INSERT, 0},
+    {&client_begin, NULL, GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_BEGIN,
+        sizeof (struct GNUNET_MessageHeader)},
+    {&client_conclude, NULL, GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_CONCLUDE,
+        sizeof (struct GNUNET_CONSENSUS_ConcludeMessage)},
+    {NULL, NULL, 0, 0}
+  };
+
+
+  GNUNET_SERVER_add_handlers (srv, handlers);
+
+  my_peer = GNUNET_memdup(peer, sizeof (struct GNUNET_PeerIdentity));
+
+  GNUNET_SCHEDULER_add_now (&disconnect_core, core);
+
+  GNUNET_log(GNUNET_ERROR_TYPE_INFO, "connected to core\n");
+}
+
+
+/**
+ * Process consensus requests.
+ *
+ * @param cls closure
+ * @param server the initialized server
+ * @param c configuration to use
+ */
+static void
+run (void *cls, struct GNUNET_SERVER_Handle *server, const struct 
GNUNET_CONFIGURATION_Handle *c)
+{
+  struct GNUNET_CORE_Handle *my_core;
+  static const struct GNUNET_CORE_MessageHandler handlers[] = {
+    {NULL, 0, 0}
+  };
+
+  GNUNET_log(GNUNET_ERROR_TYPE_INFO, "run\n");
+
+  cfg = c;
+  srv = server;
+  my_core = GNUNET_CORE_connect (c, NULL, &core_startup, NULL, NULL, NULL, 
GNUNET_NO, NULL, GNUNET_NO, handlers);
+  GNUNET_assert (NULL != my_core);
+}
+
+
+/**
+ * The main function for the statistics service.
+ *
+ * @param argc number of arguments from the command line
+ * @param argv command line arguments
+ * @return 0 ok, 1 on error
+ */
+int
+main (int argc, char *const *argv)
+{
+  return (GNUNET_OK ==
+          GNUNET_SERVICE_run (argc, argv, "consensus", 
GNUNET_SERVICE_OPTION_NONE, &run, NULL)) ? 0 : 1;
+}
+

Deleted: gnunet/src/consensus/gnunet-service-consensus.cc
===================================================================
--- gnunet/src/consensus/gnunet-service-consensus.cc    2012-11-28 16:14:35 UTC 
(rev 25153)
+++ gnunet/src/consensus/gnunet-service-consensus.cc    2012-11-28 16:32:15 UTC 
(rev 25154)
@@ -1,124 +0,0 @@
-/*
-      This file is part of GNUnet
-      (C) 2012 Christian Grothoff (and other contributing authors)
-
-      GNUnet is free software; you can redistribute it and/or modify
-      it under the terms of the GNU General Public License as published
-      by the Free Software Foundation; either version 2, or (at your
-      option) any later version.
-
-      GNUnet is distributed in the hope that it will be useful, but
-      WITHOUT ANY WARRANTY; without even the implied warranty of
-      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-      General Public License for more details.
-
-      You should have received a copy of the GNU General Public License
-      along with GNUnet; see the file COPYING.  If not, write to the
-      Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-      Boston, MA 02111-1307, USA.
- */
-
-
-#include <cstdio>
-#include <iostream>
-#include <stdint.h>
-
-#include "platform.h"
-#include "gnunet_protocols.h"
-#include "gnunet_common.h"
-#include "gnunet_service_lib.h"
-#include "gnunet_consensus_service.h"
-#include "consensus.h"
-
-using namespace std;
-
-
-
-struct ConsensusSession
-{
-
-};
-
-
-
-struct ConsensusClient
-{
-
-};
-
-
-
-/**
- * Called when a client wants to join a consensus session.
- */
-void
-client_join (void *cls,
-             struct GNUNET_SERVER_Client *client,
-             const struct GNUNET_MessageHeader *message)
-{
-  GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "client joined");
-}
-
-
-/**
- * Called when a client performs an insert operation.
- */
-void
-client_insert (void *cls,
-             struct GNUNET_SERVER_Client *client,
-             const struct GNUNET_MessageHeader *message)
-{
-
-}
-
-
-
-/**
- * Called when a client performs the conclude operation.
- */
-void
-client_conclude (void *cls,
-             struct GNUNET_SERVER_Client *client,
-             const struct GNUNET_MessageHeader *message)
-{
-
-}
-
-
-
-/**
- * Process consensus requests.
- *
- * @param cls closure
- * @param server the initialized server
- * @param c configuration to use
- */
-static void
-run (void *cls, struct GNUNET_SERVER_Handle *server, const struct 
GNUNET_CONFIGURATION_Handle *c)
-{
-  static const struct GNUNET_SERVER_MessageHandler handlers[] = {
-    {&client_join, NULL, GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_JOIN, 0},
-    {&client_insert, NULL, GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_INSERT, 0},
-    {&client_conclude, NULL, GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_CONCLUDE,
-        sizeof (struct GNUNET_CONSENSUS_ConcludeMessage)},
-    {NULL, NULL, 0, 0}
-  };
-
-  GNUNET_SERVER_add_handlers(server, handlers);
-}
-
-
-/**
- * The main function for the statistics service.
- *
- * @param argc number of arguments from the command line
- * @param argv command line arguments
- * @return 0 ok, 1 on error
- */
-int
-main (int argc, char *const *argv)
-{
-  return (GNUNET_OK ==
-          GNUNET_SERVICE_run (argc, argv, "consensus", 
GNUNET_SERVICE_OPTION_NONE, &run, NULL)) ? 0 : 1;
-}
-

Modified: gnunet/src/consensus/test_consensus.conf
===================================================================
--- gnunet/src/consensus/test_consensus.conf    2012-11-28 16:14:35 UTC (rev 
25153)
+++ gnunet/src/consensus/test_consensus.conf    2012-11-28 16:32:15 UTC (rev 
25154)
@@ -1,9 +1,10 @@
 [consensus]
 AUTOSTART = YES
-# PORT = 2103
+PORT = 2103
 HOSTNAME = localhost
 HOME = $SERVICEHOME
 BINARY = gnunet-service-consensus
+#PREFIX = gdbserver :12345
 ACCEPT_FROM = 127.0.0.1;
 ACCEPT_FROM6 = ::1;
 UNIXPATH = /tmp/gnunet-service-consensus.sock
@@ -11,5 +12,10 @@
 UNIX_MATCH_GID = YES
 OPTIONS = -LDEBUG
 
+
 [transport]
 OPTIONS = -LERROR
+
+
+[arm]
+DEFAULTSERVICES = core

Modified: gnunet/src/consensus/test_consensus_api.c
===================================================================
--- gnunet/src/consensus/test_consensus_api.c   2012-11-28 16:14:35 UTC (rev 
25153)
+++ gnunet/src/consensus/test_consensus_api.c   2012-11-28 16:32:15 UTC (rev 
25154)
@@ -27,19 +27,51 @@
 #include "gnunet_testing_lib-new.h"
 
 
-static struct GNUNET_CONSENSUS_Handle *consensus;
+static struct GNUNET_CONSENSUS_Handle *consensus1;
+static struct GNUNET_CONSENSUS_Handle *consensus2;
 
+static int concluded1;
+static int concluded2;
+
+static int insert1;
+static int insert2;
+
 static struct GNUNET_HashCode session_id;
 
 
-void
+static void conclude_done (void *cls, 
+                           unsigned int num_peers_in_consensus,
+                           const struct GNUNET_PeerIdentity 
*peers_in_consensus)
+{
+  struct GNUNET_CONSENSUS_Handle *consensus;
+  consensus = (struct GNUNET_CONSENSUS_Handle *) cls;
+  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "concluded\n");
+}
+
+static void
 on_new_element (void *cls,
                 struct GNUNET_CONSENSUS_Element *element)
 {
+  struct GNUNET_CONSENSUS_Handle *consensus;
+
+  GNUNET_assert (NULL != element);
+
+  consensus = *(struct GNUNET_CONSENSUS_Handle **) cls;
+
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "received new element\n");
+
+  GNUNET_CONSENSUS_conclude (consensus, GNUNET_TIME_UNIT_FOREVER_REL, 
&conclude_done, consensus);
+
 }
 
+static void
+insert_done (void *cls, int success)
+{
+  GNUNET_log (GNUNET_ERROR_TYPE_INFO, "insert done\n");
+}
 
+
+
 static void
 run (void *cls, 
      const struct GNUNET_CONFIGURATION_Handle *cfg,
@@ -47,10 +79,24 @@
 {
   char *str = "foo";
 
+  struct GNUNET_CONSENSUS_Element el1 = {"foo", 4, 0};
+  struct GNUNET_CONSENSUS_Element el2 = {"bar", 4, 0};
+
+  GNUNET_log_setup ("test_consensus_api",
+                    "DEBUG",
+                    NULL);
+
+  GNUNET_log (GNUNET_ERROR_TYPE_INFO, "testing consensus api\n");
+
   GNUNET_CRYPTO_hash (str, strlen (str), &session_id);
-  consensus = GNUNET_CONSENSUS_create (cfg, 0, NULL, &session_id, 
on_new_element, cls);
-  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Connecting to consensus service.\n");
-  GNUNET_assert (consensus != NULL);
+  consensus1 = GNUNET_CONSENSUS_create (cfg, 0, NULL, &session_id, 
on_new_element, &consensus1);
+  /*
+  consensus2 = GNUNET_CONSENSUS_create (cfg, 0, NULL, &session_id, 
on_new_element, &consensus2);
+  GNUNET_assert (consensus1 != NULL);
+  GNUNET_assert (consensus2 != NULL);
+  GNUNET_CONSENSUS_insert (consensus1, &el1, &insert_done, &consensus1);
+  GNUNET_CONSENSUS_insert (consensus2, &el2, &insert_done, &consensus2);
+  */
 }
 
 
@@ -59,12 +105,6 @@
 {
   int ret;
 
-  GNUNET_log_setup ("test_consensus_api",
-                    "DEBUG",
-                    NULL);
-
-  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "testing consensus api\n");
-
   ret = GNUNET_TESTING_peer_run ("test_consensus_api",
                                  "test_consensus.conf",
                                  &run, NULL);

Modified: gnunet/src/include/gnunet_consensus_service.h
===================================================================
--- gnunet/src/include/gnunet_consensus_service.h       2012-11-28 16:14:35 UTC 
(rev 25153)
+++ gnunet/src/include/gnunet_consensus_service.h       2012-11-28 16:32:15 UTC 
(rev 25154)
@@ -66,6 +66,8 @@
 /**
  * Called when a new element was received from another peer, or an error 
occured.
  *
+ * May deliver duplicate values.
+ *
  * Elements given to a consensus operation by the local peer are NOT given
  * to this callback.
  *

Modified: gnunet/src/include/gnunet_protocols.h
===================================================================
--- gnunet/src/include/gnunet_protocols.h       2012-11-28 16:14:35 UTC (rev 
25153)
+++ gnunet/src/include/gnunet_protocols.h       2012-11-28 16:32:15 UTC (rev 
25154)
@@ -1636,10 +1636,10 @@
 #define GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_INSERT 521
 
 /**
- * The has accepted the inserted element and is ready to receive new elements.
- * Sent by service to client.
+ * Begin accepting new elements from other participants.
+ * Sent by client to service.
  */
-#define GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_INSERT_ACK 522
+#define GNUNET_MESSAGE_TYPE_CONSENSUS_CLIENT_BEGIN 522
 
 /**
  * Sent by service when a new element is added.




reply via email to

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