msgstr ""
"Project-Id-Version: GNUnet 0.7.0b\n"
"Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n"
-"POT-Creation-Date: 2011-11-26 14:53+0100\n"
+"POT-Creation-Date: 2011-11-29 21:38+0100\n"
"PO-Revision-Date: 2006-03-17 21:37+0100\n"
"Last-Translator: Nils Durner <durner@gnunet.org>\n"
"Language-Team: German <de@li.org>\n"
#: src/datacache/plugin_datacache_mysql.c:517
#: src/datacache/plugin_datacache_mysql.c:526
#: src/datacache/plugin_datacache_mysql.c:598
-#: src/datacache/plugin_datacache_mysql.c:614 src/include/gnunet_common.h:389
-#: src/include/gnunet_common.h:396
+#: src/datacache/plugin_datacache_mysql.c:614 src/include/gnunet_common.h:394
+#: src/include/gnunet_common.h:401
#, c-format
msgid "`%s' failed at %s:%d with error: %s\n"
msgstr "`%s' schlug bei %s:%d mit dem Fehler %s fehl\n"
msgid "Peer `%s'\n"
msgstr "Ich bin Peer `%s'.\n"
-#: src/core/gnunet-core-list-connections.c:167
-#: src/peerinfo-tool/gnunet-peerinfo.c:199
+#: src/core/gnunet-core-list-connections.c:178
+#: src/peerinfo-tool/gnunet-peerinfo.c:197
#, fuzzy, c-format
msgid "Invalid command line argument `%s'\n"
msgstr "Ungültige Kommandozeilen Parameter:\n"
-#: src/core/gnunet-core-list-connections.c:188
-#: src/peerinfo-tool/gnunet-peerinfo.c:257
+#: src/core/gnunet-core-list-connections.c:199
+#: src/peerinfo-tool/gnunet-peerinfo.c:255
msgid "don't resolve host names"
msgstr ""
-#: src/core/gnunet-core-list-connections.c:195
+#: src/core/gnunet-core-list-connections.c:206
#, fuzzy
msgid "Print information about connected peers."
msgstr "Informationen über andere GNUnet Knoten ausgeben."
-#: src/core/gnunet-service-core_clients.c:357
+#: src/core/gnunet-service-core_clients.c:359
#, fuzzy
msgid "# send requests dropped (disconnected)"
msgstr "# gap Anfragen verworfen: Kollision in RT"
-#: src/core/gnunet-service-core_clients.c:462
+#: src/core/gnunet-service-core_clients.c:464
#, fuzzy
msgid "# messages discarded (session disconnected)"
msgstr "# defragmentierter Nachrichten"
-#: src/core/gnunet-service-core_clients.c:800
+#: src/core/gnunet-service-core_clients.c:801
#, fuzzy, c-format
msgid "# bytes of messages of type %u received"
msgstr "# Bytes Rauschen empfangen"
msgstr "# Bytes entschlüsselt"
#: src/core/gnunet-service-core_kx.c:602 src/dv/gnunet-service-dv.c:3002
-#: src/hostlist/hostlist-server.c:436 src/peerinfo-tool/gnunet-peerinfo.c:156
+#: src/hostlist/hostlist-server.c:436 src/peerinfo-tool/gnunet-peerinfo.c:154
#, fuzzy, c-format
msgid "Error in communication with PEERINFO service\n"
msgstr "Informationen über andere GNUnet Knoten ausgeben."
#: src/core/gnunet-service-core_kx.c:1539
#: src/transport/gnunet-service-transport.c:537
-#: src/hostlist/hostlist-server.c:555 src/peerinfo-tool/gnunet-peerinfo.c:207
+#: src/hostlist/hostlist-server.c:555 src/peerinfo-tool/gnunet-peerinfo.c:205
#, fuzzy, c-format
msgid "Could not access PEERINFO service. Exiting.\n"
msgstr "Auf die Namespace Informationen konnte nicht zugegriffen werden.\n"
msgid "Use --help to get a list of options.\n"
msgstr "Verwenden Sie --help, um eine Liste der Optionen zu erhalten.\n"
-#: src/util/scheduler.c:860
+#: src/util/scheduler.c:870
msgid "Looks like we're busy waiting...\n"
msgstr ""
-#: src/util/scheduler.c:990
+#: src/util/scheduler.c:1000
#, c-format
msgid "Attempt to cancel dead task %llu!\n"
msgstr ""
msgid "RSA signature verification failed at %s:%d: %s\n"
msgstr "RSA Signaturüberprüfung fehlgeschlagen bei %s:%d: %s\n"
-#: src/nse/gnunet-nse-profiler.c:647 src/dht/gnunet-dht-get.c:213
+#: src/nse/gnunet-nse-profiler.c:634 src/dht/gnunet-dht-get.c:213
#: src/dht/gnunet-dht-put.c:184 src/fs/gnunet-unindex.c:169
#: src/fs/gnunet-search.c:297 src/fs/gnunet-publish.c:591
#: src/fs/gnunet-download.c:263
msgid "be verbose (print progress information)"
msgstr ""
-#: src/nse/gnunet-nse-profiler.c:665
+#: src/nse/gnunet-nse-profiler.c:652
#, fuzzy
msgid "Measure quality and performance of the NSE service."
msgstr "Auf den Dienst konnte nicht zugegriffen werden"
-#: src/nse/gnunet-service-nse.c:904
+#: src/nse/gnunet-service-nse.c:902
#, c-format
msgid "Proof of work invalid: %llu!\n"
msgstr ""
-#: src/nse/gnunet-service-nse.c:1329 src/nse/gnunet-service-nse.c:1348
-#: src/nse/gnunet-service-nse.c:1369
+#: src/nse/gnunet-service-nse.c:1326 src/nse/gnunet-service-nse.c:1345
+#: src/nse/gnunet-service-nse.c:1366
msgid "NSE service is lacking key configuration settings. Exiting.\n"
msgstr ""
-#: src/nse/gnunet-service-nse.c:1336
+#: src/nse/gnunet-service-nse.c:1333
#, fuzzy
msgid "Invalid work requirement for NSE service. Exiting.\n"
msgstr "Ungültige Parameter. Abbruch.\n"
-#: src/nse/gnunet-service-nse.c:1357
+#: src/nse/gnunet-service-nse.c:1354
#, fuzzy
msgid "NSE service could not access hostkey. Exiting.\n"
msgstr "Auf die Namespace Informationen konnte nicht zugegriffen werden.\n"
msgstr "Option `%s' macht keinen Sinn ohne die Option `%s'.\n"
#: src/fs/gnunet-publish.c:393 src/fs/gnunet-publish.c:400
-#: src/transport/gnunet-transport.c:477
+#: src/transport/gnunet-transport.c:510
#, c-format
msgid "Option `%s' makes no sense without option `%s'.\n"
msgstr "Option `%s' macht keinen Sinn ohne die Option `%s'.\n"
#: src/fs/gnunet-service-fs_cp.c:615 src/fs/gnunet-service-fs_cp.c:1543
#: src/transport/gnunet-service-transport_neighbours.c:938
#: src/transport/gnunet-service-transport_neighbours.c:943
-#: src/transport/gnunet-service-transport_neighbours.c:1266
-#: src/transport/gnunet-service-transport_neighbours.c:2354
-#: src/transport/gnunet-service-transport_neighbours.c:2425
+#: src/transport/gnunet-service-transport_neighbours.c:1269
+#: src/transport/gnunet-service-transport_neighbours.c:2382
+#: src/transport/gnunet-service-transport_neighbours.c:2453
#: src/topology/gnunet-daemon-topology.c:654
#: src/topology/gnunet-daemon-topology.c:756
#, fuzzy
#: src/fs/gnunet-service-fs.c:583 src/topology/gnunet-daemon-topology.c:1290
#: src/topology/gnunet-daemon-topology.c:1297
-#: src/hostlist/gnunet-daemon-hostlist.c:290
+#: src/hostlist/gnunet-daemon-hostlist.c:295
#, fuzzy, c-format
msgid "Failed to connect to `%s' service.\n"
msgstr "`%s' Dienst konnte nicht initialisiert werden.\n"
msgid "# peers disconnected due to global disconnect"
msgstr "# Knotenankündigungen empfangen"
-#: src/transport/gnunet-service-transport_neighbours.c:1774
-#: src/transport/gnunet-service-transport_neighbours.c:1795
+#: src/transport/gnunet-service-transport_neighbours.c:1800
+#: src/transport/gnunet-service-transport_neighbours.c:1821
#, fuzzy
msgid "# messages not sent (no such peer or not connected)"
msgstr "# defragmentierter Nachrichten"
-#: src/transport/gnunet-service-transport_neighbours.c:1811
+#: src/transport/gnunet-service-transport_neighbours.c:1837
#, fuzzy
msgid "# bytes in message queue for other peers"
msgstr "# Bytes ausgehender Nachrichten verworfen"
-#: src/transport/gnunet-service-transport_neighbours.c:1863
+#: src/transport/gnunet-service-transport_neighbours.c:1889
#, fuzzy
msgid "# messages discarded due to lack of neighbour record"
msgstr "# defragmentierter Nachrichten"
-#: src/transport/gnunet-service-transport_neighbours.c:1899
+#: src/transport/gnunet-service-transport_neighbours.c:1925
#, fuzzy
msgid "# bandwidth quota violations by other peers"
msgstr "Verfolgt die Bandbreitennutzung von gnunetd"
-#: src/transport/gnunet-service-transport_neighbours.c:1917
+#: src/transport/gnunet-service-transport_neighbours.c:1943
msgid "# ms throttling suggested"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1946
+#: src/transport/gnunet-service-transport_neighbours.c:1972
#, fuzzy
msgid "# KEEPALIVE messages discarded (not connected)"
msgstr "# defragmentierter Nachrichten"
-#: src/transport/gnunet-service-transport_neighbours.c:1995
+#: src/transport/gnunet-service-transport_neighbours.c:2023
#, fuzzy
msgid "# KEEPALIVE_RESPONSE messages discarded (not connected)"
msgstr "# defragmentierter Nachrichten"
-#: src/transport/gnunet-service-transport_neighbours.c:2003
+#: src/transport/gnunet-service-transport_neighbours.c:2031
#, fuzzy
msgid "# KEEPALIVE_RESPONSE messages discarded (not expected)"
msgstr "# defragmentierter Nachrichten"
-#: src/transport/gnunet-service-transport_neighbours.c:2064
+#: src/transport/gnunet-service-transport_neighbours.c:2092
msgid "# SET QUOTA messages ignored (no such peer)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2082
+#: src/transport/gnunet-service-transport_neighbours.c:2110
msgid "# disconnects due to quota of 0"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2200
+#: src/transport/gnunet-service-transport_neighbours.c:2228
msgid "# disconnect messages ignored (old format)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2213
+#: src/transport/gnunet-service-transport_neighbours.c:2241
msgid "# disconnect messages ignored (timestamp)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2289
+#: src/transport/gnunet-service-transport_neighbours.c:2317
#, fuzzy
msgid "# unexpected CONNECT_ACK messages (no peer)"
msgstr "COUNT Nachrichten versenden"
-#: src/transport/gnunet-service-transport_neighbours.c:2304
+#: src/transport/gnunet-service-transport_neighbours.c:2332
#, fuzzy
msgid "# unexpected CONNECT_ACK messages"
msgstr "COUNT Nachrichten versenden"
-#: src/transport/gnunet-service-transport_neighbours.c:2402
+#: src/transport/gnunet-service-transport_neighbours.c:2430
#, fuzzy
msgid "# unexpected ACK messages"
msgstr "# verschlüsselter PONG Nachrichten gesendet"
msgid "# refreshed my HELLO"
msgstr ""
-#: src/transport/plugin_transport_udp.c:1518
+#: src/transport/plugin_transport_udp.c:1520
#, fuzzy
msgid "# IPv4 broadcast HELLO beacons received via udp"
msgstr "# verschlüsselter PONG Nachrichten empfangen"
-#: src/transport/plugin_transport_udp.c:1555
+#: src/transport/plugin_transport_udp.c:1557
#, fuzzy
msgid "# IPv6 multicast HELLO beacons received via udp"
msgstr "# verschlüsselter PONG Nachrichten empfangen"
-#: src/transport/plugin_transport_udp.c:2041
+#: src/transport/plugin_transport_udp.c:2043
#: src/transport/plugin_transport_udp_new.c:1218
#, c-format
msgid "Given `%s' option is out of range: %llu > %u\n"
msgstr ""
-#: src/transport/plugin_transport_udp.c:2092
+#: src/transport/plugin_transport_udp.c:2094
#: src/transport/plugin_transport_udp_new.c:1268
#, fuzzy, c-format
msgid "Invalid IPv6 address: `%s'\n"
msgstr "Ungültiger Parameter: `%s'\n"
-#: src/transport/plugin_transport_udp.c:2235
+#: src/transport/plugin_transport_udp.c:2237
#, c-format
msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
msgstr ""
-#: src/transport/plugin_transport_udp.c:2296
+#: src/transport/plugin_transport_udp.c:2298
#: src/transport/plugin_transport_udp_new.c:1396
#, fuzzy
msgid "Failed to open UDP sockets\n"
msgstr "Fehler beim Binden an UDP6 Port %d.\n"
-#: src/transport/plugin_transport_http_client.c:107
-#: src/transport/plugin_transport_http_client.c:122
+#: src/transport/plugin_transport_http_client.c:108
+#: src/transport/plugin_transport_http_client.c:123
#: src/hostlist/hostlist-client.c:472 src/hostlist/hostlist-client.c:682
#: src/hostlist/hostlist-client.c:688 src/hostlist/hostlist-client.c:740
#: src/hostlist/hostlist-client.c:749 src/hostlist/hostlist-client.c:877
msgid "%s failed at %s:%d: `%s'\n"
msgstr "`%s' schlug fehl bei %s:%d mit dem Fehler: `%s'.\n"
-#: src/transport/plugin_transport_http_client.c:619
+#: src/transport/plugin_transport_http_client.c:620
#, c-format
msgid "Could not initialize curl multi handle, failed to start %s plugin!\n"
msgstr ""
msgid "Failed to load transport plugin for `%s'\n"
msgstr "Anwendung `%s' konnte nicht initialisiert werden.\n"
-#: src/transport/plugin_transport_wlan.c:881
+#: src/transport/plugin_transport_wlan.c:884
#, fuzzy
msgid "# wlan session timeouts"
msgstr "# Sitzungsschlüssel akzeptiert"
-#: src/transport/plugin_transport_wlan.c:905
+#: src/transport/plugin_transport_wlan.c:908
#, fuzzy
msgid "# wlan session created"
msgstr "# Sitzungsschlüssel akzeptiert"
-#: src/transport/plugin_transport_wlan.c:989
-#: src/transport/plugin_transport_wlan.c:1151
-#: src/transport/plugin_transport_wlan.c:1172
-#: src/transport/plugin_transport_wlan.c:1203
-#: src/transport/plugin_transport_wlan.c:2406
-#: src/transport/plugin_transport_wlan.c:3265
+#: src/transport/plugin_transport_wlan.c:992
+#: src/transport/plugin_transport_wlan.c:1154
+#: src/transport/plugin_transport_wlan.c:1175
+#: src/transport/plugin_transport_wlan.c:1206
+#: src/transport/plugin_transport_wlan.c:2409
+#: src/transport/plugin_transport_wlan.c:3268
msgid "# wlan pending sessions"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1246
-#: src/transport/plugin_transport_wlan.c:1961
+#: src/transport/plugin_transport_wlan.c:1249
+#: src/transport/plugin_transport_wlan.c:1964
#, fuzzy
msgid "# wlan pending fragments"
msgstr "# verworfener Nachrichten"
-#: src/transport/plugin_transport_wlan.c:1437
+#: src/transport/plugin_transport_wlan.c:1440
#, c-format
msgid "Finished reading from wlan-helper stdout with code: %d\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1802
+#: src/transport/plugin_transport_wlan.c:1805
msgid "# wlan hello beacons send"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1835
-#: src/transport/plugin_transport_wlan.c:2050
-#: src/transport/plugin_transport_wlan.c:2145
+#: src/transport/plugin_transport_wlan.c:1838
+#: src/transport/plugin_transport_wlan.c:2053
+#: src/transport/plugin_transport_wlan.c:2148
#, c-format
msgid "Error writing to wlan helper. errno == %d, ERROR: %s\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2036
+#: src/transport/plugin_transport_wlan.c:2039
msgid "# wlan acks send"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2107
+#: src/transport/plugin_transport_wlan.c:2110
#, fuzzy
msgid "# wlan fragments send"
msgstr "# verworfener Nachrichten"
-#: src/transport/plugin_transport_wlan.c:2273
+#: src/transport/plugin_transport_wlan.c:2276
#, c-format
msgid "Wlan Address len %d is wrong\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2278
+#: src/transport/plugin_transport_wlan.c:2281
#, fuzzy
msgid "# wlan messages queued"
msgstr "# verschlüsselter PING Nachrichten empfangen"
-#: src/transport/plugin_transport_wlan.c:2367
-#: src/transport/plugin_transport_wlan.c:3021
-#: src/transport/plugin_transport_wlan.c:3268
+#: src/transport/plugin_transport_wlan.c:2370
+#: src/transport/plugin_transport_wlan.c:3024
+#: src/transport/plugin_transport_wlan.c:3271
msgid "# wlan mac endpoints"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2595
+#: src/transport/plugin_transport_wlan.c:2598
#, fuzzy
msgid "# wlan whole messages received"
msgstr "# verschlüsselter PING Nachrichten empfangen"
-#: src/transport/plugin_transport_wlan.c:2795
+#: src/transport/plugin_transport_wlan.c:2798
#, fuzzy
msgid "# wlan hello messages received"
msgstr "# verschlüsselter PING Nachrichten empfangen"
-#: src/transport/plugin_transport_wlan.c:2832
+#: src/transport/plugin_transport_wlan.c:2835
#, fuzzy
msgid "# wlan fragments received"
msgstr "# verworfener Nachrichten"
-#: src/transport/plugin_transport_wlan.c:2884
+#: src/transport/plugin_transport_wlan.c:2887
#, fuzzy
msgid "# wlan acks received"
msgstr "# gap Anfragen insgesamt empfangen"
-#: src/transport/plugin_transport_wlan.c:2981
+#: src/transport/plugin_transport_wlan.c:2984
msgid "# wlan mac endpoints timeouts"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:3005
+#: src/transport/plugin_transport_wlan.c:3008
#, fuzzy
msgid "# wlan mac endpoints created"
msgstr "# Client Trace-Anfragen empfangen"
-#: src/transport/plugin_transport_wlan.c:3063
+#: src/transport/plugin_transport_wlan.c:3066
msgid "# wlan WLAN_HELPER_DATA received"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:3119
+#: src/transport/plugin_transport_wlan.c:3122
#, fuzzy
msgid "# wlan messages for this client received"
msgstr "# verschlüsselter PING Nachrichten empfangen"
-#: src/transport/plugin_transport_wlan.c:3130
+#: src/transport/plugin_transport_wlan.c:3133
#, fuzzy
msgid "# wlan messages inside WLAN_HELPER_DATA received"
msgstr "# verschlüsselter PING Nachrichten empfangen"
-#: src/transport/gnunet-transport.c:245
+#: src/transport/gnunet-transport.c:250
#, c-format
msgid "No transport plugins configured, peer will never communicate\n"
msgstr ""
-#: src/transport/gnunet-transport.c:258
+#: src/transport/gnunet-transport.c:263
#, c-format
msgid "No port configured for plugin `%s', cannot test it\n"
msgstr ""
-#: src/transport/gnunet-transport.c:308
+#: src/transport/gnunet-transport.c:313
#, c-format
msgid "Received %llu bytes/s (%llu bytes in %llu ms)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:315
+#: src/transport/gnunet-transport.c:320
#, c-format
msgid "Transmitted %llu bytes/s (%llu bytes in %llu ms)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:348
+#: src/transport/gnunet-transport.c:353
#, fuzzy, c-format
msgid "Transmitting %u bytes to %s\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/transport/gnunet-transport.c:368
+#: src/transport/gnunet-transport.c:373
#, fuzzy, c-format
msgid "Connected to %s\n"
msgstr "`%s' hat sich mit `%s' verbunden.\n"
-#: src/transport/gnunet-transport.c:399
+#: src/transport/gnunet-transport.c:404
#, fuzzy, c-format
msgid "Disconnected from %s\n"
msgstr "`%s' hat sich mit `%s' verbunden.\n"
-#: src/transport/gnunet-transport.c:428
+#: src/transport/gnunet-transport.c:433
#, fuzzy, c-format
msgid "Received %u bytes from %s\n"
msgstr "GAP hat ungültige Inhalte von `%s' empfangen.\n"
-#: src/transport/gnunet-transport.c:448
+#: src/transport/gnunet-transport.c:447
#, fuzzy, c-format
-msgid "Peer `%s' plugin: `%s' address `%s'\n"
-msgstr "Knoten `%s' mit Vertrauen %8u und Adresse `%s'\n"
+msgid "Peer `%s': %s\n"
+msgstr "Ich bin Peer `%s'.\n"
-#: src/transport/gnunet-transport.c:486
+#: src/transport/gnunet-transport.c:519
#, fuzzy, c-format
msgid "Failed to parse peer identity `%s'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/transport/gnunet-transport.c:522
+#: src/transport/gnunet-transport.c:556
msgid "measure how fast we are receiving data (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:525
+#: src/transport/gnunet-transport.c:559
#, fuzzy
msgid "try to connect to the given peer"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/transport/gnunet-transport.c:528
+#: src/transport/gnunet-transport.c:562
#, fuzzy
msgid "provide information about all current connections (once)"
msgstr "Informationen über andere GNUnet Knoten ausgeben."
-#: src/transport/gnunet-transport.c:532
+#: src/transport/gnunet-transport.c:566
msgid "send data for benchmarking to the other peer (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:535
+#: src/transport/gnunet-transport.c:569
msgid "test transport configuration (involves external server)"
msgstr ""
-#: src/transport/gnunet-transport.c:543
+#: src/transport/gnunet-transport.c:572
+#, fuzzy
+msgid "do not resolve hostnames"
+msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
+
+#: src/transport/gnunet-transport.c:580
#, fuzzy
msgid "Direct access to transport service."
msgstr "Der Transportdienst auf Port %d konnte nicht gestartet werden.\n"
msgid "GNUnet NAT traversal test helper daemon"
msgstr ""
-#: src/nat/nat.c:803
+#: src/nat/nat.c:805
#, c-format
msgid "gnunet-helper-nat-server generated malformed address `%s'\n"
msgstr ""
-#: src/nat/nat.c:852
+#: src/nat/nat.c:854
#, fuzzy, c-format
msgid "Failed to start %s\n"
msgstr "Fehler beim Starten der Collection.\n"
-#: src/nat/nat.c:1121
+#: src/nat/nat.c:1123
#, fuzzy, c-format
msgid "Malformed %s `%s' given in configuration!\n"
msgstr "Fehler beim Speichern der Konfiguration!"
-#: src/nat/nat.c:1187 src/nat/nat.c:1197
+#: src/nat/nat.c:1189 src/nat/nat.c:1199
#, c-format
msgid ""
"Configuration requires `%s', but binary is not installed properly (SUID bit "
"not set). Option disabled.\n"
msgstr ""
-#: src/nat/nat.c:1329
+#: src/nat/nat.c:1331
msgid "Internal IP address not known, cannot use ICMP NAT traversal method\n"
msgstr ""
-#: src/nat/nat.c:1341
+#: src/nat/nat.c:1343
#, c-format
msgid "Running gnunet-helper-nat-client %s %s %u\n"
msgstr ""
msgid "Loading block plugin `%s'\n"
msgstr "Teste Transport(e) %s\n"
-#: src/mesh/gnunet-service-mesh.c:4201
+#: src/mesh/gnunet-service-mesh.c:4218
msgid "MESH: Wrong CORE service\n"
msgstr ""
-#: src/mesh/gnunet-service-mesh.c:4406
+#: src/mesh/gnunet-service-mesh.c:4423
#, fuzzy
msgid "Mesh service is lacking key configuration settings. Exiting.\n"
msgstr "GNUnet Konfiguration"
-#: src/mesh/gnunet-service-mesh.c:4415
+#: src/mesh/gnunet-service-mesh.c:4432
#, fuzzy
msgid "Mesh service could not access hostkey. Exiting.\n"
msgstr "Auf die Namespace Informationen konnte nicht zugegriffen werden.\n"
msgid "Hostlist file `%s' could not be removed\n"
msgstr "Sitzungsschlüssel von Knoten `%s' konnte nicht überprüft werden.\n"
-#: src/hostlist/gnunet-daemon-hostlist.c:257
+#: src/hostlist/gnunet-daemon-hostlist.c:262
msgid ""
"None of the functions for the hostlist daemon were enabled. I have no "
"reason to run!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:310
+#: src/hostlist/gnunet-daemon-hostlist.c:315
msgid "advertise our hostlist to other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:315
+#: src/hostlist/gnunet-daemon-hostlist.c:320
msgid ""
"bootstrap using hostlists (it is highly recommended that you always use this "
"option)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:318
+#: src/hostlist/gnunet-daemon-hostlist.c:323
msgid "enable learning about hostlist servers from other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:322
+#: src/hostlist/gnunet-daemon-hostlist.c:327
msgid "provide a hostlist server"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:334
+#: src/hostlist/gnunet-daemon-hostlist.c:339
msgid "GNUnet hostlist server and client"
msgstr ""
msgid "Could not start hostlist HTTP server on port %u\n"
msgstr "Der Transportdienst auf Port %d konnte nicht gestartet werden.\n"
-#: src/peerinfo-tool/gnunet-peerinfo.c:221
+#: src/peerinfo-tool/gnunet-peerinfo.c:219
#, 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:228
+#: src/peerinfo-tool/gnunet-peerinfo.c:226
#, 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:240
+#: src/peerinfo-tool/gnunet-peerinfo.c:238
#, c-format
msgid "I am peer `%s'.\n"
msgstr "Ich bin Peer `%s'.\n"
-#: src/peerinfo-tool/gnunet-peerinfo.c:260
+#: src/peerinfo-tool/gnunet-peerinfo.c:258
msgid "output only the identity strings"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:263
+#: src/peerinfo-tool/gnunet-peerinfo.c:261
msgid "output our own identity only"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:269
+#: src/peerinfo-tool/gnunet-peerinfo.c:267
#, fuzzy
msgid "Print information about peers."
msgstr "Informationen über andere GNUnet Knoten ausgeben."
msgid "use configuration file FILENAME"
msgstr "Konfigurationsdatei FILENAME verwenden"
-#: src/include/gnunet_common.h:361 src/include/gnunet_common.h:366
-#: src/include/gnunet_common.h:372
+#: src/include/gnunet_common.h:366 src/include/gnunet_common.h:371
+#: src/include/gnunet_common.h:377
#, fuzzy, c-format
msgid "Assertion failed at %s:%d.\n"
msgstr "Absicherung fehlgeschlagen bei %s:%d.\n"
-#: src/include/gnunet_common.h:382
+#: src/include/gnunet_common.h:387
#, fuzzy, c-format
msgid "External protocol violation detected at %s:%d.\n"
msgstr "Absicherung fehlgeschlagen bei %s:%d.\n"
-#: src/include/gnunet_common.h:403 src/include/gnunet_common.h:410
+#: src/include/gnunet_common.h:408 src/include/gnunet_common.h:415
#, fuzzy, c-format
msgid "`%s' failed on file `%s' at %s:%d with error: %s\n"
msgstr "`%s' schlug bei Datei `%s' fehl. Ort: %s:%d. Fehler: %s\n"
+#, 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"
msgstr ""
"Project-Id-Version: GNUnet 0.7.0e\n"
"Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n"
-"POT-Creation-Date: 2011-11-26 14:53+0100\n"
+"POT-Creation-Date: 2011-11-29 21:38+0100\n"
"PO-Revision-Date: 2006-06-29 12:05+0200\n"
"Last-Translator: Miguel Angel Arruga <miguel.13@telefonica.net>\n"
"Language-Team: Spanish\n"
#: src/datacache/plugin_datacache_mysql.c:517
#: src/datacache/plugin_datacache_mysql.c:526
#: src/datacache/plugin_datacache_mysql.c:598
-#: src/datacache/plugin_datacache_mysql.c:614 src/include/gnunet_common.h:389
-#: src/include/gnunet_common.h:396
+#: src/datacache/plugin_datacache_mysql.c:614 src/include/gnunet_common.h:394
+#: src/include/gnunet_common.h:401
#, c-format
msgid "`%s' failed at %s:%d with error: %s\n"
msgstr "'%s' falló en %s: %d con el error: %s\n"
msgid "Peer `%s'\n"
msgstr "Yo soy el par '%s'.\n"
-#: src/core/gnunet-core-list-connections.c:167
-#: src/peerinfo-tool/gnunet-peerinfo.c:199
+#: src/core/gnunet-core-list-connections.c:178
+#: src/peerinfo-tool/gnunet-peerinfo.c:197
#, fuzzy, c-format
msgid "Invalid command line argument `%s'\n"
msgstr "Argumentos en la linea de comandos inválidos:\n"
-#: src/core/gnunet-core-list-connections.c:188
-#: src/peerinfo-tool/gnunet-peerinfo.c:257
+#: src/core/gnunet-core-list-connections.c:199
+#: src/peerinfo-tool/gnunet-peerinfo.c:255
msgid "don't resolve host names"
msgstr ""
-#: src/core/gnunet-core-list-connections.c:195
+#: src/core/gnunet-core-list-connections.c:206
#, fuzzy
msgid "Print information about connected peers."
msgstr "Imprime información de los pares de GNUnet."
-#: src/core/gnunet-service-core_clients.c:357
+#: src/core/gnunet-service-core_clients.c:359
#, fuzzy
msgid "# send requests dropped (disconnected)"
msgstr "# Anuncios de los pares recibidos"
-#: src/core/gnunet-service-core_clients.c:462
+#: src/core/gnunet-service-core_clients.c:464
#, fuzzy
msgid "# messages discarded (session disconnected)"
msgstr "# mensajes defragmentados"
-#: src/core/gnunet-service-core_clients.c:800
+#: src/core/gnunet-service-core_clients.c:801
#, fuzzy, c-format
msgid "# bytes of messages of type %u received"
msgstr "# bytes de ruido recibidos"
msgstr "# bytes desencriptados"
#: src/core/gnunet-service-core_kx.c:602 src/dv/gnunet-service-dv.c:3002
-#: src/hostlist/hostlist-server.c:436 src/peerinfo-tool/gnunet-peerinfo.c:156
+#: src/hostlist/hostlist-server.c:436 src/peerinfo-tool/gnunet-peerinfo.c:154
#, fuzzy, c-format
msgid "Error in communication with PEERINFO service\n"
msgstr "Imprime información de los pares de GNUnet."
#: src/core/gnunet-service-core_kx.c:1539
#: src/transport/gnunet-service-transport.c:537
-#: src/hostlist/hostlist-server.c:555 src/peerinfo-tool/gnunet-peerinfo.c:207
+#: src/hostlist/hostlist-server.c:555 src/peerinfo-tool/gnunet-peerinfo.c:205
#, fuzzy, c-format
msgid "Could not access PEERINFO service. Exiting.\n"
msgstr "Imposible acceder a la información del espacio.\n"
msgid "Use --help to get a list of options.\n"
msgstr "Usar --help para obtener una lista de opciones.\n"
-#: src/util/scheduler.c:860
+#: src/util/scheduler.c:870
msgid "Looks like we're busy waiting...\n"
msgstr ""
-#: src/util/scheduler.c:990
+#: src/util/scheduler.c:1000
#, c-format
msgid "Attempt to cancel dead task %llu!\n"
msgstr ""
msgid "RSA signature verification failed at %s:%d: %s\n"
msgstr "La verificación de la firma RSA fallo en %s: %d: %s\n"
-#: src/nse/gnunet-nse-profiler.c:647 src/dht/gnunet-dht-get.c:213
+#: src/nse/gnunet-nse-profiler.c:634 src/dht/gnunet-dht-get.c:213
#: src/dht/gnunet-dht-put.c:184 src/fs/gnunet-unindex.c:169
#: src/fs/gnunet-search.c:297 src/fs/gnunet-publish.c:591
#: src/fs/gnunet-download.c:263
msgid "be verbose (print progress information)"
msgstr ""
-#: src/nse/gnunet-nse-profiler.c:665
+#: src/nse/gnunet-nse-profiler.c:652
#, fuzzy
msgid "Measure quality and performance of the NSE service."
msgstr "Imposible acceder al servicio"
-#: src/nse/gnunet-service-nse.c:904
+#: src/nse/gnunet-service-nse.c:902
#, c-format
msgid "Proof of work invalid: %llu!\n"
msgstr ""
-#: src/nse/gnunet-service-nse.c:1329 src/nse/gnunet-service-nse.c:1348
-#: src/nse/gnunet-service-nse.c:1369
+#: src/nse/gnunet-service-nse.c:1326 src/nse/gnunet-service-nse.c:1345
+#: src/nse/gnunet-service-nse.c:1366
msgid "NSE service is lacking key configuration settings. Exiting.\n"
msgstr ""
-#: src/nse/gnunet-service-nse.c:1336
+#: src/nse/gnunet-service-nse.c:1333
#, fuzzy
msgid "Invalid work requirement for NSE service. Exiting.\n"
msgstr "Argumentos no válidos. Saliendo.\n"
-#: src/nse/gnunet-service-nse.c:1357
+#: src/nse/gnunet-service-nse.c:1354
#, fuzzy
msgid "NSE service could not access hostkey. Exiting.\n"
msgstr "Imposible acceder a la información del espacio.\n"
msgstr "La opción '%s' no tiene sentido sin la opción '%s'.\n"
#: src/fs/gnunet-publish.c:393 src/fs/gnunet-publish.c:400
-#: src/transport/gnunet-transport.c:477
+#: src/transport/gnunet-transport.c:510
#, c-format
msgid "Option `%s' makes no sense without option `%s'.\n"
msgstr "La opción '%s' no tiene sentido sin la opción '%s'.\n"
#: src/fs/gnunet-service-fs_cp.c:615 src/fs/gnunet-service-fs_cp.c:1543
#: src/transport/gnunet-service-transport_neighbours.c:938
#: src/transport/gnunet-service-transport_neighbours.c:943
-#: src/transport/gnunet-service-transport_neighbours.c:1266
-#: src/transport/gnunet-service-transport_neighbours.c:2354
-#: src/transport/gnunet-service-transport_neighbours.c:2425
+#: src/transport/gnunet-service-transport_neighbours.c:1269
+#: src/transport/gnunet-service-transport_neighbours.c:2382
+#: src/transport/gnunet-service-transport_neighbours.c:2453
#: src/topology/gnunet-daemon-topology.c:654
#: src/topology/gnunet-daemon-topology.c:756
#, fuzzy
#: src/fs/gnunet-service-fs.c:583 src/topology/gnunet-daemon-topology.c:1290
#: src/topology/gnunet-daemon-topology.c:1297
-#: src/hostlist/gnunet-daemon-hostlist.c:290
+#: src/hostlist/gnunet-daemon-hostlist.c:295
#, fuzzy, c-format
msgid "Failed to connect to `%s' service.\n"
msgstr "Fallo al conectar a gnunetd.\n"
msgid "# peers disconnected due to global disconnect"
msgstr "# Anuncios de los pares recibidos"
-#: src/transport/gnunet-service-transport_neighbours.c:1774
-#: src/transport/gnunet-service-transport_neighbours.c:1795
+#: src/transport/gnunet-service-transport_neighbours.c:1800
+#: src/transport/gnunet-service-transport_neighbours.c:1821
#, fuzzy
msgid "# messages not sent (no such peer or not connected)"
msgstr "# mensajes defragmentados"
-#: src/transport/gnunet-service-transport_neighbours.c:1811
+#: src/transport/gnunet-service-transport_neighbours.c:1837
#, fuzzy
msgid "# bytes in message queue for other peers"
msgstr "# bytes de mensajes salientes omitidos"
-#: src/transport/gnunet-service-transport_neighbours.c:1863
+#: src/transport/gnunet-service-transport_neighbours.c:1889
#, fuzzy
msgid "# messages discarded due to lack of neighbour record"
msgstr "# mensajes defragmentados"
-#: src/transport/gnunet-service-transport_neighbours.c:1899
+#: src/transport/gnunet-service-transport_neighbours.c:1925
msgid "# bandwidth quota violations by other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1917
+#: src/transport/gnunet-service-transport_neighbours.c:1943
msgid "# ms throttling suggested"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1946
+#: src/transport/gnunet-service-transport_neighbours.c:1972
#, fuzzy
msgid "# KEEPALIVE messages discarded (not connected)"
msgstr "# mensajes defragmentados"
-#: src/transport/gnunet-service-transport_neighbours.c:1995
+#: src/transport/gnunet-service-transport_neighbours.c:2023
#, fuzzy
msgid "# KEEPALIVE_RESPONSE messages discarded (not connected)"
msgstr "# mensajes defragmentados"
-#: src/transport/gnunet-service-transport_neighbours.c:2003
+#: src/transport/gnunet-service-transport_neighbours.c:2031
#, fuzzy
msgid "# KEEPALIVE_RESPONSE messages discarded (not expected)"
msgstr "# mensajes defragmentados"
-#: src/transport/gnunet-service-transport_neighbours.c:2064
+#: src/transport/gnunet-service-transport_neighbours.c:2092
msgid "# SET QUOTA messages ignored (no such peer)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2082
+#: src/transport/gnunet-service-transport_neighbours.c:2110
msgid "# disconnects due to quota of 0"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2200
+#: src/transport/gnunet-service-transport_neighbours.c:2228
msgid "# disconnect messages ignored (old format)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2213
+#: src/transport/gnunet-service-transport_neighbours.c:2241
msgid "# disconnect messages ignored (timestamp)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2289
+#: src/transport/gnunet-service-transport_neighbours.c:2317
#, fuzzy
msgid "# unexpected CONNECT_ACK messages (no peer)"
msgstr "envia COUNT mensajes"
-#: src/transport/gnunet-service-transport_neighbours.c:2304
+#: src/transport/gnunet-service-transport_neighbours.c:2332
#, fuzzy
msgid "# unexpected CONNECT_ACK messages"
msgstr "envia COUNT mensajes"
-#: src/transport/gnunet-service-transport_neighbours.c:2402
+#: src/transport/gnunet-service-transport_neighbours.c:2430
#, fuzzy
msgid "# unexpected ACK messages"
msgstr "# de pares conectados"
msgid "# refreshed my HELLO"
msgstr ""
-#: src/transport/plugin_transport_udp.c:1518
+#: src/transport/plugin_transport_udp.c:1520
#, fuzzy
msgid "# IPv4 broadcast HELLO beacons received via udp"
msgstr "# mensajes PONG encriptados recibidos"
-#: src/transport/plugin_transport_udp.c:1555
+#: src/transport/plugin_transport_udp.c:1557
#, fuzzy
msgid "# IPv6 multicast HELLO beacons received via udp"
msgstr "# mensajes PONG encriptados recibidos"
-#: src/transport/plugin_transport_udp.c:2041
+#: src/transport/plugin_transport_udp.c:2043
#: src/transport/plugin_transport_udp_new.c:1218
#, c-format
msgid "Given `%s' option is out of range: %llu > %u\n"
msgstr ""
-#: src/transport/plugin_transport_udp.c:2092
+#: src/transport/plugin_transport_udp.c:2094
#: src/transport/plugin_transport_udp_new.c:1268
#, fuzzy, c-format
msgid "Invalid IPv6 address: `%s'\n"
msgstr "Argumento no válido: '%s'\n"
-#: src/transport/plugin_transport_udp.c:2235
+#: src/transport/plugin_transport_udp.c:2237
#, c-format
msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
msgstr ""
-#: src/transport/plugin_transport_udp.c:2296
+#: src/transport/plugin_transport_udp.c:2298
#: src/transport/plugin_transport_udp_new.c:1396
#, fuzzy
msgid "Failed to open UDP sockets\n"
msgstr "Fichero almacenado en '%s'.\n"
-#: src/transport/plugin_transport_http_client.c:107
-#: src/transport/plugin_transport_http_client.c:122
+#: src/transport/plugin_transport_http_client.c:108
+#: src/transport/plugin_transport_http_client.c:123
#: src/hostlist/hostlist-client.c:472 src/hostlist/hostlist-client.c:682
#: src/hostlist/hostlist-client.c:688 src/hostlist/hostlist-client.c:740
#: src/hostlist/hostlist-client.c:749 src/hostlist/hostlist-client.c:877
msgid "%s failed at %s:%d: `%s'\n"
msgstr "'%s' falló en %s: %d con error: '%s'.\n"
-#: src/transport/plugin_transport_http_client.c:619
+#: src/transport/plugin_transport_http_client.c:620
#, c-format
msgid "Could not initialize curl multi handle, failed to start %s plugin!\n"
msgstr ""
msgid "Failed to load transport plugin for `%s'\n"
msgstr "Imposible inicializar la aplicación '%s'\n"
-#: src/transport/plugin_transport_wlan.c:881
+#: src/transport/plugin_transport_wlan.c:884
#, fuzzy
msgid "# wlan session timeouts"
msgstr "# claves de la sesión aceptadas"
-#: src/transport/plugin_transport_wlan.c:905
+#: src/transport/plugin_transport_wlan.c:908
#, fuzzy
msgid "# wlan session created"
msgstr "# claves de la sesión aceptadas"
-#: src/transport/plugin_transport_wlan.c:989
-#: src/transport/plugin_transport_wlan.c:1151
-#: src/transport/plugin_transport_wlan.c:1172
-#: src/transport/plugin_transport_wlan.c:1203
-#: src/transport/plugin_transport_wlan.c:2406
-#: src/transport/plugin_transport_wlan.c:3265
+#: src/transport/plugin_transport_wlan.c:992
+#: src/transport/plugin_transport_wlan.c:1154
+#: src/transport/plugin_transport_wlan.c:1175
+#: src/transport/plugin_transport_wlan.c:1206
+#: src/transport/plugin_transport_wlan.c:2409
+#: src/transport/plugin_transport_wlan.c:3268
msgid "# wlan pending sessions"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1246
-#: src/transport/plugin_transport_wlan.c:1961
+#: src/transport/plugin_transport_wlan.c:1249
+#: src/transport/plugin_transport_wlan.c:1964
#, fuzzy
msgid "# wlan pending fragments"
msgstr "# fragmentos descartados"
-#: src/transport/plugin_transport_wlan.c:1437
+#: src/transport/plugin_transport_wlan.c:1440
#, c-format
msgid "Finished reading from wlan-helper stdout with code: %d\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1802
+#: src/transport/plugin_transport_wlan.c:1805
msgid "# wlan hello beacons send"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1835
-#: src/transport/plugin_transport_wlan.c:2050
-#: src/transport/plugin_transport_wlan.c:2145
+#: src/transport/plugin_transport_wlan.c:1838
+#: src/transport/plugin_transport_wlan.c:2053
+#: src/transport/plugin_transport_wlan.c:2148
#, c-format
msgid "Error writing to wlan helper. errno == %d, ERROR: %s\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2036
+#: src/transport/plugin_transport_wlan.c:2039
msgid "# wlan acks send"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2107
+#: src/transport/plugin_transport_wlan.c:2110
#, fuzzy
msgid "# wlan fragments send"
msgstr "# fragmentos descartados"
-#: src/transport/plugin_transport_wlan.c:2273
+#: src/transport/plugin_transport_wlan.c:2276
#, c-format
msgid "Wlan Address len %d is wrong\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2278
+#: src/transport/plugin_transport_wlan.c:2281
#, fuzzy
msgid "# wlan messages queued"
msgstr "# mensajes PONG encriptados recibidos"
-#: src/transport/plugin_transport_wlan.c:2367
-#: src/transport/plugin_transport_wlan.c:3021
-#: src/transport/plugin_transport_wlan.c:3268
+#: src/transport/plugin_transport_wlan.c:2370
+#: src/transport/plugin_transport_wlan.c:3024
+#: src/transport/plugin_transport_wlan.c:3271
msgid "# wlan mac endpoints"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2595
+#: src/transport/plugin_transport_wlan.c:2598
#, fuzzy
msgid "# wlan whole messages received"
msgstr "# mensajes PONG encriptados recibidos"
-#: src/transport/plugin_transport_wlan.c:2795
+#: src/transport/plugin_transport_wlan.c:2798
#, fuzzy
msgid "# wlan hello messages received"
msgstr "# mensajes PONG encriptados recibidos"
-#: src/transport/plugin_transport_wlan.c:2832
+#: src/transport/plugin_transport_wlan.c:2835
#, fuzzy
msgid "# wlan fragments received"
msgstr "# fragmentos descartados"
-#: src/transport/plugin_transport_wlan.c:2884
+#: src/transport/plugin_transport_wlan.c:2887
#, fuzzy
msgid "# wlan acks received"
msgstr "# mensajes PONG encriptados recibidos"
-#: src/transport/plugin_transport_wlan.c:2981
+#: src/transport/plugin_transport_wlan.c:2984
msgid "# wlan mac endpoints timeouts"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:3005
+#: src/transport/plugin_transport_wlan.c:3008
#, fuzzy
msgid "# wlan mac endpoints created"
msgstr "# mensajes PONG encriptados recibidos"
-#: src/transport/plugin_transport_wlan.c:3063
+#: src/transport/plugin_transport_wlan.c:3066
msgid "# wlan WLAN_HELPER_DATA received"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:3119
+#: src/transport/plugin_transport_wlan.c:3122
#, fuzzy
msgid "# wlan messages for this client received"
msgstr "# mensajes PONG encriptados recibidos"
-#: src/transport/plugin_transport_wlan.c:3130
+#: src/transport/plugin_transport_wlan.c:3133
#, fuzzy
msgid "# wlan messages inside WLAN_HELPER_DATA received"
msgstr "# mensajes PONG encriptados recibidos"
-#: src/transport/gnunet-transport.c:245
+#: src/transport/gnunet-transport.c:250
#, c-format
msgid "No transport plugins configured, peer will never communicate\n"
msgstr ""
-#: src/transport/gnunet-transport.c:258
+#: src/transport/gnunet-transport.c:263
#, c-format
msgid "No port configured for plugin `%s', cannot test it\n"
msgstr ""
-#: src/transport/gnunet-transport.c:308
+#: src/transport/gnunet-transport.c:313
#, c-format
msgid "Received %llu bytes/s (%llu bytes in %llu ms)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:315
+#: src/transport/gnunet-transport.c:320
#, c-format
msgid "Transmitted %llu bytes/s (%llu bytes in %llu ms)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:348
+#: src/transport/gnunet-transport.c:353
#, c-format
msgid "Transmitting %u bytes to %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:368
+#: src/transport/gnunet-transport.c:373
#, fuzzy, c-format
msgid "Connected to %s\n"
msgstr "'%s' conectado a '%s'.\n"
-#: src/transport/gnunet-transport.c:399
+#: src/transport/gnunet-transport.c:404
#, fuzzy, c-format
msgid "Disconnected from %s\n"
msgstr "'%s' conectado a '%s'.\n"
-#: src/transport/gnunet-transport.c:428
+#: src/transport/gnunet-transport.c:433
#, fuzzy, c-format
msgid "Received %u bytes from %s\n"
msgstr "GAP recibido contenido no válido de '%s'\n"
-#: src/transport/gnunet-transport.c:448
+#: src/transport/gnunet-transport.c:447
#, fuzzy, c-format
-msgid "Peer `%s' plugin: `%s' address `%s'\n"
-msgstr "Par '%s' con credibilidad %8u y dirección '%s'\n"
+msgid "Peer `%s': %s\n"
+msgstr "Yo soy el par '%s'.\n"
-#: src/transport/gnunet-transport.c:486
+#: src/transport/gnunet-transport.c:519
#, fuzzy, c-format
msgid "Failed to parse peer identity `%s'\n"
msgstr "Falló al actualizar los datos del módulo '%s'\n"
-#: src/transport/gnunet-transport.c:522
+#: src/transport/gnunet-transport.c:556
msgid "measure how fast we are receiving data (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:525
+#: src/transport/gnunet-transport.c:559
#, fuzzy
msgid "try to connect to the given peer"
msgstr "Fallo al conectar a gnunetd.\n"
-#: src/transport/gnunet-transport.c:528
+#: src/transport/gnunet-transport.c:562
#, fuzzy
msgid "provide information about all current connections (once)"
msgstr "Imprime información de los pares de GNUnet."
-#: src/transport/gnunet-transport.c:532
+#: src/transport/gnunet-transport.c:566
msgid "send data for benchmarking to the other peer (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:535
+#: src/transport/gnunet-transport.c:569
msgid "test transport configuration (involves external server)"
msgstr ""
-#: src/transport/gnunet-transport.c:543
+#: src/transport/gnunet-transport.c:572
+msgid "do not resolve hostnames"
+msgstr ""
+
+#: src/transport/gnunet-transport.c:580
#, fuzzy
msgid "Direct access to transport service."
msgstr "Fallo al conectar a gnunetd.\n"
msgid "GNUnet NAT traversal test helper daemon"
msgstr ""
-#: src/nat/nat.c:803
+#: src/nat/nat.c:805
#, c-format
msgid "gnunet-helper-nat-server generated malformed address `%s'\n"
msgstr ""
-#: src/nat/nat.c:852
+#: src/nat/nat.c:854
#, fuzzy, c-format
msgid "Failed to start %s\n"
msgstr "Falló al comenzar la recolección.\n"
-#: src/nat/nat.c:1121
+#: src/nat/nat.c:1123
#, fuzzy, c-format
msgid "Malformed %s `%s' given in configuration!\n"
msgstr "Imposible guardar la configuración"
-#: src/nat/nat.c:1187 src/nat/nat.c:1197
+#: src/nat/nat.c:1189 src/nat/nat.c:1199
#, c-format
msgid ""
"Configuration requires `%s', but binary is not installed properly (SUID bit "
"not set). Option disabled.\n"
msgstr ""
-#: src/nat/nat.c:1329
+#: src/nat/nat.c:1331
msgid "Internal IP address not known, cannot use ICMP NAT traversal method\n"
msgstr ""
-#: src/nat/nat.c:1341
+#: src/nat/nat.c:1343
#, c-format
msgid "Running gnunet-helper-nat-client %s %s %u\n"
msgstr ""
msgid "Loading block plugin `%s'\n"
msgstr "Probando transporte(s) %s\n"
-#: src/mesh/gnunet-service-mesh.c:4201
+#: src/mesh/gnunet-service-mesh.c:4218
msgid "MESH: Wrong CORE service\n"
msgstr ""
-#: src/mesh/gnunet-service-mesh.c:4406
+#: src/mesh/gnunet-service-mesh.c:4423
#, fuzzy
msgid "Mesh service is lacking key configuration settings. Exiting.\n"
msgstr "Configuración de GNUnet"
-#: src/mesh/gnunet-service-mesh.c:4415
+#: src/mesh/gnunet-service-mesh.c:4432
#, fuzzy
msgid "Mesh service could not access hostkey. Exiting.\n"
msgstr "Imposible acceder a la información del espacio.\n"
msgid "Hostlist file `%s' could not be removed\n"
msgstr "La clave de sesión del par '%s' no pudo ser verificada.\n"
-#: src/hostlist/gnunet-daemon-hostlist.c:257
+#: src/hostlist/gnunet-daemon-hostlist.c:262
msgid ""
"None of the functions for the hostlist daemon were enabled. I have no "
"reason to run!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:310
+#: src/hostlist/gnunet-daemon-hostlist.c:315
msgid "advertise our hostlist to other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:315
+#: src/hostlist/gnunet-daemon-hostlist.c:320
msgid ""
"bootstrap using hostlists (it is highly recommended that you always use this "
"option)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:318
+#: src/hostlist/gnunet-daemon-hostlist.c:323
msgid "enable learning about hostlist servers from other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:322
+#: src/hostlist/gnunet-daemon-hostlist.c:327
msgid "provide a hostlist server"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:334
+#: src/hostlist/gnunet-daemon-hostlist.c:339
msgid "GNUnet hostlist server and client"
msgstr ""
msgid "Could not start hostlist HTTP server on port %u\n"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:221
+#: src/peerinfo-tool/gnunet-peerinfo.c:219
#, 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:228
+#: src/peerinfo-tool/gnunet-peerinfo.c:226
#, 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:240
+#: src/peerinfo-tool/gnunet-peerinfo.c:238
#, c-format
msgid "I am peer `%s'.\n"
msgstr "Yo soy el par '%s'.\n"
-#: src/peerinfo-tool/gnunet-peerinfo.c:260
+#: src/peerinfo-tool/gnunet-peerinfo.c:258
msgid "output only the identity strings"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:263
+#: src/peerinfo-tool/gnunet-peerinfo.c:261
msgid "output our own identity only"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:269
+#: src/peerinfo-tool/gnunet-peerinfo.c:267
#, fuzzy
msgid "Print information about peers."
msgstr "Imprime información de los pares de GNUnet."
msgid "use configuration file FILENAME"
msgstr "usa el fichero de configuración FILENAME"
-#: src/include/gnunet_common.h:361 src/include/gnunet_common.h:366
-#: src/include/gnunet_common.h:372
+#: src/include/gnunet_common.h:366 src/include/gnunet_common.h:371
+#: src/include/gnunet_common.h:377
#, fuzzy, c-format
msgid "Assertion failed at %s:%d.\n"
msgstr "La verificación de la firma RSA fallo en %s: %d: %s\n"
-#: src/include/gnunet_common.h:382
+#: src/include/gnunet_common.h:387
#, fuzzy, c-format
msgid "External protocol violation detected at %s:%d.\n"
msgstr "La verificación de la firma RSA fallo en %s: %d: %s\n"
-#: src/include/gnunet_common.h:403 src/include/gnunet_common.h:410
+#: src/include/gnunet_common.h:408 src/include/gnunet_common.h:415
#, fuzzy, c-format
msgid "`%s' failed on file `%s' at %s:%d with error: %s\n"
msgstr "'%s' falló en el fichero '%s' en %s: %d con el error: %s\n"
+#, fuzzy
+#~ msgid "Peer `%s' plugin: `%s' address `%s'\n"
+#~ msgstr "Par '%s' con credibilidad %8u y dirección '%s'\n"
+
#~ msgid "KiB"
#~ msgstr "KiB"
msgstr ""
"Project-Id-Version: GNUnet 0.7.0b\n"
"Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n"
-"POT-Creation-Date: 2011-11-26 14:53+0100\n"
+"POT-Creation-Date: 2011-11-29 21:38+0100\n"
"PO-Revision-Date: 2006-01-21 17:16+0100\n"
"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
#: src/datacache/plugin_datacache_mysql.c:517
#: src/datacache/plugin_datacache_mysql.c:526
#: src/datacache/plugin_datacache_mysql.c:598
-#: src/datacache/plugin_datacache_mysql.c:614 src/include/gnunet_common.h:389
-#: src/include/gnunet_common.h:396
+#: src/datacache/plugin_datacache_mysql.c:614 src/include/gnunet_common.h:394
+#: src/include/gnunet_common.h:401
#, c-format
msgid "`%s' failed at %s:%d with error: %s\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: %s\n"
msgid "Peer `%s'\n"
msgstr "Jag är ändpunkt \"%s\".\n"
-#: src/core/gnunet-core-list-connections.c:167
-#: src/peerinfo-tool/gnunet-peerinfo.c:199
+#: src/core/gnunet-core-list-connections.c:178
+#: src/peerinfo-tool/gnunet-peerinfo.c:197
#, fuzzy, c-format
msgid "Invalid command line argument `%s'\n"
msgstr "Ogiltiga kommandoradsargument:\n"
-#: src/core/gnunet-core-list-connections.c:188
-#: src/peerinfo-tool/gnunet-peerinfo.c:257
+#: src/core/gnunet-core-list-connections.c:199
+#: src/peerinfo-tool/gnunet-peerinfo.c:255
msgid "don't resolve host names"
msgstr ""
-#: src/core/gnunet-core-list-connections.c:195
+#: src/core/gnunet-core-list-connections.c:206
#, fuzzy
msgid "Print information about connected peers."
msgstr "Skriv ut information om GNUnets motparter."
-#: src/core/gnunet-service-core_clients.c:357
+#: src/core/gnunet-service-core_clients.c:359
msgid "# send requests dropped (disconnected)"
msgstr ""
-#: src/core/gnunet-service-core_clients.c:462
+#: src/core/gnunet-service-core_clients.c:464
#, fuzzy
msgid "# messages discarded (session disconnected)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/core/gnunet-service-core_clients.c:800
+#: src/core/gnunet-service-core_clients.c:801
#, fuzzy, c-format
msgid "# bytes of messages of type %u received"
msgstr "# krypterade PONG-meddelanden mottagna"
msgstr "# byte dekrypterade"
#: src/core/gnunet-service-core_kx.c:602 src/dv/gnunet-service-dv.c:3002
-#: src/hostlist/hostlist-server.c:436 src/peerinfo-tool/gnunet-peerinfo.c:156
+#: src/hostlist/hostlist-server.c:436 src/peerinfo-tool/gnunet-peerinfo.c:154
#, fuzzy, c-format
msgid "Error in communication with PEERINFO service\n"
msgstr "Skriv ut information om GNUnets motparter."
#: src/core/gnunet-service-core_kx.c:1539
#: src/transport/gnunet-service-transport.c:537
-#: src/hostlist/hostlist-server.c:555 src/peerinfo-tool/gnunet-peerinfo.c:207
+#: src/hostlist/hostlist-server.c:555 src/peerinfo-tool/gnunet-peerinfo.c:205
#, fuzzy, c-format
msgid "Could not access PEERINFO service. Exiting.\n"
msgstr "Kunde inte komma åt namnrymdsinformation.\n"
msgid "Use --help to get a list of options.\n"
msgstr "Använd --help för att få en lista på flaggor.\n"
-#: src/util/scheduler.c:860
+#: src/util/scheduler.c:870
msgid "Looks like we're busy waiting...\n"
msgstr ""
-#: src/util/scheduler.c:990
+#: src/util/scheduler.c:1000
#, c-format
msgid "Attempt to cancel dead task %llu!\n"
msgstr ""
msgid "RSA signature verification failed at %s:%d: %s\n"
msgstr ""
-#: src/nse/gnunet-nse-profiler.c:647 src/dht/gnunet-dht-get.c:213
+#: src/nse/gnunet-nse-profiler.c:634 src/dht/gnunet-dht-get.c:213
#: src/dht/gnunet-dht-put.c:184 src/fs/gnunet-unindex.c:169
#: src/fs/gnunet-search.c:297 src/fs/gnunet-publish.c:591
#: src/fs/gnunet-download.c:263
msgid "be verbose (print progress information)"
msgstr ""
-#: src/nse/gnunet-nse-profiler.c:665
+#: src/nse/gnunet-nse-profiler.c:652
#, fuzzy
msgid "Measure quality and performance of the NSE service."
msgstr "Kan inte tillgå tjänsten"
-#: src/nse/gnunet-service-nse.c:904
+#: src/nse/gnunet-service-nse.c:902
#, c-format
msgid "Proof of work invalid: %llu!\n"
msgstr ""
-#: src/nse/gnunet-service-nse.c:1329 src/nse/gnunet-service-nse.c:1348
-#: src/nse/gnunet-service-nse.c:1369
+#: src/nse/gnunet-service-nse.c:1326 src/nse/gnunet-service-nse.c:1345
+#: src/nse/gnunet-service-nse.c:1366
msgid "NSE service is lacking key configuration settings. Exiting.\n"
msgstr ""
-#: src/nse/gnunet-service-nse.c:1336
+#: src/nse/gnunet-service-nse.c:1333
#, fuzzy
msgid "Invalid work requirement for NSE service. Exiting.\n"
msgstr "Ogiltiga argument. Avslutar.\n"
-#: src/nse/gnunet-service-nse.c:1357
+#: src/nse/gnunet-service-nse.c:1354
#, fuzzy
msgid "NSE service could not access hostkey. Exiting.\n"
msgstr "Kunde inte komma åt namnrymdsinformation.\n"
msgstr "Kommando \"%s\" kräver ett argument (\"%s\").\n"
#: src/fs/gnunet-publish.c:393 src/fs/gnunet-publish.c:400
-#: src/transport/gnunet-transport.c:477
+#: src/transport/gnunet-transport.c:510
#, c-format
msgid "Option `%s' makes no sense without option `%s'.\n"
msgstr ""
#: src/fs/gnunet-service-fs_cp.c:615 src/fs/gnunet-service-fs_cp.c:1543
#: src/transport/gnunet-service-transport_neighbours.c:938
#: src/transport/gnunet-service-transport_neighbours.c:943
-#: src/transport/gnunet-service-transport_neighbours.c:1266
-#: src/transport/gnunet-service-transport_neighbours.c:2354
-#: src/transport/gnunet-service-transport_neighbours.c:2425
+#: src/transport/gnunet-service-transport_neighbours.c:1269
+#: src/transport/gnunet-service-transport_neighbours.c:2382
+#: src/transport/gnunet-service-transport_neighbours.c:2453
#: src/topology/gnunet-daemon-topology.c:654
#: src/topology/gnunet-daemon-topology.c:756
#, fuzzy
#: src/fs/gnunet-service-fs.c:583 src/topology/gnunet-daemon-topology.c:1290
#: src/topology/gnunet-daemon-topology.c:1297
-#: src/hostlist/gnunet-daemon-hostlist.c:290
+#: src/hostlist/gnunet-daemon-hostlist.c:295
#, fuzzy, c-format
msgid "Failed to connect to `%s' service.\n"
msgstr "Misslyckades att initiera tjänsten \"%s\".\n"
msgid "# peers disconnected due to global disconnect"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1774
-#: src/transport/gnunet-service-transport_neighbours.c:1795
+#: src/transport/gnunet-service-transport_neighbours.c:1800
+#: src/transport/gnunet-service-transport_neighbours.c:1821
msgid "# messages not sent (no such peer or not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1811
+#: src/transport/gnunet-service-transport_neighbours.c:1837
msgid "# bytes in message queue for other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1863
+#: src/transport/gnunet-service-transport_neighbours.c:1889
#, fuzzy
msgid "# messages discarded due to lack of neighbour record"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1899
+#: src/transport/gnunet-service-transport_neighbours.c:1925
msgid "# bandwidth quota violations by other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1917
+#: src/transport/gnunet-service-transport_neighbours.c:1943
msgid "# ms throttling suggested"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1946
+#: src/transport/gnunet-service-transport_neighbours.c:1972
msgid "# KEEPALIVE messages discarded (not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1995
+#: src/transport/gnunet-service-transport_neighbours.c:2023
#, fuzzy
msgid "# KEEPALIVE_RESPONSE messages discarded (not connected)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2003
+#: src/transport/gnunet-service-transport_neighbours.c:2031
#, fuzzy
msgid "# KEEPALIVE_RESPONSE messages discarded (not expected)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2064
+#: src/transport/gnunet-service-transport_neighbours.c:2092
msgid "# SET QUOTA messages ignored (no such peer)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2082
+#: src/transport/gnunet-service-transport_neighbours.c:2110
msgid "# disconnects due to quota of 0"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2200
+#: src/transport/gnunet-service-transport_neighbours.c:2228
msgid "# disconnect messages ignored (old format)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2213
+#: src/transport/gnunet-service-transport_neighbours.c:2241
msgid "# disconnect messages ignored (timestamp)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2289
+#: src/transport/gnunet-service-transport_neighbours.c:2317
#, fuzzy
msgid "# unexpected CONNECT_ACK messages (no peer)"
msgstr "skicka ANTAL meddelanden"
-#: src/transport/gnunet-service-transport_neighbours.c:2304
+#: src/transport/gnunet-service-transport_neighbours.c:2332
#, fuzzy
msgid "# unexpected CONNECT_ACK messages"
msgstr "skicka ANTAL meddelanden"
-#: src/transport/gnunet-service-transport_neighbours.c:2402
+#: src/transport/gnunet-service-transport_neighbours.c:2430
#, fuzzy
msgid "# unexpected ACK messages"
msgstr "# krypterade PONG-meddelanden skickade"
msgid "# refreshed my HELLO"
msgstr ""
-#: src/transport/plugin_transport_udp.c:1518
+#: src/transport/plugin_transport_udp.c:1520
#, fuzzy
msgid "# IPv4 broadcast HELLO beacons received via udp"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/plugin_transport_udp.c:1555
+#: src/transport/plugin_transport_udp.c:1557
#, fuzzy
msgid "# IPv6 multicast HELLO beacons received via udp"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/plugin_transport_udp.c:2041
+#: src/transport/plugin_transport_udp.c:2043
#: src/transport/plugin_transport_udp_new.c:1218
#, c-format
msgid "Given `%s' option is out of range: %llu > %u\n"
msgstr ""
-#: src/transport/plugin_transport_udp.c:2092
+#: src/transport/plugin_transport_udp.c:2094
#: src/transport/plugin_transport_udp_new.c:1268
#, fuzzy, c-format
msgid "Invalid IPv6 address: `%s'\n"
msgstr "Ogiltigt svar på \"%s\".\n"
-#: src/transport/plugin_transport_udp.c:2235
+#: src/transport/plugin_transport_udp.c:2237
#, c-format
msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
msgstr ""
-#: src/transport/plugin_transport_udp.c:2296
+#: src/transport/plugin_transport_udp.c:2298
#: src/transport/plugin_transport_udp_new.c:1396
#, fuzzy
msgid "Failed to open UDP sockets\n"
msgstr "Misslyckades att binda till UDP6-port %d.\n"
-#: src/transport/plugin_transport_http_client.c:107
-#: src/transport/plugin_transport_http_client.c:122
+#: src/transport/plugin_transport_http_client.c:108
+#: src/transport/plugin_transport_http_client.c:123
#: src/hostlist/hostlist-client.c:472 src/hostlist/hostlist-client.c:682
#: src/hostlist/hostlist-client.c:688 src/hostlist/hostlist-client.c:740
#: src/hostlist/hostlist-client.c:749 src/hostlist/hostlist-client.c:877
msgid "%s failed at %s:%d: `%s'\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n"
-#: src/transport/plugin_transport_http_client.c:619
+#: src/transport/plugin_transport_http_client.c:620
#, c-format
msgid "Could not initialize curl multi handle, failed to start %s plugin!\n"
msgstr ""
msgid "Failed to load transport plugin for `%s'\n"
msgstr "Kunde inte slå upp \"%s\": %s\n"
-#: src/transport/plugin_transport_wlan.c:881
+#: src/transport/plugin_transport_wlan.c:884
#, fuzzy
msgid "# wlan session timeouts"
msgstr "# sessionsnycklar accepterade"
-#: src/transport/plugin_transport_wlan.c:905
+#: src/transport/plugin_transport_wlan.c:908
#, fuzzy
msgid "# wlan session created"
msgstr "# sessionsnycklar accepterade"
-#: src/transport/plugin_transport_wlan.c:989
-#: src/transport/plugin_transport_wlan.c:1151
-#: src/transport/plugin_transport_wlan.c:1172
-#: src/transport/plugin_transport_wlan.c:1203
-#: src/transport/plugin_transport_wlan.c:2406
-#: src/transport/plugin_transport_wlan.c:3265
+#: src/transport/plugin_transport_wlan.c:992
+#: src/transport/plugin_transport_wlan.c:1154
+#: src/transport/plugin_transport_wlan.c:1175
+#: src/transport/plugin_transport_wlan.c:1206
+#: src/transport/plugin_transport_wlan.c:2409
+#: src/transport/plugin_transport_wlan.c:3268
msgid "# wlan pending sessions"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1246
-#: src/transport/plugin_transport_wlan.c:1961
+#: src/transport/plugin_transport_wlan.c:1249
+#: src/transport/plugin_transport_wlan.c:1964
#, fuzzy
msgid "# wlan pending fragments"
msgstr "# byte mottogs via TCP"
-#: src/transport/plugin_transport_wlan.c:1437
+#: src/transport/plugin_transport_wlan.c:1440
#, c-format
msgid "Finished reading from wlan-helper stdout with code: %d\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1802
+#: src/transport/plugin_transport_wlan.c:1805
msgid "# wlan hello beacons send"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1835
-#: src/transport/plugin_transport_wlan.c:2050
-#: src/transport/plugin_transport_wlan.c:2145
+#: src/transport/plugin_transport_wlan.c:1838
+#: src/transport/plugin_transport_wlan.c:2053
+#: src/transport/plugin_transport_wlan.c:2148
#, c-format
msgid "Error writing to wlan helper. errno == %d, ERROR: %s\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2036
+#: src/transport/plugin_transport_wlan.c:2039
msgid "# wlan acks send"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2107
+#: src/transport/plugin_transport_wlan.c:2110
#, fuzzy
msgid "# wlan fragments send"
msgstr "# byte mottogs via TCP"
-#: src/transport/plugin_transport_wlan.c:2273
+#: src/transport/plugin_transport_wlan.c:2276
#, c-format
msgid "Wlan Address len %d is wrong\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2278
+#: src/transport/plugin_transport_wlan.c:2281
#, fuzzy
msgid "# wlan messages queued"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/plugin_transport_wlan.c:2367
-#: src/transport/plugin_transport_wlan.c:3021
-#: src/transport/plugin_transport_wlan.c:3268
+#: src/transport/plugin_transport_wlan.c:2370
+#: src/transport/plugin_transport_wlan.c:3024
+#: src/transport/plugin_transport_wlan.c:3271
msgid "# wlan mac endpoints"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2595
+#: src/transport/plugin_transport_wlan.c:2598
#, fuzzy
msgid "# wlan whole messages received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/plugin_transport_wlan.c:2795
+#: src/transport/plugin_transport_wlan.c:2798
#, fuzzy
msgid "# wlan hello messages received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/plugin_transport_wlan.c:2832
+#: src/transport/plugin_transport_wlan.c:2835
#, fuzzy
msgid "# wlan fragments received"
msgstr "# byte mottogs via TCP"
-#: src/transport/plugin_transport_wlan.c:2884
+#: src/transport/plugin_transport_wlan.c:2887
#, fuzzy
msgid "# wlan acks received"
msgstr "# klartext PONG-meddelanden mottagna"
-#: src/transport/plugin_transport_wlan.c:2981
+#: src/transport/plugin_transport_wlan.c:2984
msgid "# wlan mac endpoints timeouts"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:3005
+#: src/transport/plugin_transport_wlan.c:3008
#, fuzzy
msgid "# wlan mac endpoints created"
msgstr "# byte mottogs via TCP"
-#: src/transport/plugin_transport_wlan.c:3063
+#: src/transport/plugin_transport_wlan.c:3066
msgid "# wlan WLAN_HELPER_DATA received"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:3119
+#: src/transport/plugin_transport_wlan.c:3122
#, fuzzy
msgid "# wlan messages for this client received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/plugin_transport_wlan.c:3130
+#: src/transport/plugin_transport_wlan.c:3133
#, fuzzy
msgid "# wlan messages inside WLAN_HELPER_DATA received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/gnunet-transport.c:245
+#: src/transport/gnunet-transport.c:250
#, c-format
msgid "No transport plugins configured, peer will never communicate\n"
msgstr ""
-#: src/transport/gnunet-transport.c:258
+#: src/transport/gnunet-transport.c:263
#, c-format
msgid "No port configured for plugin `%s', cannot test it\n"
msgstr ""
-#: src/transport/gnunet-transport.c:308
+#: src/transport/gnunet-transport.c:313
#, c-format
msgid "Received %llu bytes/s (%llu bytes in %llu ms)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:315
+#: src/transport/gnunet-transport.c:320
#, c-format
msgid "Transmitted %llu bytes/s (%llu bytes in %llu ms)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:348
+#: src/transport/gnunet-transport.c:353
#, fuzzy, c-format
msgid "Transmitting %u bytes to %s\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/transport/gnunet-transport.c:368
+#: src/transport/gnunet-transport.c:373
#, fuzzy, c-format
msgid "Connected to %s\n"
msgstr "\"%s\" ansluten till \"%s\".\n"
-#: src/transport/gnunet-transport.c:399
+#: src/transport/gnunet-transport.c:404
#, fuzzy, c-format
msgid "Disconnected from %s\n"
msgstr "\"%s\" ansluten till \"%s\".\n"
-#: src/transport/gnunet-transport.c:428
+#: src/transport/gnunet-transport.c:433
#, c-format
msgid "Received %u bytes from %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:448
+#: src/transport/gnunet-transport.c:447
#, fuzzy, c-format
-msgid "Peer `%s' plugin: `%s' address `%s'\n"
-msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n"
+msgid "Peer `%s': %s\n"
+msgstr "Jag är ändpunkt \"%s\".\n"
-#: src/transport/gnunet-transport.c:486
+#: src/transport/gnunet-transport.c:519
#, fuzzy, c-format
msgid "Failed to parse peer identity `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/transport/gnunet-transport.c:522
+#: src/transport/gnunet-transport.c:556
msgid "measure how fast we are receiving data (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:525
+#: src/transport/gnunet-transport.c:559
#, fuzzy
msgid "try to connect to the given peer"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/transport/gnunet-transport.c:528
+#: src/transport/gnunet-transport.c:562
#, fuzzy
msgid "provide information about all current connections (once)"
msgstr "Skriv ut information om GNUnets motparter."
-#: src/transport/gnunet-transport.c:532
+#: src/transport/gnunet-transport.c:566
msgid "send data for benchmarking to the other peer (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:535
+#: src/transport/gnunet-transport.c:569
msgid "test transport configuration (involves external server)"
msgstr ""
-#: src/transport/gnunet-transport.c:543
+#: src/transport/gnunet-transport.c:572
+#, fuzzy
+msgid "do not resolve hostnames"
+msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
+
+#: src/transport/gnunet-transport.c:580
#, fuzzy
msgid "Direct access to transport service."
msgstr "Misslyckades att ansluta till gnunetd.\n"
msgid "GNUnet NAT traversal test helper daemon"
msgstr ""
-#: src/nat/nat.c:803
+#: src/nat/nat.c:805
#, c-format
msgid "gnunet-helper-nat-server generated malformed address `%s'\n"
msgstr ""
-#: src/nat/nat.c:852
+#: src/nat/nat.c:854
#, fuzzy, c-format
msgid "Failed to start %s\n"
msgstr "Misslyckades att starta samling.\n"
-#: src/nat/nat.c:1121
+#: src/nat/nat.c:1123
#, fuzzy, c-format
msgid "Malformed %s `%s' given in configuration!\n"
msgstr "Kunde inte spara konfiguration!"
-#: src/nat/nat.c:1187 src/nat/nat.c:1197
+#: src/nat/nat.c:1189 src/nat/nat.c:1199
#, c-format
msgid ""
"Configuration requires `%s', but binary is not installed properly (SUID bit "
"not set). Option disabled.\n"
msgstr ""
-#: src/nat/nat.c:1329
+#: src/nat/nat.c:1331
msgid "Internal IP address not known, cannot use ICMP NAT traversal method\n"
msgstr ""
-#: src/nat/nat.c:1341
+#: src/nat/nat.c:1343
#, c-format
msgid "Running gnunet-helper-nat-client %s %s %u\n"
msgstr ""
msgid "Loading block plugin `%s'\n"
msgstr "Testar transport(er) %s\n"
-#: src/mesh/gnunet-service-mesh.c:4201
+#: src/mesh/gnunet-service-mesh.c:4218
msgid "MESH: Wrong CORE service\n"
msgstr ""
-#: src/mesh/gnunet-service-mesh.c:4406
+#: src/mesh/gnunet-service-mesh.c:4423
#, fuzzy
msgid "Mesh service is lacking key configuration settings. Exiting.\n"
msgstr "GNUnet-konfiguration"
-#: src/mesh/gnunet-service-mesh.c:4415
+#: src/mesh/gnunet-service-mesh.c:4432
#, fuzzy
msgid "Mesh service could not access hostkey. Exiting.\n"
msgstr "Kunde inte komma åt namnrymdsinformation.\n"
msgid "Hostlist file `%s' could not be removed\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:257
+#: src/hostlist/gnunet-daemon-hostlist.c:262
msgid ""
"None of the functions for the hostlist daemon were enabled. I have no "
"reason to run!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:310
+#: src/hostlist/gnunet-daemon-hostlist.c:315
msgid "advertise our hostlist to other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:315
+#: src/hostlist/gnunet-daemon-hostlist.c:320
msgid ""
"bootstrap using hostlists (it is highly recommended that you always use this "
"option)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:318
+#: src/hostlist/gnunet-daemon-hostlist.c:323
msgid "enable learning about hostlist servers from other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:322
+#: src/hostlist/gnunet-daemon-hostlist.c:327
msgid "provide a hostlist server"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:334
+#: src/hostlist/gnunet-daemon-hostlist.c:339
msgid "GNUnet hostlist server and client"
msgstr ""
msgid "Could not start hostlist HTTP server on port %u\n"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:221
+#: src/peerinfo-tool/gnunet-peerinfo.c:219
#, 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:228
+#: src/peerinfo-tool/gnunet-peerinfo.c:226
#, 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:240
+#: src/peerinfo-tool/gnunet-peerinfo.c:238
#, c-format
msgid "I am peer `%s'.\n"
msgstr "Jag är ändpunkt \"%s\".\n"
-#: src/peerinfo-tool/gnunet-peerinfo.c:260
+#: src/peerinfo-tool/gnunet-peerinfo.c:258
msgid "output only the identity strings"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:263
+#: src/peerinfo-tool/gnunet-peerinfo.c:261
msgid "output our own identity only"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:269
+#: src/peerinfo-tool/gnunet-peerinfo.c:267
#, fuzzy
msgid "Print information about peers."
msgstr "Skriv ut information om GNUnets motparter."
msgid "use configuration file FILENAME"
msgstr "använd konfigurationsfil FILNAMN"
-#: src/include/gnunet_common.h:361 src/include/gnunet_common.h:366
-#: src/include/gnunet_common.h:372
+#: src/include/gnunet_common.h:366 src/include/gnunet_common.h:371
+#: src/include/gnunet_common.h:377
#, fuzzy, c-format
msgid "Assertion failed at %s:%d.\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n"
-#: src/include/gnunet_common.h:382
+#: src/include/gnunet_common.h:387
#, c-format
msgid "External protocol violation detected at %s:%d.\n"
msgstr ""
-#: src/include/gnunet_common.h:403 src/include/gnunet_common.h:410
+#: src/include/gnunet_common.h:408 src/include/gnunet_common.h:415
#, c-format
msgid "`%s' failed on file `%s' at %s:%d with error: %s\n"
msgstr "\"%s\" misslyckades för fil \"%s\" vid %s:%d med fel: %s\n"
+#, 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"
msgstr ""
"Project-Id-Version: gnunet 0.8.0a\n"
"Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n"
-"POT-Creation-Date: 2011-11-26 14:53+0100\n"
+"POT-Creation-Date: 2011-11-29 21:38+0100\n"
"PO-Revision-Date: 2008-09-10 22:05+0930\n"
"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
#: src/datacache/plugin_datacache_mysql.c:517
#: src/datacache/plugin_datacache_mysql.c:526
#: src/datacache/plugin_datacache_mysql.c:598
-#: src/datacache/plugin_datacache_mysql.c:614 src/include/gnunet_common.h:389
-#: src/include/gnunet_common.h:396
+#: src/datacache/plugin_datacache_mysql.c:614 src/include/gnunet_common.h:394
+#: src/include/gnunet_common.h:401
#, c-format
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"
msgid "Peer `%s'\n"
msgstr "Tôi là đồng đẳng « %s ».\n"
-#: src/core/gnunet-core-list-connections.c:167
-#: src/peerinfo-tool/gnunet-peerinfo.c:199
+#: src/core/gnunet-core-list-connections.c:178
+#: src/peerinfo-tool/gnunet-peerinfo.c:197
#, fuzzy, c-format
msgid "Invalid command line argument `%s'\n"
msgstr "Đối số không hợp lệ cho « %s ».\n"
-#: src/core/gnunet-core-list-connections.c:188
-#: src/peerinfo-tool/gnunet-peerinfo.c:257
+#: src/core/gnunet-core-list-connections.c:199
+#: src/peerinfo-tool/gnunet-peerinfo.c:255
msgid "don't resolve host names"
msgstr "không quyết định các tên máy"
-#: src/core/gnunet-core-list-connections.c:195
+#: src/core/gnunet-core-list-connections.c:206
#, fuzzy
msgid "Print information about connected peers."
msgstr "In ra thông tin về các đồng đẳng GNUnet."
-#: src/core/gnunet-service-core_clients.c:357
+#: src/core/gnunet-service-core_clients.c:359
#, fuzzy
msgid "# send requests dropped (disconnected)"
msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
-#: src/core/gnunet-service-core_clients.c:462
+#: src/core/gnunet-service-core_clients.c:464
#, fuzzy
msgid "# messages discarded (session disconnected)"
msgstr "# các thông báo được chắp liền"
-#: src/core/gnunet-service-core_clients.c:800
+#: src/core/gnunet-service-core_clients.c:801
#, fuzzy, c-format
msgid "# bytes of messages of type %u received"
msgstr "# các byte nhiễu được nhận"
msgstr "# các byte đã giải mã"
#: src/core/gnunet-service-core_kx.c:602 src/dv/gnunet-service-dv.c:3002
-#: src/hostlist/hostlist-server.c:436 src/peerinfo-tool/gnunet-peerinfo.c:156
+#: src/hostlist/hostlist-server.c:436 src/peerinfo-tool/gnunet-peerinfo.c:154
#, fuzzy, c-format
msgid "Error in communication with PEERINFO service\n"
msgstr "Cổng để liên lạc với giao diện người dùng GNUnet"
#: src/core/gnunet-service-core_kx.c:1539
#: src/transport/gnunet-service-transport.c:537
-#: src/hostlist/hostlist-server.c:555 src/peerinfo-tool/gnunet-peerinfo.c:207
+#: src/hostlist/hostlist-server.c:555 src/peerinfo-tool/gnunet-peerinfo.c:205
#, fuzzy, c-format
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"
msgstr ""
"Hãy sử dụng câu lệnh trợ giúp « --help » để xem danh sách các tùy chọn.\n"
-#: src/util/scheduler.c:860
+#: src/util/scheduler.c:870
msgid "Looks like we're busy waiting...\n"
msgstr ""
-#: src/util/scheduler.c:990
+#: src/util/scheduler.c:1000
#, c-format
msgid "Attempt to cancel dead task %llu!\n"
msgstr ""
msgid "RSA signature verification failed at %s:%d: %s\n"
msgstr "Lỗi thẩm tra chữ ký RSA tại %s:%d: %s\n"
-#: src/nse/gnunet-nse-profiler.c:647 src/dht/gnunet-dht-get.c:213
+#: src/nse/gnunet-nse-profiler.c:634 src/dht/gnunet-dht-get.c:213
#: src/dht/gnunet-dht-put.c:184 src/fs/gnunet-unindex.c:169
#: src/fs/gnunet-search.c:297 src/fs/gnunet-publish.c:591
#: src/fs/gnunet-download.c:263
msgid "be verbose (print progress information)"
msgstr ""
-#: src/nse/gnunet-nse-profiler.c:665
+#: src/nse/gnunet-nse-profiler.c:652
#, fuzzy
msgid "Measure quality and performance of the NSE service."
msgstr "Không thể truy cập đến dịch vụ"
-#: src/nse/gnunet-service-nse.c:904
+#: src/nse/gnunet-service-nse.c:902
#, c-format
msgid "Proof of work invalid: %llu!\n"
msgstr ""
-#: src/nse/gnunet-service-nse.c:1329 src/nse/gnunet-service-nse.c:1348
-#: src/nse/gnunet-service-nse.c:1369
+#: src/nse/gnunet-service-nse.c:1326 src/nse/gnunet-service-nse.c:1345
+#: src/nse/gnunet-service-nse.c:1366
msgid "NSE service is lacking key configuration settings. Exiting.\n"
msgstr ""
-#: src/nse/gnunet-service-nse.c:1336
+#: src/nse/gnunet-service-nse.c:1333
msgid "Invalid work requirement for NSE service. Exiting.\n"
msgstr ""
-#: src/nse/gnunet-service-nse.c:1357
+#: src/nse/gnunet-service-nse.c:1354
#, fuzzy
msgid "NSE 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"
msgstr "Tùy chọn « %s » cần thiết khi dùng tùy chọn « %s ».\n"
#: src/fs/gnunet-publish.c:393 src/fs/gnunet-publish.c:400
-#: src/transport/gnunet-transport.c:477
+#: src/transport/gnunet-transport.c:510
#, c-format
msgid "Option `%s' makes no sense without option `%s'.\n"
msgstr "Tùy chọn « %s » không có nghĩa khi không có tùy chọn « %s ».\n"
#: src/fs/gnunet-service-fs_cp.c:615 src/fs/gnunet-service-fs_cp.c:1543
#: src/transport/gnunet-service-transport_neighbours.c:938
#: src/transport/gnunet-service-transport_neighbours.c:943
-#: src/transport/gnunet-service-transport_neighbours.c:1266
-#: src/transport/gnunet-service-transport_neighbours.c:2354
-#: src/transport/gnunet-service-transport_neighbours.c:2425
+#: src/transport/gnunet-service-transport_neighbours.c:1269
+#: src/transport/gnunet-service-transport_neighbours.c:2382
+#: src/transport/gnunet-service-transport_neighbours.c:2453
#: src/topology/gnunet-daemon-topology.c:654
#: src/topology/gnunet-daemon-topology.c:756
#, fuzzy
#: src/fs/gnunet-service-fs.c:583 src/topology/gnunet-daemon-topology.c:1290
#: src/topology/gnunet-daemon-topology.c:1297
-#: src/hostlist/gnunet-daemon-hostlist.c:290
+#: src/hostlist/gnunet-daemon-hostlist.c:295
#, fuzzy, c-format
msgid "Failed to connect to `%s' service.\n"
msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
msgid "# peers disconnected due to global disconnect"
msgstr "# Các quảng cáo đồng đẳng bị hủy do trọng tải"
-#: src/transport/gnunet-service-transport_neighbours.c:1774
-#: src/transport/gnunet-service-transport_neighbours.c:1795
+#: src/transport/gnunet-service-transport_neighbours.c:1800
+#: src/transport/gnunet-service-transport_neighbours.c:1821
#, fuzzy
msgid "# messages not sent (no such peer or not connected)"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:1811
+#: src/transport/gnunet-service-transport_neighbours.c:1837
#, fuzzy
msgid "# bytes in message queue for other peers"
msgstr "# các byte thông báo gửi đi bị loại bỏ"
-#: src/transport/gnunet-service-transport_neighbours.c:1863
+#: src/transport/gnunet-service-transport_neighbours.c:1889
#, fuzzy
msgid "# messages discarded due to lack of neighbour record"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:1899
+#: src/transport/gnunet-service-transport_neighbours.c:1925
#, fuzzy
msgid "# bandwidth quota violations by other peers"
msgstr "theo dõi gnunetd sử dụng dải thông"
-#: src/transport/gnunet-service-transport_neighbours.c:1917
+#: src/transport/gnunet-service-transport_neighbours.c:1943
msgid "# ms throttling suggested"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1946
+#: src/transport/gnunet-service-transport_neighbours.c:1972
#, fuzzy
msgid "# KEEPALIVE messages discarded (not connected)"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:1995
+#: src/transport/gnunet-service-transport_neighbours.c:2023
#, fuzzy
msgid "# KEEPALIVE_RESPONSE messages discarded (not connected)"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:2003
+#: src/transport/gnunet-service-transport_neighbours.c:2031
#, fuzzy
msgid "# KEEPALIVE_RESPONSE messages discarded (not expected)"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:2064
+#: src/transport/gnunet-service-transport_neighbours.c:2092
msgid "# SET QUOTA messages ignored (no such peer)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2082
+#: src/transport/gnunet-service-transport_neighbours.c:2110
msgid "# disconnects due to quota of 0"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2200
+#: src/transport/gnunet-service-transport_neighbours.c:2228
msgid "# disconnect messages ignored (old format)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2213
+#: src/transport/gnunet-service-transport_neighbours.c:2241
msgid "# disconnect messages ignored (timestamp)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2289
+#: src/transport/gnunet-service-transport_neighbours.c:2317
#, fuzzy
msgid "# unexpected CONNECT_ACK messages (no peer)"
msgstr "gửi ĐẾM thông báo"
-#: src/transport/gnunet-service-transport_neighbours.c:2304
+#: src/transport/gnunet-service-transport_neighbours.c:2332
#, fuzzy
msgid "# unexpected CONNECT_ACK messages"
msgstr "gửi ĐẾM thông báo"
-#: src/transport/gnunet-service-transport_neighbours.c:2402
+#: src/transport/gnunet-service-transport_neighbours.c:2430
#, fuzzy
msgid "# unexpected ACK messages"
msgstr "# các thông báo PONG đã mật mã được gửi"
msgid "# refreshed my HELLO"
msgstr ""
-#: src/transport/plugin_transport_udp.c:1518
+#: src/transport/plugin_transport_udp.c:1520
#, fuzzy
msgid "# IPv4 broadcast HELLO beacons received via udp"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/transport/plugin_transport_udp.c:1555
+#: src/transport/plugin_transport_udp.c:1557
#, fuzzy
msgid "# IPv6 multicast HELLO beacons received via udp"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/transport/plugin_transport_udp.c:2041
+#: src/transport/plugin_transport_udp.c:2043
#: src/transport/plugin_transport_udp_new.c:1218
#, c-format
msgid "Given `%s' option is out of range: %llu > %u\n"
msgstr ""
-#: src/transport/plugin_transport_udp.c:2092
+#: src/transport/plugin_transport_udp.c:2094
#: src/transport/plugin_transport_udp_new.c:1268
#, 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_udp.c:2235
+#: src/transport/plugin_transport_udp.c:2237
#, c-format
msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
msgstr ""
-#: src/transport/plugin_transport_udp.c:2296
+#: src/transport/plugin_transport_udp.c:2298
#: src/transport/plugin_transport_udp_new.c:1396
#, 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_http_client.c:107
-#: src/transport/plugin_transport_http_client.c:122
+#: src/transport/plugin_transport_http_client.c:108
+#: src/transport/plugin_transport_http_client.c:123
#: src/hostlist/hostlist-client.c:472 src/hostlist/hostlist-client.c:682
#: src/hostlist/hostlist-client.c:688 src/hostlist/hostlist-client.c:740
#: src/hostlist/hostlist-client.c:749 src/hostlist/hostlist-client.c:877
msgid "%s failed at %s:%d: `%s'\n"
msgstr "%s bị lỗi tại %s:%d: « %s »\n"
-#: src/transport/plugin_transport_http_client.c:619
+#: src/transport/plugin_transport_http_client.c:620
#, c-format
msgid "Could not initialize curl multi handle, failed to start %s plugin!\n"
msgstr ""
msgid "Failed to load transport plugin for `%s'\n"
msgstr "Không thể nạp phần bổ sung truyền tải « %s »\n"
-#: src/transport/plugin_transport_wlan.c:881
+#: src/transport/plugin_transport_wlan.c:884
#, fuzzy
msgid "# wlan session timeouts"
msgstr "# các khoá phiên chạy được chấp nhận"
-#: src/transport/plugin_transport_wlan.c:905
+#: src/transport/plugin_transport_wlan.c:908
#, fuzzy
msgid "# wlan session created"
msgstr "# các khoá phiên chạy được chấp nhận"
-#: src/transport/plugin_transport_wlan.c:989
-#: src/transport/plugin_transport_wlan.c:1151
-#: src/transport/plugin_transport_wlan.c:1172
-#: src/transport/plugin_transport_wlan.c:1203
-#: src/transport/plugin_transport_wlan.c:2406
-#: src/transport/plugin_transport_wlan.c:3265
+#: src/transport/plugin_transport_wlan.c:992
+#: src/transport/plugin_transport_wlan.c:1154
+#: src/transport/plugin_transport_wlan.c:1175
+#: src/transport/plugin_transport_wlan.c:1206
+#: src/transport/plugin_transport_wlan.c:2409
+#: src/transport/plugin_transport_wlan.c:3268
msgid "# wlan pending sessions"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1246
-#: src/transport/plugin_transport_wlan.c:1961
+#: src/transport/plugin_transport_wlan.c:1249
+#: src/transport/plugin_transport_wlan.c:1964
#, fuzzy
msgid "# wlan pending fragments"
msgstr "# các mảnh bị loại bỏ"
-#: src/transport/plugin_transport_wlan.c:1437
+#: src/transport/plugin_transport_wlan.c:1440
#, c-format
msgid "Finished reading from wlan-helper stdout with code: %d\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1802
+#: src/transport/plugin_transport_wlan.c:1805
msgid "# wlan hello beacons send"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1835
-#: src/transport/plugin_transport_wlan.c:2050
-#: src/transport/plugin_transport_wlan.c:2145
+#: src/transport/plugin_transport_wlan.c:1838
+#: src/transport/plugin_transport_wlan.c:2053
+#: src/transport/plugin_transport_wlan.c:2148
#, c-format
msgid "Error writing to wlan helper. errno == %d, ERROR: %s\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2036
+#: src/transport/plugin_transport_wlan.c:2039
msgid "# wlan acks send"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2107
+#: src/transport/plugin_transport_wlan.c:2110
#, fuzzy
msgid "# wlan fragments send"
msgstr "# các mảnh bị loại bỏ"
-#: src/transport/plugin_transport_wlan.c:2273
+#: src/transport/plugin_transport_wlan.c:2276
#, c-format
msgid "Wlan Address len %d is wrong\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2278
+#: src/transport/plugin_transport_wlan.c:2281
#, fuzzy
msgid "# wlan messages queued"
msgstr "# các thông báo phát hiện dht được nhận"
-#: src/transport/plugin_transport_wlan.c:2367
-#: src/transport/plugin_transport_wlan.c:3021
-#: src/transport/plugin_transport_wlan.c:3268
+#: src/transport/plugin_transport_wlan.c:2370
+#: src/transport/plugin_transport_wlan.c:3024
+#: src/transport/plugin_transport_wlan.c:3271
msgid "# wlan mac endpoints"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2595
+#: src/transport/plugin_transport_wlan.c:2598
#, fuzzy
msgid "# wlan whole messages received"
msgstr "# các thông báo phát hiện dht được nhận"
-#: src/transport/plugin_transport_wlan.c:2795
+#: src/transport/plugin_transport_wlan.c:2798
#, fuzzy
msgid "# wlan hello messages received"
msgstr "# các thông báo phát hiện dht được nhận"
-#: src/transport/plugin_transport_wlan.c:2832
+#: src/transport/plugin_transport_wlan.c:2835
#, fuzzy
msgid "# wlan fragments received"
msgstr "# các mảnh bị loại bỏ"
-#: src/transport/plugin_transport_wlan.c:2884
+#: src/transport/plugin_transport_wlan.c:2887
#, fuzzy
msgid "# wlan acks received"
msgstr "# các yêu cầu khách lỗ hổng được nhận"
-#: src/transport/plugin_transport_wlan.c:2981
+#: src/transport/plugin_transport_wlan.c:2984
msgid "# wlan mac endpoints timeouts"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:3005
+#: src/transport/plugin_transport_wlan.c:3008
#, fuzzy
msgid "# wlan mac endpoints created"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/transport/plugin_transport_wlan.c:3063
+#: src/transport/plugin_transport_wlan.c:3066
msgid "# wlan WLAN_HELPER_DATA received"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:3119
+#: src/transport/plugin_transport_wlan.c:3122
#, fuzzy
msgid "# wlan messages for this client received"
msgstr "# các thông báo phát hiện dht được nhận"
-#: src/transport/plugin_transport_wlan.c:3130
+#: src/transport/plugin_transport_wlan.c:3133
#, fuzzy
msgid "# wlan messages inside WLAN_HELPER_DATA received"
msgstr "# các thông báo phát hiện dht được nhận"
-#: src/transport/gnunet-transport.c:245
+#: src/transport/gnunet-transport.c:250
#, c-format
msgid "No transport plugins configured, peer will never communicate\n"
msgstr ""
-#: src/transport/gnunet-transport.c:258
+#: src/transport/gnunet-transport.c:263
#, c-format
msgid "No port configured for plugin `%s', cannot test it\n"
msgstr ""
-#: src/transport/gnunet-transport.c:308
+#: src/transport/gnunet-transport.c:313
#, c-format
msgid "Received %llu bytes/s (%llu bytes in %llu ms)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:315
+#: src/transport/gnunet-transport.c:320
#, c-format
msgid "Transmitted %llu bytes/s (%llu bytes in %llu ms)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:348
+#: src/transport/gnunet-transport.c:353
#, fuzzy, c-format
msgid "Transmitting %u bytes to %s\n"
msgstr "Đang thử tải danh sách các máy xuống « %s »\n"
-#: src/transport/gnunet-transport.c:368
+#: src/transport/gnunet-transport.c:373
#, fuzzy, c-format
msgid "Connected to %s\n"
msgstr "« %s » được kết nối tới « %s ».\n"
-#: src/transport/gnunet-transport.c:399
+#: src/transport/gnunet-transport.c:404
#, fuzzy, c-format
msgid "Disconnected from %s\n"
msgstr "« %.*s » được kết nối tới « %.*s ».\n"
-#: src/transport/gnunet-transport.c:428
+#: src/transport/gnunet-transport.c:433
#, fuzzy, c-format
msgid "Received %u bytes from %s\n"
msgstr "Nhận yêu cầu định tuyến\n"
-#: src/transport/gnunet-transport.c:448
+#: src/transport/gnunet-transport.c:447
#, fuzzy, c-format
-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 "Peer `%s': %s\n"
+msgstr "Tôi là đồng đẳng « %s ».\n"
-#: src/transport/gnunet-transport.c:486
+#: src/transport/gnunet-transport.c:519
#, 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/transport/gnunet-transport.c:522
+#: src/transport/gnunet-transport.c:556
msgid "measure how fast we are receiving data (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:525
+#: src/transport/gnunet-transport.c:559
#, fuzzy
msgid "try to connect to the given peer"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/transport/gnunet-transport.c:528
+#: src/transport/gnunet-transport.c:562
#, fuzzy
msgid "provide information about all current connections (once)"
msgstr "In ra thông tin về các đồng đẳng GNUnet."
-#: src/transport/gnunet-transport.c:532
+#: src/transport/gnunet-transport.c:566
msgid "send data for benchmarking to the other peer (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:535
+#: src/transport/gnunet-transport.c:569
msgid "test transport configuration (involves external server)"
msgstr ""
-#: src/transport/gnunet-transport.c:543
+#: src/transport/gnunet-transport.c:572
+#, fuzzy
+msgid "do not resolve hostnames"
+msgstr "không quyết định các tên máy"
+
+#: src/transport/gnunet-transport.c:580
#, fuzzy
msgid "Direct access to transport service."
msgstr "Lỗi kết nối đến gnunetd.\n"
msgid "GNUnet NAT traversal test helper daemon"
msgstr ""
-#: src/nat/nat.c:803
+#: src/nat/nat.c:805
#, c-format
msgid "gnunet-helper-nat-server generated malformed address `%s'\n"
msgstr ""
-#: src/nat/nat.c:852
+#: src/nat/nat.c:854
#, fuzzy, c-format
msgid "Failed to start %s\n"
msgstr "Lỗi bắt đầu thu thập.\n"
-#: src/nat/nat.c:1121
+#: src/nat/nat.c:1123
#, fuzzy, c-format
msgid "Malformed %s `%s' given in configuration!\n"
msgstr "Lỗi lưu cấu hình."
-#: src/nat/nat.c:1187 src/nat/nat.c:1197
+#: src/nat/nat.c:1189 src/nat/nat.c:1199
#, c-format
msgid ""
"Configuration requires `%s', but binary is not installed properly (SUID bit "
"not set). Option disabled.\n"
msgstr ""
-#: src/nat/nat.c:1329
+#: src/nat/nat.c:1331
msgid "Internal IP address not known, cannot use ICMP NAT traversal method\n"
msgstr ""
-#: src/nat/nat.c:1341
+#: src/nat/nat.c:1343
#, c-format
msgid "Running gnunet-helper-nat-client %s %s %u\n"
msgstr ""
msgid "Loading block plugin `%s'\n"
msgstr "Đang nạp các truyền tải « %s »\n"
-#: src/mesh/gnunet-service-mesh.c:4201
+#: src/mesh/gnunet-service-mesh.c:4218
msgid "MESH: Wrong CORE service\n"
msgstr ""
-#: src/mesh/gnunet-service-mesh.c:4406
+#: src/mesh/gnunet-service-mesh.c:4423
#, fuzzy
msgid "Mesh service is lacking key configuration settings. Exiting.\n"
msgstr "Lưu cấu hình ngay bây giờ không?"
-#: src/mesh/gnunet-service-mesh.c:4415
+#: src/mesh/gnunet-service-mesh.c:4432
#, 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"
msgid "Hostlist file `%s' could not be removed\n"
msgstr "Khoá phiên chạy từ đồng đẳng « %s » không thể được thẩm tra.\n"
-#: src/hostlist/gnunet-daemon-hostlist.c:257
+#: src/hostlist/gnunet-daemon-hostlist.c:262
msgid ""
"None of the functions for the hostlist daemon were enabled. I have no "
"reason to run!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:310
+#: src/hostlist/gnunet-daemon-hostlist.c:315
#, fuzzy
msgid "advertise our hostlist to other peers"
msgstr "Tắt quảng cáo máy này cho đồng đẳng khác"
-#: src/hostlist/gnunet-daemon-hostlist.c:315
+#: src/hostlist/gnunet-daemon-hostlist.c:320
msgid ""
"bootstrap using hostlists (it is highly recommended that you always use this "
"option)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:318
+#: src/hostlist/gnunet-daemon-hostlist.c:323
#, fuzzy
msgid "enable learning about hostlist servers from other peers"
msgstr "Tắt quảng cáo máy này cho đồng đẳng khác"
-#: src/hostlist/gnunet-daemon-hostlist.c:322
+#: src/hostlist/gnunet-daemon-hostlist.c:327
#, fuzzy
msgid "provide a hostlist server"
msgstr "trình phục vụ danh sách máy HTTP hợp nhất"
-#: src/hostlist/gnunet-daemon-hostlist.c:334
+#: src/hostlist/gnunet-daemon-hostlist.c:339
msgid "GNUnet hostlist server and client"
msgstr ""
msgid "Could not start hostlist HTTP server on port %u\n"
msgstr "Cổng cho trình phục vụ HTTP danh sách máy chủ thống nhất"
-#: src/peerinfo-tool/gnunet-peerinfo.c:221
+#: src/peerinfo-tool/gnunet-peerinfo.c:219
#, 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:228
+#: src/peerinfo-tool/gnunet-peerinfo.c:226
#, c-format
msgid "Loading hostkey from `%s' failed.\n"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:240
+#: src/peerinfo-tool/gnunet-peerinfo.c:238
#, c-format
msgid "I am peer `%s'.\n"
msgstr "Tôi là đồng đẳng « %s ».\n"
-#: src/peerinfo-tool/gnunet-peerinfo.c:260
+#: src/peerinfo-tool/gnunet-peerinfo.c:258
msgid "output only the identity strings"
msgstr "chỉ xuất những chuỗi nhận diện"
-#: src/peerinfo-tool/gnunet-peerinfo.c:263
+#: src/peerinfo-tool/gnunet-peerinfo.c:261
msgid "output our own identity only"
msgstr "chỉ xuất nhận diện mình"
-#: src/peerinfo-tool/gnunet-peerinfo.c:269
+#: src/peerinfo-tool/gnunet-peerinfo.c:267
#, fuzzy
msgid "Print information about peers."
msgstr "In ra thông tin về các đồng đẳng GNUnet."
msgid "use configuration file FILENAME"
msgstr "dùng tập tin cấu hình TÊN_TẬP_TIN"
-#: src/include/gnunet_common.h:361 src/include/gnunet_common.h:366
-#: src/include/gnunet_common.h:372
+#: src/include/gnunet_common.h:366 src/include/gnunet_common.h:371
+#: src/include/gnunet_common.h:377
#, fuzzy, c-format
msgid "Assertion failed at %s:%d.\n"
msgstr "Lỗi nội bộ : khẳng định không thành công tại %s:%d.\n"
-#: src/include/gnunet_common.h:382
+#: src/include/gnunet_common.h:387
#, fuzzy, c-format
msgid "External protocol violation detected at %s:%d.\n"
msgstr "Lỗi nội bộ : khẳng định không thành công tại %s:%d.\n"
-#: src/include/gnunet_common.h:403 src/include/gnunet_common.h:410
+#: src/include/gnunet_common.h:408 src/include/gnunet_common.h:415
#, c-format
msgid "`%s' failed on file `%s' at %s:%d with error: %s\n"
msgstr "« %s » thất bại ở tập tin « %s » tại %s:%d với lỗi: %s\n"
+#, 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"
msgstr ""
"Project-Id-Version: gnunet-0.8.1\n"
"Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n"
-"POT-Creation-Date: 2011-11-26 14:53+0100\n"
+"POT-Creation-Date: 2011-11-29 21:38+0100\n"
"PO-Revision-Date: 2011-07-09 12:12+0800\n"
"Last-Translator: Wylmer Wang <wantinghard@gmail.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
#: src/datacache/plugin_datacache_mysql.c:517
#: src/datacache/plugin_datacache_mysql.c:526
#: src/datacache/plugin_datacache_mysql.c:598
-#: src/datacache/plugin_datacache_mysql.c:614 src/include/gnunet_common.h:389
-#: src/include/gnunet_common.h:396
+#: src/datacache/plugin_datacache_mysql.c:614 src/include/gnunet_common.h:394
+#: src/include/gnunet_common.h:401
#, fuzzy, c-format
msgid "`%s' failed at %s:%d with error: %s\n"
msgstr "“%s”于 %s:%d 处失败,错误为:%s\n"
msgid "Peer `%s'\n"
msgstr ""
-#: src/core/gnunet-core-list-connections.c:167
-#: src/peerinfo-tool/gnunet-peerinfo.c:199
+#: src/core/gnunet-core-list-connections.c:178
+#: src/peerinfo-tool/gnunet-peerinfo.c:197
#, fuzzy, c-format
msgid "Invalid command line argument `%s'\n"
msgstr "“%s”的参数无效。\n"
-#: src/core/gnunet-core-list-connections.c:188
-#: src/peerinfo-tool/gnunet-peerinfo.c:257
+#: src/core/gnunet-core-list-connections.c:199
+#: src/peerinfo-tool/gnunet-peerinfo.c:255
msgid "don't resolve host names"
msgstr ""
-#: src/core/gnunet-core-list-connections.c:195
+#: src/core/gnunet-core-list-connections.c:206
msgid "Print information about connected peers."
msgstr ""
-#: src/core/gnunet-service-core_clients.c:357
+#: src/core/gnunet-service-core_clients.c:359
msgid "# send requests dropped (disconnected)"
msgstr ""
-#: src/core/gnunet-service-core_clients.c:462
+#: src/core/gnunet-service-core_clients.c:464
msgid "# messages discarded (session disconnected)"
msgstr ""
-#: src/core/gnunet-service-core_clients.c:800
+#: src/core/gnunet-service-core_clients.c:801
#, c-format
msgid "# bytes of messages of type %u received"
msgstr ""
msgstr ""
#: src/core/gnunet-service-core_kx.c:602 src/dv/gnunet-service-dv.c:3002
-#: src/hostlist/hostlist-server.c:436 src/peerinfo-tool/gnunet-peerinfo.c:156
+#: src/hostlist/hostlist-server.c:436 src/peerinfo-tool/gnunet-peerinfo.c:154
#, c-format
msgid "Error in communication with PEERINFO service\n"
msgstr ""
#: src/core/gnunet-service-core_kx.c:1539
#: src/transport/gnunet-service-transport.c:537
-#: src/hostlist/hostlist-server.c:555 src/peerinfo-tool/gnunet-peerinfo.c:207
+#: src/hostlist/hostlist-server.c:555 src/peerinfo-tool/gnunet-peerinfo.c:205
#, c-format
msgid "Could not access PEERINFO service. Exiting.\n"
msgstr ""
msgid "Use --help to get a list of options.\n"
msgstr "请使用 --help 获取选项列表。\n"
-#: src/util/scheduler.c:860
+#: src/util/scheduler.c:870
msgid "Looks like we're busy waiting...\n"
msgstr ""
-#: src/util/scheduler.c:990
+#: src/util/scheduler.c:1000
#, c-format
msgid "Attempt to cancel dead task %llu!\n"
msgstr ""
msgid "RSA signature verification failed at %s:%d: %s\n"
msgstr ""
-#: src/nse/gnunet-nse-profiler.c:647 src/dht/gnunet-dht-get.c:213
+#: src/nse/gnunet-nse-profiler.c:634 src/dht/gnunet-dht-get.c:213
#: src/dht/gnunet-dht-put.c:184 src/fs/gnunet-unindex.c:169
#: src/fs/gnunet-search.c:297 src/fs/gnunet-publish.c:591
#: src/fs/gnunet-download.c:263
msgid "be verbose (print progress information)"
msgstr ""
-#: src/nse/gnunet-nse-profiler.c:665
+#: src/nse/gnunet-nse-profiler.c:652
#, fuzzy
msgid "Measure quality and performance of the NSE service."
msgstr "无法访问该服务"
-#: src/nse/gnunet-service-nse.c:904
+#: src/nse/gnunet-service-nse.c:902
#, c-format
msgid "Proof of work invalid: %llu!\n"
msgstr ""
-#: src/nse/gnunet-service-nse.c:1329 src/nse/gnunet-service-nse.c:1348
-#: src/nse/gnunet-service-nse.c:1369
+#: src/nse/gnunet-service-nse.c:1326 src/nse/gnunet-service-nse.c:1345
+#: src/nse/gnunet-service-nse.c:1366
msgid "NSE service is lacking key configuration settings. Exiting.\n"
msgstr ""
-#: src/nse/gnunet-service-nse.c:1336
+#: src/nse/gnunet-service-nse.c:1333
msgid "Invalid work requirement for NSE service. Exiting.\n"
msgstr ""
-#: src/nse/gnunet-service-nse.c:1357
+#: src/nse/gnunet-service-nse.c:1354
#, fuzzy
msgid "NSE service could not access hostkey. Exiting.\n"
msgstr "找不到接口“%s”的一个 IP 地址。\n"
msgstr ""
#: src/fs/gnunet-publish.c:393 src/fs/gnunet-publish.c:400
-#: src/transport/gnunet-transport.c:477
+#: src/transport/gnunet-transport.c:510
#, c-format
msgid "Option `%s' makes no sense without option `%s'.\n"
msgstr ""
#: src/fs/gnunet-service-fs_cp.c:615 src/fs/gnunet-service-fs_cp.c:1543
#: src/transport/gnunet-service-transport_neighbours.c:938
#: src/transport/gnunet-service-transport_neighbours.c:943
-#: src/transport/gnunet-service-transport_neighbours.c:1266
-#: src/transport/gnunet-service-transport_neighbours.c:2354
-#: src/transport/gnunet-service-transport_neighbours.c:2425
+#: src/transport/gnunet-service-transport_neighbours.c:1269
+#: src/transport/gnunet-service-transport_neighbours.c:2382
+#: src/transport/gnunet-service-transport_neighbours.c:2453
#: src/topology/gnunet-daemon-topology.c:654
#: src/topology/gnunet-daemon-topology.c:756
msgid "# peers connected"
#: src/fs/gnunet-service-fs.c:583 src/topology/gnunet-daemon-topology.c:1290
#: src/topology/gnunet-daemon-topology.c:1297
-#: src/hostlist/gnunet-daemon-hostlist.c:290
+#: src/hostlist/gnunet-daemon-hostlist.c:295
#, fuzzy, c-format
msgid "Failed to connect to `%s' service.\n"
msgstr "初始化“%s”服务失败。\n"
msgid "# peers disconnected due to global disconnect"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1774
-#: src/transport/gnunet-service-transport_neighbours.c:1795
+#: src/transport/gnunet-service-transport_neighbours.c:1800
+#: src/transport/gnunet-service-transport_neighbours.c:1821
msgid "# messages not sent (no such peer or not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1811
+#: src/transport/gnunet-service-transport_neighbours.c:1837
msgid "# bytes in message queue for other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1863
+#: src/transport/gnunet-service-transport_neighbours.c:1889
msgid "# messages discarded due to lack of neighbour record"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1899
+#: src/transport/gnunet-service-transport_neighbours.c:1925
msgid "# bandwidth quota violations by other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1917
+#: src/transport/gnunet-service-transport_neighbours.c:1943
msgid "# ms throttling suggested"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1946
+#: src/transport/gnunet-service-transport_neighbours.c:1972
msgid "# KEEPALIVE messages discarded (not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1995
+#: src/transport/gnunet-service-transport_neighbours.c:2023
msgid "# KEEPALIVE_RESPONSE messages discarded (not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2003
+#: src/transport/gnunet-service-transport_neighbours.c:2031
msgid "# KEEPALIVE_RESPONSE messages discarded (not expected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2064
+#: src/transport/gnunet-service-transport_neighbours.c:2092
msgid "# SET QUOTA messages ignored (no such peer)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2082
+#: src/transport/gnunet-service-transport_neighbours.c:2110
msgid "# disconnects due to quota of 0"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2200
+#: src/transport/gnunet-service-transport_neighbours.c:2228
msgid "# disconnect messages ignored (old format)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2213
+#: src/transport/gnunet-service-transport_neighbours.c:2241
msgid "# disconnect messages ignored (timestamp)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2289
+#: src/transport/gnunet-service-transport_neighbours.c:2317
msgid "# unexpected CONNECT_ACK messages (no peer)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2304
+#: src/transport/gnunet-service-transport_neighbours.c:2332
msgid "# unexpected CONNECT_ACK messages"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2402
+#: src/transport/gnunet-service-transport_neighbours.c:2430
msgid "# unexpected ACK messages"
msgstr ""
msgid "# refreshed my HELLO"
msgstr ""
-#: src/transport/plugin_transport_udp.c:1518
+#: src/transport/plugin_transport_udp.c:1520
msgid "# IPv4 broadcast HELLO beacons received via udp"
msgstr ""
-#: src/transport/plugin_transport_udp.c:1555
+#: src/transport/plugin_transport_udp.c:1557
msgid "# IPv6 multicast HELLO beacons received via udp"
msgstr ""
-#: src/transport/plugin_transport_udp.c:2041
+#: src/transport/plugin_transport_udp.c:2043
#: src/transport/plugin_transport_udp_new.c:1218
#, c-format
msgid "Given `%s' option is out of range: %llu > %u\n"
msgstr ""
-#: src/transport/plugin_transport_udp.c:2092
+#: src/transport/plugin_transport_udp.c:2094
#: src/transport/plugin_transport_udp_new.c:1268
#, fuzzy, c-format
msgid "Invalid IPv6 address: `%s'\n"
msgstr "无效的进程优先级“%s”\n"
-#: src/transport/plugin_transport_udp.c:2235
+#: src/transport/plugin_transport_udp.c:2237
#, c-format
msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
msgstr ""
-#: src/transport/plugin_transport_udp.c:2296
+#: src/transport/plugin_transport_udp.c:2298
#: src/transport/plugin_transport_udp_new.c:1396
#, fuzzy
msgid "Failed to open UDP sockets\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/transport/plugin_transport_http_client.c:107
-#: src/transport/plugin_transport_http_client.c:122
+#: src/transport/plugin_transport_http_client.c:108
+#: src/transport/plugin_transport_http_client.c:123
#: src/hostlist/hostlist-client.c:472 src/hostlist/hostlist-client.c:682
#: src/hostlist/hostlist-client.c:688 src/hostlist/hostlist-client.c:740
#: src/hostlist/hostlist-client.c:749 src/hostlist/hostlist-client.c:877
msgid "%s failed at %s:%d: `%s'\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:619
+#: src/transport/plugin_transport_http_client.c:620
#, c-format
msgid "Could not initialize curl multi handle, failed to start %s plugin!\n"
msgstr ""
msgid "Failed to load transport plugin for `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/transport/plugin_transport_wlan.c:881
+#: src/transport/plugin_transport_wlan.c:884
msgid "# wlan session timeouts"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:905
+#: src/transport/plugin_transport_wlan.c:908
msgid "# wlan session created"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:989
-#: src/transport/plugin_transport_wlan.c:1151
-#: src/transport/plugin_transport_wlan.c:1172
-#: src/transport/plugin_transport_wlan.c:1203
-#: src/transport/plugin_transport_wlan.c:2406
-#: src/transport/plugin_transport_wlan.c:3265
+#: src/transport/plugin_transport_wlan.c:992
+#: src/transport/plugin_transport_wlan.c:1154
+#: src/transport/plugin_transport_wlan.c:1175
+#: src/transport/plugin_transport_wlan.c:1206
+#: src/transport/plugin_transport_wlan.c:2409
+#: src/transport/plugin_transport_wlan.c:3268
msgid "# wlan pending sessions"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1246
-#: src/transport/plugin_transport_wlan.c:1961
+#: src/transport/plugin_transport_wlan.c:1249
+#: src/transport/plugin_transport_wlan.c:1964
msgid "# wlan pending fragments"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1437
+#: src/transport/plugin_transport_wlan.c:1440
#, c-format
msgid "Finished reading from wlan-helper stdout with code: %d\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1802
+#: src/transport/plugin_transport_wlan.c:1805
msgid "# wlan hello beacons send"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:1835
-#: src/transport/plugin_transport_wlan.c:2050
-#: src/transport/plugin_transport_wlan.c:2145
+#: src/transport/plugin_transport_wlan.c:1838
+#: src/transport/plugin_transport_wlan.c:2053
+#: src/transport/plugin_transport_wlan.c:2148
#, c-format
msgid "Error writing to wlan helper. errno == %d, ERROR: %s\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2036
+#: src/transport/plugin_transport_wlan.c:2039
msgid "# wlan acks send"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2107
+#: src/transport/plugin_transport_wlan.c:2110
msgid "# wlan fragments send"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2273
+#: src/transport/plugin_transport_wlan.c:2276
#, c-format
msgid "Wlan Address len %d is wrong\n"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2278
+#: src/transport/plugin_transport_wlan.c:2281
msgid "# wlan messages queued"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2367
-#: src/transport/plugin_transport_wlan.c:3021
-#: src/transport/plugin_transport_wlan.c:3268
+#: src/transport/plugin_transport_wlan.c:2370
+#: src/transport/plugin_transport_wlan.c:3024
+#: src/transport/plugin_transport_wlan.c:3271
msgid "# wlan mac endpoints"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2595
+#: src/transport/plugin_transport_wlan.c:2598
msgid "# wlan whole messages received"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2795
+#: src/transport/plugin_transport_wlan.c:2798
msgid "# wlan hello messages received"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2832
+#: src/transport/plugin_transport_wlan.c:2835
msgid "# wlan fragments received"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2884
+#: src/transport/plugin_transport_wlan.c:2887
msgid "# wlan acks received"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:2981
+#: src/transport/plugin_transport_wlan.c:2984
msgid "# wlan mac endpoints timeouts"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:3005
+#: src/transport/plugin_transport_wlan.c:3008
msgid "# wlan mac endpoints created"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:3063
+#: src/transport/plugin_transport_wlan.c:3066
msgid "# wlan WLAN_HELPER_DATA received"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:3119
+#: src/transport/plugin_transport_wlan.c:3122
msgid "# wlan messages for this client received"
msgstr ""
-#: src/transport/plugin_transport_wlan.c:3130
+#: src/transport/plugin_transport_wlan.c:3133
msgid "# wlan messages inside WLAN_HELPER_DATA received"
msgstr ""
-#: src/transport/gnunet-transport.c:245
+#: src/transport/gnunet-transport.c:250
#, c-format
msgid "No transport plugins configured, peer will never communicate\n"
msgstr ""
-#: src/transport/gnunet-transport.c:258
+#: src/transport/gnunet-transport.c:263
#, c-format
msgid "No port configured for plugin `%s', cannot test it\n"
msgstr ""
-#: src/transport/gnunet-transport.c:308
+#: src/transport/gnunet-transport.c:313
#, c-format
msgid "Received %llu bytes/s (%llu bytes in %llu ms)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:315
+#: src/transport/gnunet-transport.c:320
#, c-format
msgid "Transmitted %llu bytes/s (%llu bytes in %llu ms)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:348
+#: src/transport/gnunet-transport.c:353
#, c-format
msgid "Transmitting %u bytes to %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:368
+#: src/transport/gnunet-transport.c:373
#, fuzzy, c-format
msgid "Connected to %s\n"
msgstr "“%s”已连接到“%s”。\n"
-#: src/transport/gnunet-transport.c:399
+#: src/transport/gnunet-transport.c:404
#, fuzzy, c-format
msgid "Disconnected from %s\n"
msgstr "“%s”已连接到“%s”。\n"
-#: src/transport/gnunet-transport.c:428
+#: src/transport/gnunet-transport.c:433
#, c-format
msgid "Received %u bytes from %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:448
-#, c-format
-msgid "Peer `%s' plugin: `%s' address `%s'\n"
-msgstr ""
+#: src/transport/gnunet-transport.c:447
+#, fuzzy, c-format
+msgid "Peer `%s': %s\n"
+msgstr "运行 %s失败:%s %d\n"
-#: src/transport/gnunet-transport.c:486
+#: src/transport/gnunet-transport.c:519
#, fuzzy, c-format
msgid "Failed to parse peer identity `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/transport/gnunet-transport.c:522
+#: src/transport/gnunet-transport.c:556
msgid "measure how fast we are receiving data (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:525
+#: src/transport/gnunet-transport.c:559
#, fuzzy
msgid "try to connect to the given peer"
msgstr "初始化“%s”服务失败。\n"
-#: src/transport/gnunet-transport.c:528
+#: src/transport/gnunet-transport.c:562
msgid "provide information about all current connections (once)"
msgstr ""
-#: src/transport/gnunet-transport.c:532
+#: src/transport/gnunet-transport.c:566
msgid "send data for benchmarking to the other peer (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:535
+#: src/transport/gnunet-transport.c:569
msgid "test transport configuration (involves external server)"
msgstr ""
-#: src/transport/gnunet-transport.c:543
+#: src/transport/gnunet-transport.c:572
+msgid "do not resolve hostnames"
+msgstr ""
+
+#: src/transport/gnunet-transport.c:580
#, fuzzy
msgid "Direct access to transport service."
msgstr "初始化“%s”服务失败。\n"
msgid "GNUnet NAT traversal test helper daemon"
msgstr ""
-#: src/nat/nat.c:803
+#: src/nat/nat.c:805
#, c-format
msgid "gnunet-helper-nat-server generated malformed address `%s'\n"
msgstr ""
-#: src/nat/nat.c:852
+#: src/nat/nat.c:854
#, fuzzy, c-format
msgid "Failed to start %s\n"
msgstr "运行 %s失败:%s %d\n"
-#: src/nat/nat.c:1121
+#: src/nat/nat.c:1123
#, fuzzy, c-format
msgid "Malformed %s `%s' given in configuration!\n"
msgstr "保存配置失败。"
-#: src/nat/nat.c:1187 src/nat/nat.c:1197
+#: src/nat/nat.c:1189 src/nat/nat.c:1199
#, c-format
msgid ""
"Configuration requires `%s', but binary is not installed properly (SUID bit "
"not set). Option disabled.\n"
msgstr ""
-#: src/nat/nat.c:1329
+#: src/nat/nat.c:1331
msgid "Internal IP address not known, cannot use ICMP NAT traversal method\n"
msgstr ""
-#: src/nat/nat.c:1341
+#: src/nat/nat.c:1343
#, c-format
msgid "Running gnunet-helper-nat-client %s %s %u\n"
msgstr ""
msgid "Loading block plugin `%s'\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/mesh/gnunet-service-mesh.c:4201
+#: src/mesh/gnunet-service-mesh.c:4218
msgid "MESH: Wrong CORE service\n"
msgstr ""
-#: src/mesh/gnunet-service-mesh.c:4406
+#: src/mesh/gnunet-service-mesh.c:4423
#, fuzzy
msgid "Mesh service is lacking key configuration settings. Exiting.\n"
msgstr "立即保存配置?"
-#: src/mesh/gnunet-service-mesh.c:4415
+#: src/mesh/gnunet-service-mesh.c:4432
#, fuzzy
msgid "Mesh service could not access hostkey. Exiting.\n"
msgstr "找不到接口“%s”的一个 IP 地址。\n"
msgid "Hostlist file `%s' could not be removed\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:257
+#: src/hostlist/gnunet-daemon-hostlist.c:262
msgid ""
"None of the functions for the hostlist daemon were enabled. I have no "
"reason to run!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:310
+#: src/hostlist/gnunet-daemon-hostlist.c:315
msgid "advertise our hostlist to other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:315
+#: src/hostlist/gnunet-daemon-hostlist.c:320
msgid ""
"bootstrap using hostlists (it is highly recommended that you always use this "
"option)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:318
+#: src/hostlist/gnunet-daemon-hostlist.c:323
msgid "enable learning about hostlist servers from other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:322
+#: src/hostlist/gnunet-daemon-hostlist.c:327
msgid "provide a hostlist server"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:334
+#: src/hostlist/gnunet-daemon-hostlist.c:339
msgid "GNUnet hostlist server and client"
msgstr ""
msgid "Could not start hostlist HTTP server on port %u\n"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:221
+#: src/peerinfo-tool/gnunet-peerinfo.c:219
#, fuzzy, c-format
msgid "Could not find option `%s:%s' in configuration.\n"
msgstr "找不到主机“%s”的 IP:%s\n"
-#: src/peerinfo-tool/gnunet-peerinfo.c:228
+#: src/peerinfo-tool/gnunet-peerinfo.c:226
#, c-format
msgid "Loading hostkey from `%s' failed.\n"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:240
+#: src/peerinfo-tool/gnunet-peerinfo.c:238
#, c-format
msgid "I am peer `%s'.\n"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:260
+#: src/peerinfo-tool/gnunet-peerinfo.c:258
msgid "output only the identity strings"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:263
+#: src/peerinfo-tool/gnunet-peerinfo.c:261
msgid "output our own identity only"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:269
+#: src/peerinfo-tool/gnunet-peerinfo.c:267
#, fuzzy
msgid "Print information about peers."
msgstr "无法获取有关用户“%s”的信息:%s\n"
msgid "use configuration file FILENAME"
msgstr ""
-#: src/include/gnunet_common.h:361 src/include/gnunet_common.h:366
-#: src/include/gnunet_common.h:372
+#: src/include/gnunet_common.h:366 src/include/gnunet_common.h:371
+#: src/include/gnunet_common.h:377
#, c-format
msgid "Assertion failed at %s:%d.\n"
msgstr ""
-#: src/include/gnunet_common.h:382
+#: src/include/gnunet_common.h:387
#, c-format
msgid "External protocol violation detected at %s:%d.\n"
msgstr ""
-#: src/include/gnunet_common.h:403 src/include/gnunet_common.h:410
+#: src/include/gnunet_common.h:408 src/include/gnunet_common.h:415
#, c-format
msgid "`%s' failed on file `%s' at %s:%d with error: %s\n"
msgstr ""
atc->peers = GNUNET_CONTAINER_multihashmap_create (256);
atc->notify_map = GNUNET_CONTAINER_multihashmap_create (256);
GNUNET_CONFIGURATION_get_value_size (cfg, "ats", "WAN_QUOTA_OUT",
- &atc->total_bps_out);
+ &atc->total_bps_out);
GNUNET_CONFIGURATION_get_value_size (cfg, "ats", "WAN_QUOTA_IN",
- &atc->total_bps_in);
+ &atc->total_bps_in);
return atc;
}
address.address = plugin_address;
address.address_length = plugin_address_length;
address.transport_name = plugin_name;
- ph->infocb (ph->infocb_cls, &address,
- pi->bandwidth_out, pi->bandwidth_in, atsi, ats_count);
+ ph->infocb (ph->infocb_cls, &address, pi->bandwidth_out, pi->bandwidth_in,
+ atsi, ats_count);
return GNUNET_OK;
}
const struct GNUNET_PeerIdentity *peer)
{
#if DEBUG_ATS
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Find session %u from peer %s in %p\n",
- (unsigned int) session_id,
- GNUNET_i2s (peer),
- sh);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Find session %u from peer %s in %p\n",
+ (unsigned int) session_id, GNUNET_i2s (peer), sh);
#endif
if (session_id >= sh->session_array_size)
{
if (sh->session_array[session_id].session == NULL)
{
GNUNET_break (0 ==
- memcmp (peer, &sh->session_array[session_id].peer,
- sizeof (struct GNUNET_PeerIdentity)));
+ memcmp (peer, &sh->session_array[session_id].peer,
+ sizeof (struct GNUNET_PeerIdentity)));
return NULL;
}
if (0 !=
memcmp (peer, &sh->session_array[session_id].peer,
- sizeof (struct GNUNET_PeerIdentity)))
+ sizeof (struct GNUNET_PeerIdentity)))
{
GNUNET_break (0);
sh->reconnect = GNUNET_YES;
#if DEBUG_ATS
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Get session ID for session %p from peer %s in %p\n",
- session,
- GNUNET_i2s (peer),
- sh);
+ "Get session ID for session %p from peer %s in %p\n", session,
+ GNUNET_i2s (peer), sh);
#endif
if (NULL == session)
return 0;
{
if (session == sh->session_array[i].session)
{
- GNUNET_assert (0 == memcmp (peer, &sh->session_array[i].peer,
- sizeof (struct GNUNET_PeerIdentity)));
+ GNUNET_assert (0 ==
+ memcmp (peer, &sh->session_array[i].peer,
+ sizeof (struct GNUNET_PeerIdentity)));
return i;
}
if ((f == 0) && (sh->session_array[i].slot_used == GNUNET_NO))
sh->session_array[f].slot_used = GNUNET_YES;
#if DEBUG_ATS
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Assigning session ID %u for session %p of peer %s in %p\n",
- f,
- session,
- GNUNET_i2s (peer),
- sh);
+ "Assigning session ID %u for session %p of peer %s in %p\n", f,
+ session, GNUNET_i2s (peer), sh);
#endif
return f;
}
{
#if DEBUG_ATS
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Remove sessionID %u from peer %s in %p\n",
- (unsigned int) session_id,
- GNUNET_i2s (peer),
- sh);
+ "Remove sessionID %u from peer %s in %p\n",
+ (unsigned int) session_id, GNUNET_i2s (peer), sh);
#endif
if (0 == session_id)
return;
GNUNET_assert (session_id < sh->session_array_size);
GNUNET_assert (GNUNET_YES == sh->session_array[session_id].slot_used);
- GNUNET_assert (0 == memcmp (peer, &sh->session_array[session_id].peer,
+ GNUNET_assert (0 ==
+ memcmp (peer, &sh->session_array[session_id].peer,
sizeof (struct GNUNET_PeerIdentity)));
sh->session_array[session_id].session = NULL;
}
{
#if DEBUG_ATS
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Release sessionID %u from peer %s in %p\n",
- (unsigned int) session_id,
- GNUNET_i2s (peer),
- sh);
+ "Release sessionID %u from peer %s in %p\n",
+ (unsigned int) session_id, GNUNET_i2s (peer), sh);
#endif
if (session_id >= sh->session_array_size)
{
/* this slot should have been removed from remove_session before */
GNUNET_assert (sh->session_array[session_id].session == NULL);
- if (0 != memcmp (peer, &sh->session_array[session_id].peer,
+ if (0 !=
+ memcmp (peer, &sh->session_array[session_id].peer,
sizeof (struct GNUNET_PeerIdentity)))
{
GNUNET_break (0);
uint16_t plugin_name_length;
uint32_t ats_count;
struct GNUNET_HELLO_Address address;
- struct Session * s;
+ struct Session *s;
if (NULL == msg)
{
force_reconnect (sh);
return;
}
- uint32_t session_id = ntohl (m->session_id);
+ uint32_t session_id = ntohl (m->session_id);
if (session_id == 0)
s = NULL;
if (s == NULL)
{
#if DEBUG_ATS
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "ATS tries to use outdated session `%s'\n",
- GNUNET_i2s(&m->peer));
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "ATS tries to use outdated session `%s'\n",
+ GNUNET_i2s (&m->peer));
#endif
GNUNET_CLIENT_receive (sh->client, &process_ats_message, sh,
GNUNET_TIME_UNIT_FOREVER_REL);
if ((s == NULL) && (0 == address.address_length))
{
- GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
- "ATS returned invalid address for peer `%s' transport `%s' address length %i, session_id %i\n",
- GNUNET_i2s(&address.peer) , address.transport_name, plugin_address_length, session_id);
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ "ATS returned invalid address for peer `%s' transport `%s' address length %i, session_id %i\n",
+ GNUNET_i2s (&address.peer), address.transport_name,
+ plugin_address_length, session_id);
GNUNET_break_op (0);
GNUNET_CLIENT_receive (sh->client, &process_ats_message, sh,
GNUNET_TIME_UNIT_FOREVER_REL);
size_t namelen;
size_t msize;
- namelen = (address->transport_name == NULL) ? 0 : strlen (address->transport_name) + 1;
+ namelen =
+ (address->transport_name ==
+ NULL) ? 0 : strlen (address->transport_name) + 1;
msize =
sizeof (struct AddressUpdateMessage) + address->address_length +
ats_count * sizeof (struct GNUNET_ATS_Information) + namelen;
void
GNUNET_ATS_address_in_use (struct GNUNET_ATS_SchedulingHandle *sh,
const struct GNUNET_HELLO_Address *address,
- struct Session *session,
- int in_use)
+ struct Session *session, int in_use)
{
struct PendingMessage *p;
struct AddressUseMessage *m;
size_t msize;
GNUNET_assert (NULL != address);
- namelen = (address->transport_name == NULL) ? 0 : strlen (address->transport_name) + 1;
+ namelen =
+ (address->transport_name ==
+ NULL) ? 0 : strlen (address->transport_name) + 1;
msize = sizeof (struct AddressUseMessage) + address->address_length + namelen;
if ((msize >= GNUNET_SERVER_MAX_MESSAGE_SIZE) ||
(address->address_length >= GNUNET_SERVER_MAX_MESSAGE_SIZE) ||
GNUNET_assert (address->transport_name != NULL);
namelen = strlen (address->transport_name) + 1;
GNUNET_assert (namelen > 1);
- msize = sizeof (struct AddressDestroyedMessage) + address->address_length + namelen;
+ msize =
+ sizeof (struct AddressDestroyedMessage) + address->address_length +
+ namelen;
if ((msize >= GNUNET_SERVER_MAX_MESSAGE_SIZE) ||
(address->address_length >= GNUNET_SERVER_MAX_MESSAGE_SIZE) ||
(namelen >= GNUNET_SERVER_MAX_MESSAGE_SIZE))
const struct ATS_Address *info = cls;
struct ATS_Address *aa = value;
- GNUNET_assert (0 == memcmp (&aa->peer,
- &info->peer,
- sizeof (struct GNUNET_PeerIdentity)));
- if ( (info->session_id == 0) &&
- (0 == strcmp (info->plugin,
- aa->plugin)) &&
- (aa->addr_len == info->addr_len) &&
- (0 == memcmp (info->addr,
- aa->addr,
- aa->addr_len)) )
+ GNUNET_assert (0 ==
+ memcmp (&aa->peer, &info->peer,
+ sizeof (struct GNUNET_PeerIdentity)));
+ if ((info->session_id == 0) && (0 == strcmp (info->plugin, aa->plugin)) &&
+ (aa->addr_len == info->addr_len) &&
+ (0 == memcmp (info->addr, aa->addr, aa->addr_len)))
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Deleting address for peer `%s': `%s'\n",
- GNUNET_i2s (&aa->peer), aa->plugin);
+ "Deleting address for peer `%s': `%s'\n",
+ GNUNET_i2s (&aa->peer), aa->plugin);
if (GNUNET_YES == destroy_address (aa))
recalculate_assigned_bw ();
return GNUNET_OK;
}
if (aa->session_id != info->session_id)
- return GNUNET_OK; /* irrelevant */
+ return GNUNET_OK; /* irrelevant */
if (aa->session_id != 0)
GNUNET_break (0 == strcmp (info->plugin, aa->plugin));
/* session died */
aa.addr = plugin_addr;
aa.plugin = (char *) plugin_name;
aa.session_id = session_id;
- GNUNET_CONTAINER_multihashmap_get_multiple (addresses,
- &peer->hashPubKey,
- &destroy_by_session_id,
- &aa);
+ GNUNET_CONTAINER_multihashmap_get_multiple (addresses, &peer->hashPubKey,
+ &destroy_by_session_id, &aa);
}
void
GAS_addresses_in_use (const struct GNUNET_PeerIdentity *peer,
const char *plugin_name, const void *plugin_addr,
- size_t plugin_addr_len, uint32_t session_id,
- int in_use)
+ size_t plugin_addr_len, uint32_t session_id, int in_use)
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Received `%s' message for peer `%s': %i\n",
- "ADDRESS_IN_USE",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Received `%s' message for peer `%s': %i\n", "ADDRESS_IN_USE",
GNUNET_i2s (peer), in_use);
}
{
GNUNET_assert (GNUNET_OK ==
GNUNET_CONFIGURATION_get_value_size (cfg, "ats",
- "WAN_QUOTA_IN",
- &wan_quota_in));
+ "WAN_QUOTA_IN",
+ &wan_quota_in));
GNUNET_assert (GNUNET_OK ==
GNUNET_CONFIGURATION_get_value_size (cfg, "ats",
- "WAN_QUOTA_OUT",
- &wan_quota_out));
+ "WAN_QUOTA_OUT",
+ &wan_quota_out));
addresses = GNUNET_CONTAINER_multihashmap_create (128);
}
void
GAS_addresses_in_use (const struct GNUNET_PeerIdentity *peer,
const char *plugin_name, const void *plugin_addr,
- size_t plugin_addr_len, uint32_t session_id,
- int in_use);
+ size_t plugin_addr_len, uint32_t session_id, int in_use);
void
GAS_addresses_update (const struct GNUNET_PeerIdentity *peer,
memcpy (addrp, plugin_addr, plugin_addr_len);
strcpy (&addrp[plugin_addr_len], plugin_name);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "ATS sends quota for peer `%s': (in/out) %u/%u\n",
- GNUNET_i2s (peer), ntohl (bandwidth_in.value__), ntohl(bandwidth_out.value__));
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "ATS sends quota for peer `%s': (in/out) %u/%u\n",
+ GNUNET_i2s (peer), ntohl (bandwidth_in.value__),
+ ntohl (bandwidth_out.value__));
GNUNET_SERVER_notification_context_unicast (nc, my_client, &msg->header,
GNUNET_YES);
* @param message the request message
*/
void
-GAS_handle_request_address_cancel (void *cls, struct GNUNET_SERVER_Client *client,
- const struct GNUNET_MessageHeader *message)
+GAS_handle_request_address_cancel (void *cls,
+ struct GNUNET_SERVER_Client *client,
+ const struct GNUNET_MessageHeader *message)
{
const struct RequestAddressMessage *msg =
(const struct RequestAddressMessage *) message;
}
in_use = ntohs (m->in_use);
- GAS_addresses_in_use (&m->peer,
- plugin_name,
- address,
- address_length,
- ntohl (m->session_id),
- in_use);
+ GAS_addresses_in_use (&m->peer, plugin_name, address, address_length,
+ ntohl (m->session_id), in_use);
GNUNET_SERVER_receive_done (client, GNUNET_OK);
}
GNUNET_SERVER_receive_done (client, GNUNET_SYSERR);
return;
}
- if ( (plugin_name_length == 0) ||
- (plugin_name[plugin_name_length - 1] != '\0'))
+ if ((plugin_name_length == 0) ||
+ (plugin_name[plugin_name_length - 1] != '\0'))
{
GNUNET_break (0);
GNUNET_SERVER_receive_done (client, GNUNET_SYSERR);
* @param message the request message
*/
void
-GAS_handle_request_address_cancel (void *cls, struct GNUNET_SERVER_Client *client,
- const struct GNUNET_MessageHeader *message);
+GAS_handle_request_address_cancel (void *cls,
+ struct GNUNET_SERVER_Client *client,
+ const struct GNUNET_MessageHeader *message);
/**
* Handle 'address update' messages from clients.
static void
-address_suggest_cb (void *cls,
- const struct GNUNET_HELLO_Address *address,
+address_suggest_cb (void *cls, const struct GNUNET_HELLO_Address *address,
struct Session *session,
struct GNUNET_BANDWIDTH_Value32NBO bandwidth_out,
struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in,
GNUNET_i2s (&address->peer));
GNUNET_assert (0 ==
- memcmp (&address->peer, &p[0].id, sizeof (struct GNUNET_PeerIdentity)));
+ memcmp (&address->peer, &p[0].id,
+ sizeof (struct GNUNET_PeerIdentity)));
GNUNET_assert (0 == strcmp (address->transport_name, addr[0].plugin));
GNUNET_assert (address->address_length == addr[0].addr_len);
- GNUNET_assert (0 == memcmp (address->address, addr[0].plugin, address->address_length));
+ GNUNET_assert (0 ==
+ memcmp (address->address, addr[0].plugin,
+ address->address_length));
GNUNET_assert (addr[0].session == session);
GNUNET_ATS_address_update (ats, &address0, addr[0].session, atsi, 2);
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Testing manual address deletion \n");
- address0.peer = p[1].id; // FIXME: why? typo in old code?
+ address0.peer = p[1].id; // FIXME: why? typo in old code?
GNUNET_ATS_address_update (ats, &address0, addr[0].session, NULL, 0);
GNUNET_ATS_address_destroyed (ats, &address0, addr[0].session);
}
/* Order entries by deadline, but SKIP 'HEAD' (as we may have transmitted
- that request already or might even already be approved to transmit that
- message to core) */
+ * that request already or might even already be approved to transmit that
+ * message to core) */
pos = pr->pending_head;
if (pos != NULL)
pos = pos->next; /* skip head */
* @param address NULL on error, otherwise 0-terminated printable UTF-8 string
*/
static void
-process_resolved_address (void *cls,
- const struct GNUNET_PeerIdentity *peer,
- const struct GNUNET_HELLO_Address *address)
+process_resolved_address (void *cls, const struct GNUNET_PeerIdentity *peer,
+ const struct GNUNET_HELLO_Address *address)
{
struct PrintContext *pc = cls;
+
// struct AddressStringList *new_address;
if (address == NULL)
return;
}
- /* This does exactly the same as gnunet-transport -i !*/
+ /* This does exactly the same as gnunet-transport -i ! */
/*
- new_address = GNUNET_malloc (sizeof (struct AddressStringList));
-#if VERBOSE
- fprintf (stderr, "Received address %s\n", address);
-#endif
-
- new_address->address_string = GNUNET_strdup ("FIXME");
- GNUNET_CONTAINER_DLL_insert (pc->address_list_head, pc->address_list_tail,
- new_address);
+ * new_address = GNUNET_malloc (sizeof (struct AddressStringList));
+ * #if VERBOSE
+ * fprintf (stderr, "Received address %s\n", address);
+ * #endif
+ *
+ * new_address->address_string = GNUNET_strdup ("FIXME");
+ * GNUNET_CONTAINER_DLL_insert (pc->address_list_head, pc->address_list_tail,
+ * new_address);
*/
}
#endif
pc = GNUNET_malloc (sizeof (struct PrintContext));
pc->peer = *peer;
- GNUNET_TRANSPORT_peer_get_active_addresses (cfg,
- peer,
- GNUNET_YES,
+ GNUNET_TRANSPORT_peer_get_active_addresses (cfg, peer, GNUNET_YES,
GNUNET_TIME_UNIT_MINUTES,
- &process_resolved_address,
- pc);
+ &process_resolved_address, pc);
}
#if VERBOSE
else
"Client asked for transmission to `%s'\n",
GNUNET_i2s (&req->peer));
#endif
- is_loopback = (0 ==
- memcmp (&req->peer, &GSC_my_identity,
- sizeof (struct GNUNET_PeerIdentity)));
- if ( (! is_loopback) &&
- (GNUNET_YES !=
- GNUNET_CONTAINER_multihashmap_contains (c->connectmap,
- &req->peer.hashPubKey)) )
+ is_loopback =
+ (0 ==
+ memcmp (&req->peer, &GSC_my_identity,
+ sizeof (struct GNUNET_PeerIdentity)));
+ if ((!is_loopback) &&
+ (GNUNET_YES !=
+ GNUNET_CONTAINER_multihashmap_contains (c->connectmap,
+ &req->peer.hashPubKey)))
{
/* neighbour must have disconnected since request was issued,
* ignore (client will realize it once it processes the
GSC_CLIENTS_solicit_request (car);
GNUNET_SERVER_receive_done (client, GNUNET_OK);
return;
- }
- GSC_SESSIONS_queue_request (car);
+ }
+ GSC_SESSIONS_queue_request (car);
GNUNET_SERVER_receive_done (client, GNUNET_OK);
}
c = car->client_handle;
if (GNUNET_YES !=
GNUNET_CONTAINER_multihashmap_contains (c->connectmap,
- &car->
- target.hashPubKey))
+ &car->target.hashPubKey))
{
/* connection has gone down since, drop request */
GNUNET_assert (0 !=
- memcmp (&car->target, &GSC_my_identity,
- sizeof (struct GNUNET_PeerIdentity)));
+ memcmp (&car->target, &GSC_my_identity,
+ sizeof (struct GNUNET_PeerIdentity)));
GSC_SESSIONS_dequeue_request (car);
GSC_CLIENTS_reject_request (car);
return;
break;
default:
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- _("Unsupported message of type %u (%u bytes) received from peer `%s'\n"),
- (unsigned int) type,
- (unsigned int) ntohs (message->size),
- GNUNET_i2s (peer));
+ _
+ ("Unsupported message of type %u (%u bytes) received from peer `%s'\n"),
+ (unsigned int) type, (unsigned int) ntohs (message->size),
+ GNUNET_i2s (peer));
return;
}
}
struct Session *session;
struct GSC_ClientActiveRequest *car;
struct SessionMessageEntry *sme;
-
+
session = find_session (pid);
if (NULL == session)
return;
}
while (NULL != (sme = session->sme_head))
{
- GNUNET_CONTAINER_DLL_remove (session->sme_head,
- session->sme_tail,
- sme);
+ GNUNET_CONTAINER_DLL_remove (session->sme_head, session->sme_tail, sme);
GNUNET_free (sme);
}
GNUNET_SCHEDULER_cancel (session->typemap_task);
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Dropped client request for transmission (am disconnected)\n");
#endif
- GNUNET_break (0); /* should have been rejected earlier */
+ GNUNET_break (0); /* should have been rejected earlier */
GSC_CLIENTS_reject_request (car);
return;
}
discard_expired_requests (session);
so_size = 0;
nxt = session->active_client_request_head;
- while (NULL != (car = nxt) )
+ while (NULL != (car = nxt))
{
nxt = car->next;
if (so_size + car->msize > GNUNET_CONSTANTS_MAX_ENCRYPTED_MESSAGE_SIZE)
GNUNET_assert (test != -1);
GNUNET_assert (GNUNET_SYSERR !=
GNUNET_CONFIGURATION_get_value_size (p1.cfg, "ATS",
- "WAN_QUOTA_IN",
- ¤t_quota_p1_in));
+ "WAN_QUOTA_IN",
+ ¤t_quota_p1_in));
GNUNET_assert (GNUNET_SYSERR !=
GNUNET_CONFIGURATION_get_value_size (p2.cfg, "ATS",
- "WAN_QUOTA_IN",
- ¤t_quota_p2_in));
+ "WAN_QUOTA_IN",
+ ¤t_quota_p2_in));
GNUNET_assert (GNUNET_SYSERR !=
GNUNET_CONFIGURATION_get_value_size (p1.cfg, "ATS",
- "WAN_QUOTA_OUT",
- ¤t_quota_p1_out));
+ "WAN_QUOTA_OUT",
+ ¤t_quota_p1_out));
GNUNET_assert (GNUNET_SYSERR !=
GNUNET_CONFIGURATION_get_value_size (p2.cfg, "ATS",
- "WAN_QUOTA_OUT",
- ¤t_quota_p2_out));
+ "WAN_QUOTA_OUT",
+ ¤t_quota_p2_out));
p1.ch =
GNUNET_CORE_connect (p1.cfg, 1, &p1, &init_notify, &connect_notify,
if (buf == NULL)
{
#if DEBUG_DATASTORE
- LOG (GNUNET_ERROR_TYPE_DEBUG,
- "Failed to transmit request to DATASTORE.\n");
+ LOG (GNUNET_ERROR_TYPE_DEBUG, "Failed to transmit request to DATASTORE.\n");
#endif
GNUNET_STATISTICS_update (h->stats,
gettext_noop ("# transmission request failures"),
}
ok = 1;
/* testing_peergroup will do that in its own end_badly() handler */
- /*GNUNET_TESTING_daemons_stop (pg, TIMEOUT, &shutdown_callback, NULL);*/
+ /*GNUNET_TESTING_daemons_stop (pg, TIMEOUT, &shutdown_callback, NULL); */
pg = NULL;
}
my_id, GNUNET_i2s (sender),
ntohs (((struct GNUNET_MessageHeader *) msg)->type),
distance);
- if (sender_address_len == (2 * sizeof(struct GNUNET_PeerIdentity)))
- {
- GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, "plugin_transport_dv", "Parsed sender address: %s:%s\n", GNUNET_i2s((struct GNUNET_PeerIdentity *)sender_address), GNUNET_h2s(&((struct GNUNET_PeerIdentity *)&sender_address[sizeof(struct GNUNET_PeerIdentity)])->hashPubKey));
- }
+ if (sender_address_len == (2 * sizeof (struct GNUNET_PeerIdentity)))
+ {
+ GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, "plugin_transport_dv",
+ "Parsed sender address: %s:%s\n",
+ GNUNET_i2s ((struct GNUNET_PeerIdentity *) sender_address),
+ GNUNET_h2s (&
+ ((struct GNUNET_PeerIdentity *)
+ &sender_address[sizeof
+ (struct
+ GNUNET_PeerIdentity)])->hashPubKey));
+ }
GNUNET_free_non_null (my_id);
#endif
* @return connected transport distance
*/
static uint32_t
-get_atsi_distance (const struct GNUNET_ATS_Information *atsi, unsigned int atsi_count)
+get_atsi_distance (const struct GNUNET_ATS_Information *atsi,
+ unsigned int atsi_count)
{
unsigned int i;
for (i = 0; i < atsi_count; i++)
- {
- if (ntohl (atsi->type) == GNUNET_ATS_QUALITY_NET_DISTANCE)
- return ntohl (atsi->value);
- }
+ {
+ if (ntohl (atsi->type) == GNUNET_ATS_QUALITY_NET_DISTANCE)
+ return ntohl (atsi->value);
+ }
GNUNET_break (0);
/* FIXME: we do not have distance data? Assume direct neighbor. */
static int
-process_mtype (void *cls,
- const struct GNUNET_PeerIdentity *peer,
+process_mtype (void *cls, const struct GNUNET_PeerIdentity *peer,
const struct GNUNET_MessageHeader *message,
const struct GNUNET_ATS_Information *atsi,
unsigned int atsi_count)
{
GNUNET_SCHEDULER_cancel (die_task);
#if VERBOSE
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Scheduling timeout from DV connections.\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Scheduling timeout from DV connections.\n");
#endif
die_task =
GNUNET_SCHEDULER_add_delayed (TEST_TIMEOUT, &end_badly,
/**
* Target fragment size.
*/
- uint16_t mtu;
+ uint16_t mtu;
};
fc->num_rounds++;
delay =
GNUNET_TIME_relative_max (GNUNET_TIME_relative_multiply (delay, 2),
- GNUNET_TIME_relative_multiply (fc->delay, fc->num_rounds));
+ GNUNET_TIME_relative_multiply (fc->delay,
+ fc->num_rounds));
/* never use zero, need some time for ACK always */
delay = GNUNET_TIME_relative_max (GNUNET_TIME_UNIT_MILLISECONDS, delay);
fc->last_round = GNUNET_TIME_absolute_get ();
if (ntohl (fa->fragment_id) != fc->fragment_id)
return GNUNET_SYSERR; /* not our ACK */
abits = GNUNET_ntohll (fa->bits);
- if ( (GNUNET_YES == fc->wack) &&
- (abits == (fc->acks & abits)) )
+ if ((GNUNET_YES == fc->wack) && (abits == (fc->acks & abits)))
{
/* normal ACK, can update running average of delay... */
fc->wack = GNUNET_NO;
ndelay = GNUNET_TIME_absolute_get_duration (fc->last_round);
- fc->delay.rel_value = (ndelay.rel_value * fc->num_rounds + 3 * fc->delay.rel_value) / 4;
+ fc->delay.rel_value =
+ (ndelay.rel_value * fc->num_rounds + 3 * fc->delay.rel_value) / 4;
}
GNUNET_STATISTICS_update (fc->stats,
_("# fragment acknowledgements received"), 1,
}
if (parent != NULL)
{
- GNUNET_abort (); // for debugging for now - FIXME
+ GNUNET_abort (); // for debugging for now - FIXME
GNUNET_CONTAINER_DLL_insert (parent->child_head, parent->child_tail, dc);
}
if (search != NULL)
mbc.put_cnt = GNUNET_MIN (mbc.put_cnt, sqms - mbc.skip_cnt);
if (sc->search_request_map_offset < sqms)
GNUNET_assert (mbc.put_cnt > 0);
-
+
sm->header.size = htons (msize);
sm->type = htonl (GNUNET_BLOCK_TYPE_ANY);
sm->anonymity_level = htonl (sc->anonymity);
{
if (list_indexed_files)
{
- fs = GNUNET_FS_start (cfg, "gnunet-fs", NULL, NULL, GNUNET_FS_FLAGS_NONE, GNUNET_FS_OPTIONS_END);
+ fs = GNUNET_FS_start (cfg, "gnunet-fs", NULL, NULL, GNUNET_FS_FLAGS_NONE,
+ GNUNET_FS_OPTIONS_END);
if (NULL == fs)
{
ret = 1;
{
if (ntohl (atsi[i].type) == GNUNET_ATS_QUALITY_NET_DELAY)
{
- GSF_avg_latency.rel_value = (GSF_avg_latency.rel_value * 31 +
- GNUNET_MIN (5000,
- ntohl (atsi[i].value))) / 32;
+ GSF_avg_latency.rel_value =
+ (GSF_avg_latency.rel_value * 31 +
+ GNUNET_MIN (5000, ntohl (atsi[i].value))) / 32;
GNUNET_STATISTICS_set (GSF_stats,
gettext_noop
("# running average P2P latency (ms)"),
int ret;
pr = NULL;
- ret = GSF_local_client_start_search_handler_ (client, message,
- &pr);
+ ret = GSF_local_client_start_search_handler_ (client, message, &pr);
switch (ret)
{
case GNUNET_SYSERR:
{NULL, NULL, 0, 0}
};
- GSF_core = GNUNET_CORE_connect (GSF_cfg, 1,
- NULL, &peer_init_handler,
- &peer_connect_handler,
- &GSF_peer_disconnect_handler_, NULL,
- GNUNET_NO, NULL, GNUNET_NO, p2p_handlers);
+ GSF_core =
+ GNUNET_CORE_connect (GSF_cfg, 1, NULL, &peer_init_handler,
+ &peer_connect_handler, &GSF_peer_disconnect_handler_,
+ NULL, GNUNET_NO, NULL, GNUNET_NO, p2p_handlers);
if (NULL == GSF_core)
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
GSF_local_client_start_search_handler_ (struct GNUNET_SERVER_Client *client,
const struct GNUNET_MessageHeader
*message,
- struct GSF_PendingRequest **prptr)
+ struct GSF_PendingRequest **prptr)
{
static GNUNET_HashCode all_zeros;
const struct SearchMessage *sm;
{
#if DEBUG_FS_CLIENT
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Have existing request, merging content-seen lists.\n");
+ "Have existing request, merging content-seen lists.\n");
#endif
- GSF_pending_request_update_ (cr->pr, (const GNUNET_HashCode *) &sm[1],
- sc);
+ GSF_pending_request_update_ (cr->pr, (const GNUNET_HashCode *) &sm[1], sc);
GNUNET_STATISTICS_update (GSF_stats,
- gettext_noop
- ("# client searches updated (merged content seen list)"),
- 1, GNUNET_NO);
- }
+ gettext_noop
+ ("# client searches updated (merged content seen list)"),
+ 1, GNUNET_NO);
+ }
else
{
GNUNET_STATISTICS_update (GSF_stats,
- gettext_noop ("# client searches active"), 1,
- GNUNET_NO);
+ gettext_noop ("# client searches active"), 1,
+ GNUNET_NO);
cr = GNUNET_malloc (sizeof (struct ClientRequest));
cr->lc = lc;
GNUNET_CONTAINER_DLL_insert (lc->cr_head, lc->cr_tail, cr);
options = GSF_PRO_LOCAL_REQUEST;
if (0 != (SEARCH_MESSAGE_OPTION_LOOPBACK_ONLY & ntohl (sm->options)))
options |= GSF_PRO_LOCAL_ONLY;
- cr->pr = GSF_pending_request_create_ (options, type, &sm->query,
- (type == GNUNET_BLOCK_TYPE_FS_SBLOCK) ? &sm->target /* namespace */
- : NULL,
- (0 !=
- memcmp (&sm->target, &all_zeros,
- sizeof (GNUNET_HashCode)))
- ? (const struct GNUNET_PeerIdentity *)
- &sm->target : NULL, NULL, 0,
- 0 /* bf */ ,
- ntohl (sm->anonymity_level),
- 0 /* priority */ ,
- 0 /* ttl */ ,
- 0 /* sender PID */ ,
- 0 /* origin PID */ ,
- (const GNUNET_HashCode *) &sm[1], sc,
- &client_response_handler, cr);
+ cr->pr = GSF_pending_request_create_ (options, type, &sm->query, (type == GNUNET_BLOCK_TYPE_FS_SBLOCK) ? &sm->target /* namespace */
+ : NULL,
+ (0 !=
+ memcmp (&sm->target, &all_zeros,
+ sizeof (GNUNET_HashCode)))
+ ? (const struct GNUNET_PeerIdentity *)
+ &sm->target : NULL, NULL, 0,
+ 0 /* bf */ ,
+ ntohl (sm->anonymity_level),
+ 0 /* priority */ ,
+ 0 /* ttl */ ,
+ 0 /* sender PID */ ,
+ 0 /* origin PID */ ,
+ (const GNUNET_HashCode *) &sm[1], sc,
+ &client_response_handler, cr);
}
*prptr = cr->pr;
- return (0 != (SEARCH_MESSAGE_OPTION_CONTINUED & ntohl (sm->options))) ? GNUNET_NO : GNUNET_YES;
+ return (0 !=
+ (SEARCH_MESSAGE_OPTION_CONTINUED & ntohl (sm->options))) ? GNUNET_NO :
+ GNUNET_YES;
}
GSF_local_client_start_search_handler_ (struct GNUNET_SERVER_Client *client,
const struct GNUNET_MessageHeader
*message,
- struct GSF_PendingRequest **prptr);
+ struct GSF_PendingRequest **prptr);
/**
gettext_noop ("# average retransmission delay (ms)"),
total_delay * 1000LL / plan_count, GNUNET_NO);
prd = GSF_pending_request_get_data_ (rp->prl_head->pr);
-
+
if (rp->transmission_counter < 8)
delay =
GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS,
GNUNET_CRYPTO_random_u32 (GNUNET_CRYPTO_QUALITY_WEAK,
delay.rel_value + 1);
/* Add 0.01 to avg_delay to avoid division-by-zero later */
- avg_delay = (((avg_delay * (N-1.0)) + delay.rel_value) / N) + 0.01;
+ avg_delay = (((avg_delay * (N - 1.0)) + delay.rel_value) / N) + 0.01;
/*
- For the priority, we need to consider a few basic rules:
- 1) if we just started requesting (delay is small), we should
- virtually always have a priority of zero.
- 2) for requests with average latency, our priority should match
- the average priority observed on the network
- 3) even the longest-running requests should not be WAY out of
- the observed average (thus we bound by a factor of 2)
- 4) we add +1 to the observed average priority to avoid everyone
- staying put at zero (2 * 0 = 0...).
-
- Using the specific calculation below, we get:
-
- delay = 0 => priority = 0;
- delay = avg delay => priority = running-average-observed-priority;
- delay >> avg_delay => priority = 2 * running-average-observed-priority;
-
- which satisfies all of the rules above.
-
- Note: M_PI_4 = PI/4 = arctan(1)
- */
- rp->priority = round ((GSF_current_priorities + 1.0) * atan (delay.rel_value / avg_delay)) / M_PI_4;
+ * For the priority, we need to consider a few basic rules:
+ * 1) if we just started requesting (delay is small), we should
+ * virtually always have a priority of zero.
+ * 2) for requests with average latency, our priority should match
+ * the average priority observed on the network
+ * 3) even the longest-running requests should not be WAY out of
+ * the observed average (thus we bound by a factor of 2)
+ * 4) we add +1 to the observed average priority to avoid everyone
+ * staying put at zero (2 * 0 = 0...).
+ *
+ * Using the specific calculation below, we get:
+ *
+ * delay = 0 => priority = 0;
+ * delay = avg delay => priority = running-average-observed-priority;
+ * delay >> avg_delay => priority = 2 * running-average-observed-priority;
+ *
+ * which satisfies all of the rules above.
+ *
+ * Note: M_PI_4 = PI/4 = arctan(1)
+ */
+ rp->priority =
+ round ((GSF_current_priorities +
+ 1.0) * atan (delay.rel_value / avg_delay)) / M_PI_4;
/* Note: usage of 'round' and 'atan' requires -lm */
if (rp->transmission_counter != 0)
}
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_size (GSF_cfg, "ats", "WAN_QUOTA_OUT",
- &bps))
+ &bps))
{
GNUNET_log (GNUNET_ERROR_TYPE_INFO,
_
*/
struct GNUNET_HELLO_Address *
GNUNET_HELLO_address_allocate (const struct GNUNET_PeerIdentity *peer,
- const char *transport_name,
- const void *address,
- size_t address_length)
+ const char *transport_name, const void *address,
+ size_t address_length)
{
struct GNUNET_HELLO_Address *addr;
size_t slen;
char *end;
slen = strlen (transport_name) + 1;
- addr = GNUNET_malloc (sizeof (struct GNUNET_HELLO_Address) +
- address_length +
- slen);
+ addr =
+ GNUNET_malloc (sizeof (struct GNUNET_HELLO_Address) + address_length +
+ slen);
addr->peer = *peer;
addr->address = &addr[1];
- end = (char*) &addr[1];
+ end = (char *) &addr[1];
memcpy (end, address, address_length);
addr->address_length = address_length;
addr->transport_name = &end[address_length];
* @return the size
*/
size_t
-GNUNET_HELLO_address_get_size (const struct GNUNET_HELLO_Address *address)
+GNUNET_HELLO_address_get_size (const struct GNUNET_HELLO_Address * address)
{
- return sizeof (struct GNUNET_HELLO_Address) +
- address->address_length +
- strlen(address->transport_name) + 1;
+ return sizeof (struct GNUNET_HELLO_Address) + address->address_length +
+ strlen (address->transport_name) + 1;
}
struct GNUNET_HELLO_Address *
GNUNET_HELLO_address_copy (const struct GNUNET_HELLO_Address *address)
{
- return GNUNET_HELLO_address_allocate (&address->peer,
- address->transport_name,
- address->address,
- address->address_length);
+ return GNUNET_HELLO_address_allocate (&address->peer, address->transport_name,
+ address->address,
+ address->address_length);
}
*/
int
GNUNET_HELLO_address_cmp (const struct GNUNET_HELLO_Address *a1,
- const struct GNUNET_HELLO_Address *a2)
+ const struct GNUNET_HELLO_Address *a2)
{
int ret;
- ret = strcmp (a1->transport_name,
- a2->transport_name);
+ ret = strcmp (a1->transport_name, a2->transport_name);
if (0 != ret)
return ret;
- if (a1->address_length < a2->address_length)
+ if (a1->address_length < a2->address_length)
return -1;
- if (a1->address_length > a2->address_length)
+ if (a1->address_length > a2->address_length)
return 1;
- return memcmp (a1->address,
- a1->address,
- a1->address_length);
+ return memcmp (a1->address, a1->address, a1->address_length);
}
*/
size_t
GNUNET_HELLO_add_address (const struct GNUNET_HELLO_Address *address,
- struct GNUNET_TIME_Absolute expiration,
- char *target,
+ struct GNUNET_TIME_Absolute expiration, char *target,
size_t max)
{
uint16_t alen;
wpos = 0;
woff = (ret != NULL) ? (char *) &ret[1] : NULL;
GNUNET_CRYPTO_hash (&msg->publicKey,
- sizeof (struct GNUNET_CRYPTO_RsaPublicKeyBinaryEncoded),
- &address.peer.hashPubKey);
+ sizeof (struct GNUNET_CRYPTO_RsaPublicKeyBinaryEncoded),
+ &address.peer.hashPubKey);
while (insize > 0)
{
esize = get_hello_address_size (inptr, insize, &alen);
static int
-get_match_exp (void *cls,
- const struct GNUNET_HELLO_Address *address,
+get_match_exp (void *cls, const struct GNUNET_HELLO_Address *address,
struct GNUNET_TIME_Absolute expiration)
{
struct ExpireContext *ec = cls;
- if (0 == GNUNET_HELLO_address_cmp (address,
- ec->address))
+ if (0 == GNUNET_HELLO_address_cmp (address, ec->address))
{
ec->found = GNUNET_YES;
ec->expiration = expiration;
static int
-copy_latest (void *cls,
- const struct GNUNET_HELLO_Address *address,
+copy_latest (void *cls, const struct GNUNET_HELLO_Address *address,
struct GNUNET_TIME_Absolute expiration)
{
struct MergeContext *mc = cls;
(mc->take_equal == GNUNET_YES)))
{
mc->ret +=
- GNUNET_HELLO_add_address (address,
- expiration,
- &mc->buf[mc->ret], mc->max - mc->ret);
+ GNUNET_HELLO_add_address (address, expiration, &mc->buf[mc->ret],
+ mc->max - mc->ret);
}
return GNUNET_OK;
}
static int
-delta_match (void *cls,
- const struct GNUNET_HELLO_Address *address,
+delta_match (void *cls, const struct GNUNET_HELLO_Address *address,
struct GNUNET_TIME_Absolute expiration)
{
struct DeltaContext *dc = cls;
if (expiration.abs_value < ec->expiration_limit.abs_value)
return GNUNET_YES;
- if (0 ==
- GNUNET_HELLO_address_cmp (address,
- ec->address))
+ if (0 == GNUNET_HELLO_address_cmp (address, ec->address))
{
ec->found = GNUNET_YES;
if (expiration.abs_value < ec->expiration.abs_value)
address.transport_name = "test";
address.address_length = *i;
ret =
- GNUNET_HELLO_add_address (&address, GNUNET_TIME_absolute_get (),
- buf, max);
+ GNUNET_HELLO_add_address (&address, GNUNET_TIME_absolute_get (), buf,
+ max);
(*i)--;
return ret;
}
GNUNET_assert (address->address_length > 0);
GNUNET_assert (*i & (1 << (address->address_length - 1)));
*i -= (1 << (address->address_length - 1));
- GNUNET_assert (0 == strncmp ("address_information", address->address, address->address_length));
+ GNUNET_assert (0 ==
+ strncmp ("address_information", address->address,
+ address->address_length));
GNUNET_assert (0 == strcmp ("test", address->transport_name));
return GNUNET_OK;
}
* @param ats_count number of performance records in 'ats'
*/
typedef void (*GNUNET_ATS_AddressSuggestionCallback) (void *cls,
- const struct GNUNET_HELLO_Address *address,
+ const struct
+ GNUNET_HELLO_Address *
+ address,
struct Session * session,
struct
GNUNET_BANDWIDTH_Value32NBO
*/
void
GNUNET_ATS_suggest_address_cancel (struct GNUNET_ATS_SchedulingHandle *sh,
- const struct GNUNET_PeerIdentity *peer);
+ const struct GNUNET_PeerIdentity *peer);
/**
* We have updated performance statistics for a given address. Note
*/
void
GNUNET_ATS_address_update (struct GNUNET_ATS_SchedulingHandle *sh,
- const struct GNUNET_HELLO_Address *address,
+ const struct GNUNET_HELLO_Address *address,
struct Session *session,
const struct GNUNET_ATS_Information *ats,
uint32_t ats_count);
void
GNUNET_ATS_address_in_use (struct GNUNET_ATS_SchedulingHandle *sh,
const struct GNUNET_HELLO_Address *address,
- struct Session *session,
- int in_use);
+ struct Session *session, int in_use);
/**
* A session got destroyed, stop including it as a valid address.
void
GNUNET_ATS_address_destroyed (struct GNUNET_ATS_SchedulingHandle *sh,
const struct GNUNET_HELLO_Address *address,
- struct Session *session);
+ struct Session *session);
/* ******************************** Performance API ***************************** */
* @param ats_count number of performance records in 'ats'
*/
typedef void (*GNUNET_ATS_PeerInformationCallback) (void *cls,
- const struct GNUNET_HELLO_Address *address,
+ const struct
+ GNUNET_HELLO_Address *
+ address,
struct
GNUNET_BANDWIDTH_Value32NBO
bandwidth_out,
*/
unsigned int depth;
- /**
+ /**
* How much trust did we offer for downloading this block?
*/
- unsigned int trust_offered;
+ unsigned int trust_offered;
} progress;
/**
* For which peer is this an address?
- */
+ */
struct GNUNET_PeerIdentity peer;
/**
*/
struct GNUNET_HELLO_Address *
GNUNET_HELLO_address_allocate (const struct GNUNET_PeerIdentity *peer,
- const char *transport_name,
- const void *address,
- size_t address_length);
+ const char *transport_name, const void *address,
+ size_t address_length);
/**
*/
int
GNUNET_HELLO_address_cmp (const struct GNUNET_HELLO_Address *a1,
- const struct GNUNET_HELLO_Address *a2);
+ const struct GNUNET_HELLO_Address *a2);
/**
/**
* Free an address.
- *
+ *
* @param addr address to free
*/
#define GNUNET_HELLO_address_free(addr) GNUNET_free(addr)
*/
size_t
GNUNET_HELLO_add_address (const struct GNUNET_HELLO_Address *address,
- struct GNUNET_TIME_Absolute expiration,
- char *target,
+ struct GNUNET_TIME_Absolute expiration, char *target,
size_t max);
* GNUNET_NO to delete it from the HELLO
* GNUNET_SYSERR to stop iterating (but keep current address)
*/
-typedef int (*GNUNET_HELLO_AddressIterator) (void *cls,
- const struct GNUNET_HELLO_Address *address,
- struct GNUNET_TIME_Absolute expiration);
+typedef int (*GNUNET_HELLO_AddressIterator) (void *cls,
+ const struct GNUNET_HELLO_Address *
+ address,
+ struct GNUNET_TIME_Absolute
+ expiration);
/**
*/
typedef int (*GNUNET_OS_NetworkInterfaceProcessor) (void *cls, const char *name,
int isDefault,
- const struct sockaddr * addr,
- const struct sockaddr * broadcast_addr,
- const struct sockaddr * netmask,
- socklen_t addrlen);
+ const struct sockaddr *
+ addr,
+ const struct sockaddr *
+ broadcast_addr,
+ const struct sockaddr *
+ netmask, socklen_t addrlen);
/**
* otherwise 0-terminated printable UTF-8 string
*/
typedef void (*GNUNET_TRANSPORT_AddressToStringCallback) (void *cls,
- const char *address);
+ const char *address);
/**
* @param address address, NULL for disconnect notification in monitor mode
*/
typedef void (*GNUNET_TRANSPORT_PeerIterateCallback) (void *cls,
- const struct GNUNET_PeerIdentity *peer,
- const struct GNUNET_HELLO_Address *address);
+ const struct
+ GNUNET_PeerIdentity *
+ peer,
+ const struct
+ GNUNET_HELLO_Address *
+ address);
/**
* @return handle to cancel the operation, NULL on error
*/
struct GNUNET_TRANSPORT_AddressToStringContext *
-GNUNET_TRANSPORT_address_to_string (const struct GNUNET_CONFIGURATION_Handle *cfg,
- const struct GNUNET_HELLO_Address *address,
- int numeric,
- struct GNUNET_TIME_Relative timeout,
- GNUNET_TRANSPORT_AddressToStringCallback aluc,
- void *aluc_cls);
+GNUNET_TRANSPORT_address_to_string (const struct GNUNET_CONFIGURATION_Handle
+ *cfg,
+ const struct GNUNET_HELLO_Address *address,
+ int numeric,
+ struct GNUNET_TIME_Relative timeout,
+ GNUNET_TRANSPORT_AddressToStringCallback
+ aluc, void *aluc_cls);
/**
*/
void
GNUNET_TRANSPORT_address_to_string_cancel (struct
- GNUNET_TRANSPORT_AddressToStringContext
- *alc);
+ GNUNET_TRANSPORT_AddressToStringContext
+ *alc);
/**
* @param peer_address_callback_cls closure for peer_address_callback
*/
struct GNUNET_TRANSPORT_PeerIterateContext *
-GNUNET_TRANSPORT_peer_get_active_addresses (const struct GNUNET_CONFIGURATION_Handle *cfg,
- const struct GNUNET_PeerIdentity *peer,
- int one_shot,
- struct GNUNET_TIME_Relative timeout,
- GNUNET_TRANSPORT_PeerIterateCallback peer_address_callback,
- void *peer_address_callback_cls);
+GNUNET_TRANSPORT_peer_get_active_addresses (const struct
+ GNUNET_CONFIGURATION_Handle *cfg,
+ const struct GNUNET_PeerIdentity
+ *peer, int one_shot,
+ struct GNUNET_TIME_Relative timeout,
+ GNUNET_TRANSPORT_PeerIterateCallback
+ peer_address_callback,
+ void *peer_address_callback_cls);
/**
*/
void
GNUNET_TRANSPORT_peer_get_active_addresses_cancel (struct
- GNUNET_TRANSPORT_PeerIterateContext
-*alc);
+ GNUNET_TRANSPORT_PeerIterateContext
+ *alc);
/**
#define ENUMNICS3_MASK_OK 0x01
#define ENUMNICS3_BCAST_OK 0x02
-struct EnumNICs3_results
-{
- unsigned char flags;
- int is_default;
- char pretty_name[1001];
- size_t addr_size;
- struct sockaddr address;
- struct sockaddr mask;
- struct sockaddr broadcast;
-};
+ struct EnumNICs3_results
+ {
+ unsigned char flags;
+ int is_default;
+ char pretty_name[1001];
+ size_t addr_size;
+ struct sockaddr address;
+ struct sockaddr mask;
+ struct sockaddr broadcast;
+ };
int EnumNICs3 (struct EnumNICs3_results **, int *EnumNICs3_results_count);
void EnumNICs3_free (struct EnumNICs3_results *);
for (i = 0; i < peer->ntunnels; i++)
{
d = tunnel_notify_connection_broken (peer->tunnels[i], p1, p2);
- if (0 == d) continue;
+ if (0 == d)
+ continue;
/* TODO
* Problem: one or more peers have been deleted from the tunnel tree.
* We don't know who they are to try to add them again.
/**
* Adds a path to the peer_infos of all the peers in the path
- *
+ *
* @param p Path to process.
* @param confirmed Whether we know if the path works or not. FIXME use
*/
unsigned int i;
/* TODO: invert and add */
- for (i = 0; i < p->length && p->peers[i] != myid; i++) /* skip'em */;
+ for (i = 0; i < p->length && p->peers[i] != myid; i++) /* skip'em */ ;
for (i++; i < p->length; i++)
{
struct MeshPeerInfo *aux;
struct MeshPeerPath *copy;
- aux = peer_info_get_short(p->peers[i]);
- copy = path_duplicate(p);
+ aux = peer_info_get_short (p->peers[i]);
+ copy = path_duplicate (p);
copy->length = i + 1;
- peer_info_add_path(aux, copy, GNUNET_NO);
+ peer_info_add_path (aux, copy, GNUNET_NO);
}
}
mcast = (struct GNUNET_MESH_Multicast *) mdata->data;
mcast->ttl = htonl (ntohl (mcast->ttl) - 1);
#if MESH_DEBUG
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "MESH: data packet, ttl: %u\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "MESH: data packet, ttl: %u\n",
ntohl (mcast->ttl));
}
else
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "MESH: not a data packet, no ttl\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "MESH: not a data packet, no ttl\n");
#endif
}
if (NULL != t->client)
/* FIXME error. destroy tunnel? leave for timeout? */
return 0;
}
- path_add_to_peers(path, GNUNET_NO);
+ path_add_to_peers (path, GNUNET_NO);
tunnel_add_path (t, path, own_pos);
if (own_pos == size - 1)
{
{
/* FIXME: already seen this packet, log dropping */
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "MESH: Already seen mid %u, DROPPING!\n",
- t->mid);
+ "MESH: Already seen mid %u, DROPPING!\n", t->mid);
return GNUNET_OK;
}
#if MESH_DEBUG
else
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "MESH: mid %u not seen yet, forwarding\n",
- ntohl (msg->mid));
+ "MESH: mid %u not seen yet, forwarding\n", ntohl (msg->mid));
}
#endif
t->mid = ntohl (msg->mid);
send_subscribed_clients (message, &msg[1].header);
}
#if MESH_DEBUG
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "MESH: ttl: %u\n",
- ntohl (msg->ttl));
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "MESH: ttl: %u\n", ntohl (msg->ttl));
#endif
if (ntohl (msg->ttl) == 0)
{
/* FIXME: ttl is 0, log dropping */
- GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "MESH: TTL is 0, DROPPING!\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "MESH: TTL is 0, DROPPING!\n");
return GNUNET_OK;
}
tunnel_send_multicast (t, message);
peer_info = peer_info_get (&msg->peer_id);
/* Add paths to peers? */
- p = tree_get_path_to_peer(t->tree, peer_info->id);
+ p = tree_get_path_to_peer (t->tree, peer_info->id);
if (NULL != p)
{
path_add_to_peers (p, GNUNET_YES);
- path_destroy(p);
+ path_destroy (p);
}
else
{
GNUNET_DHT_get_stop (t->dht_get_type);
t->dht_get_type = NULL;
}
- if (tree_get_status(t->tree, peer_info->id) != MESH_PEER_READY)
+ if (tree_get_status (t->tree, peer_info->id) != MESH_PEER_READY)
{
tree_set_status (t->tree, peer_info->id, MESH_PEER_READY);
send_client_peer_connected (t, peer_info->id);
p = path_build_from_dht (get_path, get_path_length, put_path,
put_path_length);
- path_add_to_peers(p, GNUNET_NO);
+ path_add_to_peers (p, GNUNET_NO);
for (i = 0; i < path_info->peer->ntunnels; i++)
{
tunnel_add_peer (path_info->peer->tunnels[i], path_info->peer);
p = path_build_from_dht (get_path, get_path_length, put_path,
put_path_length);
- path_add_to_peers(p, GNUNET_NO);
+ path_add_to_peers (p, GNUNET_NO);
tunnel_add_peer (t, peer_info);
peer_info_connect (peer_info, t);
}
*
* @return Number of hops to reach destination, UINT_MAX in case the peer is not
* in the path.
- *
+ *
* TODO: adapt to allow any start / root combination
* TODO: take in account state of the nodes
*/
if (emsg != NULL)
{
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "test: Shutdown of peers failed! (%s)\n",
- emsg);
+ "test: Shutdown of peers failed! (%s)\n", emsg);
ok--;
}
#if VERBOSE
shutdown_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
#if VERBOSE
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Ending test.\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Ending test.\n");
#endif
GNUNET_TESTING_daemons_stop (pg, TIMEOUT, &shutdown_callback, NULL);
static void
disconnect_peers (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: disconnecting peers\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: disconnecting peers\n");
if (GNUNET_SCHEDULER_NO_TASK != shutdown_handle)
{
topo_connections++;
if (NULL != emsg)
{
- GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "test: Error by topo %u: %s\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "test: Error by topo %u: %s\n",
topo_connections, emsg);
}
else
{
if (first == NULL || second == NULL)
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Connection %u NULL\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Connection %u NULL\n",
topo_connections);
if (disconnect_task != GNUNET_SCHEDULER_NO_TASK)
{
GNUNET_SCHEDULER_cancel (disconnect_task);
- GNUNET_SCHEDULER_add_now(&disconnect_peers, NULL);
+ GNUNET_SCHEDULER_add_now (&disconnect_peers, NULL);
}
return;
}
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Connection %u ok\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Connection %u ok\n",
topo_connections);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: %s\n",
- GNUNET_i2s (first));
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: %s\n",
- GNUNET_i2s (second));
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: %s\n", GNUNET_i2s (first));
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: %s\n", GNUNET_i2s (second));
}
}
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"test: Peergroup callback called with error, aborting test!\n");
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Error from testing: `%s'\n", emsg);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Error from testing: `%s'\n",
+ emsg);
ok--;
GNUNET_TESTING_daemons_stop (pg, TIMEOUT, &shutdown_callback, NULL);
return;
"************************************************************\n");
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"test: Peer Group started successfully!\n");
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Have %u connections\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Have %u connections\n",
total_connections);
#endif
if (0 < failed_connections)
{
ok = GNUNET_SYSERR;
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "test: %u connections have FAILED!\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "test: %u connections have FAILED!\n",
failed_connections);
disconnect_task = GNUNET_SCHEDULER_add_now (&disconnect_peers, NULL);
{
failed_connections++;
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Problem with new connection (%s)\n",
- emsg);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: (%s)\n",
- GNUNET_i2s (first));
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: (%s)\n",
- GNUNET_i2s (second));
+ "test: Problem with new connection (%s)\n", emsg);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: (%s)\n", GNUNET_i2s (first));
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: (%s)\n", GNUNET_i2s (second));
}
}
NULL);
#if VERBOSE
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Starting daemons.\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Starting daemons.\n");
GNUNET_CONFIGURATION_set_value_string (testing_cfg, "testing",
"use_progressbars", "YES");
#endif
GNUNET_PROGRAM_run ((sizeof (argv2) / sizeof (char *)) - 1, argv2,
- "test_mesh_2dtorus",
- gettext_noop ("Test mesh 2d torus."), options,
- &run, NULL);
+ "test_mesh_2dtorus", gettext_noop ("Test mesh 2d torus."),
+ options, &run, NULL);
#if REMOVE_DIR
GNUNET_DISK_directory_remove ("/tmp/test_mesh_2dtorus");
#endif
if (GNUNET_OK != ok)
{
- GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "test: FAILED!\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "test: FAILED!\n");
return 1;
}
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: success\n");
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_time (testing_cfg, "test_mesh_small",
- "WAIT_TIME", &wait_time))
+ "WAIT_TIME", &wait_time))
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
"Option test_mesh_small:wait_time is required!\n");
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_time (testing_cfg, "test_mesh_small",
- "WAIT_TIME", &wait_time))
+ "WAIT_TIME", &wait_time))
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
"Option test_mesh_small:wait_time is required!\n");
if (n->peer != peer_id)
{
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "Retrieved peer has wrong ID! (Got %u, expected %u)\n",
- n->peer, peer_id);
+ "Retrieved peer has wrong ID! (Got %u, expected %u)\n", n->peer,
+ peer_id);
failed++;
}
if (n->status != status)
{
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
"Retrieved peer has wrong status! (Got %u, expected %u)\n",
- n->status,
- status);
+ n->status, status);
failed++;
}
for (c = n->children_head, i = 0; NULL != c; c = c->next, i++) ;
if (0 != first_hop &&
GNUNET_PEER_search (tree_get_first_hop (tree, peer_id)) != first_hop)
{
- GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "Wrong first hop! (Got %u, expected %u)\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+ "Wrong first hop! (Got %u, expected %u)\n",
GNUNET_PEER_search (tree_get_first_hop (tree, peer_id)),
first_hop);
failed++;
GNUNET_PEER_resolve (peer_id, &id);
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "*** Peer %s (%u) has failed %d checks!\n",
- GNUNET_i2s (&id), peer_id, failed - pre_failed);
+ "*** Peer %s (%u) has failed %d checks!\n", GNUNET_i2s (&id),
+ peer_id, failed - pre_failed);
}
}
for (i = 1; i < 5; i++)
{
path->length = i;
- if (tree_get_path_cost(tree, path) != 0)
+ if (tree_get_path_cost (tree, path) != 0)
{
- GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "test: length %u cost failed!\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "test: length %u cost failed!\n",
i);
failed++;
}
}
path->length++;
path->peers[4] = 6;
- if (tree_get_path_cost(tree, path) != 1)
+ if (tree_get_path_cost (tree, path) != 1)
{
- GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "test: length %u cost failed!\n",
- i);
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "test: length %u cost failed!\n", i);
failed++;
}
path->peers[3] = 7;
- if (tree_get_path_cost(tree, path) != 2)
+ if (tree_get_path_cost (tree, path) != 2)
{
- GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "test: length %u cost failed!\n",
- i);
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "test: length %u cost failed!\n", i);
failed++;
}
path->length--;
- if (tree_get_path_cost(tree, path) != 1)
+ if (tree_get_path_cost (tree, path) != 1)
{
- GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "test: length %u cost failed!\n",
- i);
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "test: length %u cost failed!\n", i);
failed++;
}
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Deleting third path (5)\n");
- tree_set_status(tree, 5, MESH_PEER_READY);
+ tree_set_status (tree, 5, MESH_PEER_READY);
cb_call = 1;
node = tree_del_path (tree, 5, &cb, NULL);
tree_debug (tree);
* @return GNUNET_OK to continue iterating
*/
static int
-process_interfaces(void *cls, const char *name,
- int isDefault,
- const struct sockaddr * addr,
- const struct sockaddr * broadcast_addr,
- const struct sockaddr * netmask,
- socklen_t addrlen)
+process_interfaces (void *cls, const char *name, int isDefault,
+ const struct sockaddr *addr,
+ const struct sockaddr *broadcast_addr,
+ const struct sockaddr *netmask, socklen_t addrlen)
{
struct GNUNET_NAT_Handle *h = cls;
const struct sockaddr_in *s4;
ip = &s4->sin_addr;
/* Check if address is in 127.0.0.0/8 */
- uint32_t address = ntohl ((uint32_t)(s4->sin_addr.s_addr));
+ uint32_t address = ntohl ((uint32_t) (s4->sin_addr.s_addr));
uint32_t value = (address & 0xFF000000) ^ 0x7F000000;
if ((h->return_localaddress == GNUNET_NO) && (value == 0))
* @return GNUNET_OK to continue iterating
*/
static int
-process_if (void *cls, const char *name,
- int isDefault,
- const struct sockaddr * addr,
- const struct sockaddr * broadcast_addr,
- const struct sockaddr * netmask,
- socklen_t addrlen)
+process_if (void *cls, const char *name, int isDefault,
+ const struct sockaddr *addr, const struct sockaddr *broadcast_addr,
+ const struct sockaddr *netmask, socklen_t addrlen)
{
struct addr_cls *data = cls;
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_time (testing_cfg, "nse-profiler",
- "WAIT_TIME", &wait_time))
+ "WAIT_TIME", &wait_time))
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
"Option nse-profiler:wait_time is required!\n");
double variance;
double val;
double nsize;
+
#define WEST 1
/* Weighted incremental algorithm for stddev according to West (1979) */
#if WEST
if (0 != estimate_count)
{
mean = sum / estimate_count;
- variance = (vsq - mean * sum) / (estimate_count - 1.0); // terrible for numerical stability...
+ variance = (vsq - mean * sum) / (estimate_count - 1.0); // terrible for numerical stability...
}
#endif
if (variance >= 0)
std_dev = sqrt (variance);
else
- std_dev = variance; /* must be infinity due to estimate_count == 0 */
+ std_dev = variance; /* must be infinity due to estimate_count == 0 */
current_std_dev = std_dev;
current_size_estimate = mean;
GNUNET_SCHEDULER_add_delayed (get_transmit_delay (0), &transmit_task,
peer_entry);
}
- if ( (ntohl (size_estimate_messages[idx].hop_count) == 0) &&
- (GNUNET_SCHEDULER_NO_TASK != proof_task) )
+ if ((ntohl (size_estimate_messages[idx].hop_count) == 0) &&
+ (GNUNET_SCHEDULER_NO_TASK != proof_task))
{
GNUNET_STATISTICS_update (stats,
"# flood messages not generated (no proof yet)",
fm->proof_of_work = my_proof;
if (nse_work_required > 0)
GNUNET_assert (GNUNET_OK ==
- GNUNET_CRYPTO_rsa_sign (my_private_key, &fm->purpose,
- &fm->signature));
+ GNUNET_CRYPTO_rsa_sign (my_private_key, &fm->purpose,
+ &fm->signature));
else
memset (&fm->signature, 0, sizeof (fm->signature));
}
GNUNET_break_op (0);
return GNUNET_NO;
}
- if ( (nse_work_required > 0) &&
- (GNUNET_OK !=
- GNUNET_CRYPTO_rsa_verify (GNUNET_SIGNATURE_PURPOSE_NSE_SEND,
- &incoming_flood->purpose,
- &incoming_flood->signature,
- &incoming_flood->pkey)) )
+ if ((nse_work_required > 0) &&
+ (GNUNET_OK !=
+ GNUNET_CRYPTO_rsa_verify (GNUNET_SIGNATURE_PURPOSE_NSE_SEND,
+ &incoming_flood->purpose,
+ &incoming_flood->signature,
+ &incoming_flood->pkey)))
{
GNUNET_break_op (0);
return GNUNET_NO;
peer_entry = GNUNET_malloc (sizeof (struct NSEPeerEntry));
peer_entry->id = *peer;
GNUNET_assert (GNUNET_OK ==
- GNUNET_CONTAINER_multihashmap_put (peers, &peer->hashPubKey, peer_entry,
- GNUNET_CONTAINER_MULTIHASHMAPOPTION_UNIQUE_ONLY));
+ GNUNET_CONTAINER_multihashmap_put (peers, &peer->hashPubKey,
+ peer_entry,
+ GNUNET_CONTAINER_MULTIHASHMAPOPTION_UNIQUE_ONLY));
peer_entry->transmit_task =
GNUNET_SCHEDULER_add_delayed (get_transmit_delay (-1), &transmit_task,
peer_entry);
(now.abs_value / gnunet_nse_interval.rel_value) *
gnunet_nse_interval.rel_value;
next_timestamp.abs_value =
- current_timestamp.abs_value + gnunet_nse_interval.rel_value;
+ current_timestamp.abs_value + gnunet_nse_interval.rel_value;
estimate_index = HISTORY_SIZE - 1;
estimate_count = 0;
- if (GNUNET_YES == check_proof_of_work (&my_public_key,
- my_proof))
+ if (GNUNET_YES == check_proof_of_work (&my_public_key, my_proof))
{
prev_time.abs_value =
- current_timestamp.abs_value - (estimate_index - 1) * gnunet_nse_interval.rel_value;
+ current_timestamp.abs_value - (estimate_index -
+ 1) * gnunet_nse_interval.rel_value;
setup_flood_message (estimate_index, prev_time);
estimate_count++;
}
nc = GNUNET_SERVER_notification_context_create (server, 1);
/* Connect to core service and register core handlers */
coreAPI = GNUNET_CORE_connect (cfg, /* Main configuration */
- 1,
- NULL, /* Closure passed to functions */
+ 1, NULL, /* Closure passed to functions */
&core_init, /* Call core_init once connected */
&handle_core_connect, /* Handle connects */
&handle_core_disconnect, /* Handle disconnects */
if (msg == NULL)
{
- /* Error, timeout, death */
+ /* Error, timeout, death */
GNUNET_CLIENT_disconnect (h->client, GNUNET_NO);
h->client = NULL;
h->reconnect_task =
* @return GNUNET_OK to keep the address and continue
*/
static int
-count_address (void *cls,
- const struct GNUNET_HELLO_Address *address,
+count_address (void *cls, const struct GNUNET_HELLO_Address *address,
struct GNUNET_TIME_Absolute expiration)
{
struct PrintContext *pc = cls;
* @return GNUNET_OK to keep the address and continue
*/
static int
-print_address (void *cls,
- const struct GNUNET_HELLO_Address *address,
+print_address (void *cls, const struct GNUNET_HELLO_Address *address,
struct GNUNET_TIME_Absolute expiration)
{
struct PrintContext *pc = cls;
- GNUNET_TRANSPORT_address_to_string (cfg,
- address,
- no_resolve,
- GNUNET_TIME_relative_multiply
- (GNUNET_TIME_UNIT_SECONDS, 10),
- &process_resolved_address, pc);
+
+ GNUNET_TRANSPORT_address_to_string (cfg, address, no_resolve,
+ GNUNET_TIME_relative_multiply
+ (GNUNET_TIME_UNIT_SECONDS, 10),
+ &process_resolved_address, pc);
return GNUNET_OK;
}
* @return GNUNET_NO if expiration smaller than the current time
*/
static int
-discard_expired (void *cls,
- const struct GNUNET_HELLO_Address *address,
+discard_expired (void *cls, const struct GNUNET_HELLO_Address *address,
struct GNUNET_TIME_Absolute expiration)
{
const struct GNUNET_TIME_Absolute *now = cls;
if (now->abs_value > expiration.abs_value)
{
GNUNET_log (GNUNET_ERROR_TYPE_INFO,
- _("Removing expired address of transport `%s'\n"),
- address->transport_name);
+ _("Removing expired address of transport `%s'\n"),
+ address->transport_name);
return GNUNET_NO;
}
return GNUNET_OK;
static int
-check_it (void *cls,
- const struct GNUNET_HELLO_Address *address, struct GNUNET_TIME_Absolute expiration)
+check_it (void *cls, const struct GNUNET_HELLO_Address *address,
+ struct GNUNET_TIME_Absolute expiration)
{
#if DEBUG
if (addrlen > 0)
address.address = caddress;
address.transport_name = "peerinfotest";
ret =
- GNUNET_HELLO_add_address (&address,
+ GNUNET_HELLO_add_address (&address,
GNUNET_TIME_relative_to_absolute
(GNUNET_TIME_UNIT_HOURS), buf, max);
GNUNET_free (caddress);
static unsigned int retries;
static int
-check_it (void *cls,
- const struct GNUNET_HELLO_Address *address,
- struct GNUNET_TIME_Absolute expiration)
+check_it (void *cls, const struct GNUNET_HELLO_Address *address,
+ struct GNUNET_TIME_Absolute expiration)
{
unsigned int *agc = cls;
if (address != NULL)
{
GNUNET_assert (0 == strcmp ("peerinfotest", address->transport_name));
- GNUNET_assert (0 == strncmp ("Address", address->address, address->address_length));
+ GNUNET_assert (0 ==
+ strncmp ("Address", address->address,
+ address->address_length));
(*agc) -= (1 << (address->address_length - 1));
}
return GNUNET_OK;
address.transport_name = "peerinfotest";
address.address_length = *agc;
ret =
- GNUNET_HELLO_add_address (&address,
- GNUNET_TIME_relative_to_absolute
- (GNUNET_TIME_UNIT_HOURS), buf,
- max);
+ GNUNET_HELLO_add_address (&address,
+ GNUNET_TIME_relative_to_absolute
+ (GNUNET_TIME_UNIT_HOURS), buf, max);
(*agc)--;
return ret;
}
if (emsg != NULL)
{
#if VERBOSE
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Shutdown of peers failed!\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Shutdown of peers failed!\n");
#endif
ok--;
}
shutdown_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
#if VERBOSE
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Ending test.\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Ending test.\n");
#endif
GNUNET_TESTING_daemons_stop (pg, TIMEOUT, &shutdown_callback, NULL);
static void
disconnect_peers (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: disconnecting peers\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: disconnecting peers\n");
if (GNUNET_SCHEDULER_NO_TASK != shutdown_handle)
{
topo_connections++;
if (NULL != emsg)
{
- GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "test: Error by topo %u: %s\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "test: Error by topo %u: %s\n",
topo_connections, emsg);
}
else
{
if (first == NULL || second == NULL)
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Connection %u NULL\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Connection %u NULL\n",
topo_connections);
if (disconnect_task != GNUNET_SCHEDULER_NO_TASK)
{
GNUNET_SCHEDULER_cancel (disconnect_task);
- GNUNET_SCHEDULER_add_now(&disconnect_peers, NULL);
+ GNUNET_SCHEDULER_add_now (&disconnect_peers, NULL);
}
return;
}
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Connection %u ok\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Connection %u ok\n",
topo_connections);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: %s\n",
- GNUNET_i2s (first));
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: %s\n",
- GNUNET_i2s (second));
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: %s\n", GNUNET_i2s (first));
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: %s\n", GNUNET_i2s (second));
}
}
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"test: Peergroup callback called with error, aborting test!\n");
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Error from testing: `%s'\n", emsg);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Error from testing: `%s'\n",
+ emsg);
ok--;
GNUNET_TESTING_daemons_stop (pg, TIMEOUT, &shutdown_callback, NULL);
return;
"************************************************************\n");
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"test: Peer Group started successfully!\n");
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Have %u connections\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Have %u connections\n",
total_connections);
#endif
if (0 < failed_connections)
{
ok = GNUNET_SYSERR;
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "test: %u connections have FAILED!\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "test: %u connections have FAILED!\n",
failed_connections);
disconnect_task = GNUNET_SCHEDULER_add_now (&disconnect_peers, NULL);
{
failed_connections++;
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Problem with new connection (%s)\n",
- emsg);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: (%s)\n",
- GNUNET_i2s (first));
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: (%s)\n",
- GNUNET_i2s (second));
+ "test: Problem with new connection (%s)\n", emsg);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: (%s)\n", GNUNET_i2s (first));
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: (%s)\n", GNUNET_i2s (second));
}
}
NULL);
#if VERBOSE
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "test: Starting daemons.\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: Starting daemons.\n");
GNUNET_CONFIGURATION_set_value_string (testing_cfg, "testing",
"use_progressbars", "YES");
#endif
GNUNET_PROGRAM_run ((sizeof (argv2) / sizeof (char *)) - 1, argv2,
"test_testing_2dtorus",
- gettext_noop ("Test testing 2d torus."), options,
- &run, NULL);
+ gettext_noop ("Test testing 2d torus."), options, &run,
+ NULL);
#if REMOVE_DIR
GNUNET_DISK_directory_remove ("/tmp/test_testing_2dtorus");
#endif
if (GNUNET_OK != ok)
{
- GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
- "test: FAILED!\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "test: FAILED!\n");
return 1;
}
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "test: success\n");
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_time (cfg, "testing", "SETTLE_TIME",
- &settle_time))
+ &settle_time))
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Must provide option %s:%s!\n",
"testing", "SETTLE_TIME");
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_time (cfg, "testing", "SETTLE_TIME",
- &settle_time))
+ &settle_time))
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Must provide option %s:%s!\n",
"testing", "SETTLE_TIME");
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_time (cfg, "testing", "CONNECT_TIMEOUT",
- &connect_timeout))
+ &connect_timeout))
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Must provide option %s:%s!\n",
"testing", "CONNECT_TIMEOUT");
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_time (cfg, "testing", "CONNECT_TIMEOUT",
- &connect_timeout))
+ &connect_timeout))
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Must provide option %s:%s!\n",
"testing", "CONNECT_TIMEOUT");
#if EMPTY_HACK
static int
-test_address (void *cls,
- const struct GNUNET_HELLO_Address *address,
+test_address (void *cls, const struct GNUNET_HELLO_Address *address,
struct GNUNET_TIME_Absolute expiration)
{
int *empty = cls;
#endif
GNUNET_assert (daemon->phase == SP_GET_HELLO ||
daemon->phase == SP_START_DONE);
- daemon->cb = NULL; // FIXME: why??? (see fsm:SP_START_CORE, notify_daemon_started)
+ daemon->cb = NULL; // FIXME: why??? (see fsm:SP_START_CORE, notify_daemon_started)
if (daemon->task != GNUNET_SCHEDULER_NO_TASK) /* Assertion here instead? */
GNUNET_SCHEDULER_cancel (daemon->task);
GNUNET_free_non_null (d->username);
GNUNET_free (d->proc);
// GNUNET_free (d); // FIXME (could this leak)
- d->hostname = NULL; // Quick hack to avoid crashing (testing need to be
- d->cfg = NULL; // overhauled anyway, and the error managing is
- // pretty broken anyway.
+ d->hostname = NULL; // Quick hack to avoid crashing (testing need to be
+ d->cfg = NULL; // overhauled anyway, and the error managing is
+ // pretty broken anyway.
return;
}
/* wait some more */
if (NULL != ctx->d2->hello)
{
#if DEBUG_TESTING_RECONNECT
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "updating %s's HELLO\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "updating %s's HELLO\n",
ctx->d2->shortname);
#endif
GNUNET_free (ctx->d2->hello);
#if DEBUG_TESTING_RECONNECT
else
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "didn't have %s's HELLO\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "didn't have %s's HELLO\n",
ctx->d2->shortname);
}
#endif
if (ctx->send_hello == GNUNET_YES)
{
#if DEBUG_TESTING_RECONNECT
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Sending %s's HELLO to %s\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Sending %s's HELLO to %s\n",
ctx->d1->shortname, ctx->d2->shortname);
#endif
ctx->d1th =
else
{
#if DEBUG_TESTING_RECONNECT
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Trying to reconnect %s to %s\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Trying to reconnect %s to %s\n",
ctx->d1->shortname, ctx->d2->shortname);
#endif
GNUNET_TRANSPORT_try_connect (ctx->d1th, &ctx->d2->id);
* Calls GNUNET_TESTING_daemon_continue_startup to set the daemon's state
* from HOSTKEY_CREATED to TOPOLOGY_SETUP. Makes sure not to saturate a host
* with requests delaying them when needed.
- *
+ *
* @param cls closure: internal context of the daemon.
* @param tc TaskContext
*/
const struct GNUNET_SCHEDULER_TaskContext *tc)
{
struct InternalStartContext *internal_context = cls;
+
internal_context->peer->startup_task = GNUNET_SCHEDULER_NO_TASK;
if ((tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN) != 0)
}
else
{
- internal_context->peer->startup_task = GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply
- (GNUNET_TIME_UNIT_MILLISECONDS, 100),
- &internal_continue_startup, internal_context);
+ internal_context->peer->startup_task =
+ GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply
+ (GNUNET_TIME_UNIT_MILLISECONDS, 100),
+ &internal_continue_startup,
+ internal_context);
}
}
pg->starting = 0;
for (i = 0; i < pg->total; i++)
{
- pg->peers[i].startup_task = GNUNET_SCHEDULER_add_now (&internal_continue_startup,
- &pg->peers[i].internal_context);
+ pg->peers[i].startup_task =
+ GNUNET_SCHEDULER_add_now (&internal_continue_startup,
+ &pg->peers[i].internal_context);
}
}
#else
pg->starting = 0;
for (i = 0; i < pg->total; i++)
{
- pg->peers[i].startup_task = GNUNET_SCHEDULER_add_now (&internal_continue_startup,
- &pg->peers[i].internal_context);
+ pg->peers[i].startup_task =
+ GNUNET_SCHEDULER_add_now (&internal_continue_startup,
+ &pg->peers[i].internal_context);
}
#endif
}
unsigned int total;
unsigned int peers_left;
unsigned long long max_concurrent_connections;
-
+
/**
* Maximum attemps to connect two daemons.
*/
* How long to spend trying to establish all the connections?
*/
struct GNUNET_TIME_Relative connect_timeout;
-
+
unsigned long long max_concurrent_ssh;
struct GNUNET_TIME_Absolute timeout;
GNUNET_TESTING_NotifyConnection connect_cb;
pg_start_ctx->connect_topology,
pg_start_ctx->connect_topology_option,
pg_start_ctx->connect_topology_option_modifier,
- pg_start_ctx->connect_timeout,
+ pg_start_ctx->connect_timeout,
pg_start_ctx->connect_attempts, NULL,
NULL);
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_time (cfg, "testing", "CONNECT_TIMEOUT",
- &pg_start_ctx->connect_timeout))
+ &pg_start_ctx->connect_timeout))
{
- pg_start_ctx->connect_timeout = DEFAULT_CONNECT_TIMEOUT;
+ pg_start_ctx->connect_timeout = DEFAULT_CONNECT_TIMEOUT;
}
if (GNUNET_OK !=
}
if (GNUNET_OK !=
- GNUNET_CONFIGURATION_get_value_time (cfg, "testing",
- "PEERGROUP_TIMEOUT",
- &rtimeout))
+ GNUNET_CONFIGURATION_get_value_time (cfg, "testing", "PEERGROUP_TIMEOUT",
+ &rtimeout))
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Must provide option %s:%s!\n",
"testing", "PEERGROUP_TIMEOUT");
GNUNET_free (pg_start_ctx);
return NULL;
}
- pg_start_ctx->timeout =
- GNUNET_TIME_relative_to_absolute (rtimeout);
+ pg_start_ctx->timeout = GNUNET_TIME_relative_to_absolute (rtimeout);
/* Read topology related options from the configuration file */
transmit_our_hello (void *cls, const struct GNUNET_PeerIdentity *target,
const struct GNUNET_ATS_Information *ats,
uint32_t ats_count,
- const struct GNUNET_HELLO_Address *address)
+ const struct GNUNET_HELLO_Address *address)
{
const struct GNUNET_MessageHeader *hello = cls;
size_t msg_size = ntohs (message->size);
size_t size =
sizeof (struct InboundMessage) + msg_size +
- sizeof (struct GNUNET_ATS_Information) * (ats_count + 1);
+ sizeof (struct GNUNET_ATS_Information) * (ats_count + 1);
char buf[size];
struct GNUNET_ATS_Information *ap;
ap = (struct GNUNET_ATS_Information *) &im[1];
memcpy (ap, ats, ats_count * sizeof (struct GNUNET_ATS_Information));
ap[ats_count].type = htonl (GNUNET_ATS_QUALITY_NET_DELAY);
- ap[ats_count].value = htonl ((uint32_t) GST_neighbour_get_latency (peer).rel_value);
+ ap[ats_count].value =
+ htonl ((uint32_t) GST_neighbour_get_latency (peer).rel_value);
memcpy (&ap[ats_count + 1], message, ntohs (message->size));
- GNUNET_ATS_address_update (GST_ats, address, session, ap, ats_count +1 );
+ GNUNET_ATS_address_update (GST_ats, address, session, ap, ats_count + 1);
GST_clients_broadcast (&im->header, GNUNET_YES);
return ret;
* (plugins that do not support this, can ignore the return value)
*/
static struct GNUNET_TIME_Relative
-plugin_env_receive_callback (void *cls,
- const struct GNUNET_PeerIdentity *peer,
+plugin_env_receive_callback (void *cls, const struct GNUNET_PeerIdentity *peer,
const struct GNUNET_MessageHeader *message,
const struct GNUNET_ATS_Information *ats,
uint32_t ats_count, struct Session *session,
#if DEBUG_TRANSPORT
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG | GNUNET_ERROR_TYPE_BULK,
"Processing `%s' from `%s'\n", "PING",
- (sender_address != NULL) ? GST_plugins_a2s (&address)
- : "<inbound>");
+ (sender_address !=
+ NULL) ? GST_plugins_a2s (&address) : "<inbound>");
#endif
GST_validation_handle_ping (peer, message, &address, session);
break;
#if DEBUG_TRANSPORT
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG | GNUNET_ERROR_TYPE_BULK,
"Processing `%s' from `%s'\n", "PONG",
- (sender_address != NULL) ? GST_plugins_a2s (&address)
- : "<inbound>");
+ (sender_address !=
+ NULL) ? GST_plugins_a2s (&address) : "<inbound>");
#endif
GST_validation_handle_pong (peer, message);
break;
case GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_CONNECT:
- GST_neighbours_handle_connect (message, peer, &address, session, ats, ats_count);
+ GST_neighbours_handle_connect (message, peer, &address, session, ats,
+ ats_count);
break;
case GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_CONNECT_ACK:
- GST_neighbours_handle_connect_ack (message, peer, &address,
- session, ats, ats_count);
+ GST_neighbours_handle_connect_ack (message, peer, &address, session, ats,
+ ats_count);
break;
case GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_ACK:
- GST_neighbours_handle_ack (message, peer, &address, session, ats, ats_count);
+ GST_neighbours_handle_ack (message, peer, &address, session, ats,
+ ats_count);
break;
case GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_DISCONNECT:
GST_neighbours_handle_disconnect_message (peer, message);
const char *transport_name = cls;
struct GNUNET_HELLO_Address address;
- GNUNET_assert (strlen(transport_name) > 0);
+ GNUNET_assert (strlen (transport_name) > 0);
#if DEBUG_TRANSPORT
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Session %X to peer `%s' ended \n",
session, GNUNET_i2s (peer));
* @param bandwidth_in assigned inbound bandwidth for the connection, 0 to disconnect from peer
*/
static void
-ats_request_address_change (void *cls,
- const struct GNUNET_HELLO_Address *address,
+ats_request_address_change (void *cls,
+ const struct GNUNET_HELLO_Address *address,
struct Session *session,
struct GNUNET_BANDWIDTH_Value32NBO bandwidth_out,
struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in,
return;
}
/* will never return GNUNET_YES since connection is to be established */
- GST_neighbours_switch_to_address_3way (&address->peer,
- address, session, ats,
+ GST_neighbours_switch_to_address_3way (&address->peer, address, session, ats,
ats_count, bandwidth_in,
bandwidth_out);
}
test_connection_ok (void *cls, const struct GNUNET_PeerIdentity *neighbour,
const struct GNUNET_ATS_Information *ats,
uint32_t ats_count,
- const struct GNUNET_HELLO_Address *address)
+ const struct GNUNET_HELLO_Address *address)
{
struct TestConnectionContext *tcc = cls;
struct GST_BlacklistCheck *bc;
notify_client_about_neighbour (void *cls,
const struct GNUNET_PeerIdentity *peer,
const struct GNUNET_ATS_Information *ats,
- uint32_t ats_count,
- const struct GNUNET_HELLO_Address *address)
+ uint32_t ats_count,
+ const struct GNUNET_HELLO_Address *address)
{
struct TransportClient *tc = cls;
struct ConnectInfoMessage *cim;
* @param message the resolution request
*/
static void
-clients_handle_address_to_string (void *cls, struct GNUNET_SERVER_Client *client,
- const struct GNUNET_MessageHeader *message)
+clients_handle_address_to_string (void *cls,
+ struct GNUNET_SERVER_Client *client,
+ const struct GNUNET_MessageHeader *message)
{
const struct AddressLookupMessage *alum;
struct GNUNET_TRANSPORT_PluginFunctions *papi;
*/
static void
output_address (void *cls, const struct GNUNET_PeerIdentity *peer,
- const struct GNUNET_ATS_Information *ats, uint32_t ats_count,
- const struct GNUNET_HELLO_Address *address)
+ const struct GNUNET_ATS_Information *ats, uint32_t ats_count,
+ const struct GNUNET_HELLO_Address *address)
{
struct GNUNET_SERVER_TransmitContext *tc = cls;
struct AddressIterateResponseMessage *msg;
size_t size;
size_t tlen;
size_t alen;
- char * addr;
+ char *addr;
tlen = strlen (address->transport_name) + 1;
alen = address->address_length;
size = (sizeof (struct AddressIterateResponseMessage) + alen + tlen);
{
char buf[size];
-
- msg = (struct AddressIterateResponseMessage*) buf;
+
+ msg = (struct AddressIterateResponseMessage *) buf;
msg->reserved = htonl (0);
msg->peer = *peer;
msg->addrlen = htonl (alen);
msg->pluginlen = htonl (tlen);
addr = (char *) &msg[1];
- memcpy (addr,address->address, alen);
+ memcpy (addr, address->address, alen);
memcpy (&addr[alen], address->transport_name, tlen);
- GNUNET_SERVER_transmit_context_append_data (tc,
- &buf[sizeof(struct GNUNET_MessageHeader)],
- size - sizeof (struct GNUNET_MessageHeader),
- GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_ITERATE_RESPONSE);
+ GNUNET_SERVER_transmit_context_append_data (tc,
+ &buf[sizeof
+ (struct
+ GNUNET_MessageHeader)],
+ size -
+ sizeof (struct
+ GNUNET_MessageHeader),
+ GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_ITERATE_RESPONSE);
}
}
{
static struct GNUNET_PeerIdentity all_zeros;
struct GNUNET_SERVER_TransmitContext *tc;
- struct AddressIterateMessage * msg;
+ struct AddressIterateMessage *msg;
struct GNUNET_HELLO_Address *address;
if (ntohs (message->type) != GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_ITERATE)
if (GNUNET_YES != ntohl (msg->one_shot))
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Address monitoring not implemented\n");
+ "Address monitoring not implemented\n");
GNUNET_SERVER_receive_done (client, GNUNET_SYSERR);
return;
}
else
{
/* just return one neighbour */
- address = GST_neighbour_get_current_address(&msg->peer);
+ address = GST_neighbour_get_current_address (&msg->peer);
if (address != NULL)
output_address (tc, &msg->peer, NULL, 0, address);
}
GNUNET_SERVER_transmit_context_append_data (tc, NULL, 0,
- GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_ITERATE_RESPONSE);
+ GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_ITERATE_RESPONSE);
GNUNET_SERVER_transmit_context_run (tc, GNUNET_TIME_UNIT_FOREVER_REL);
}
sizeof (struct TransportRequestConnectMessage)},
{&clients_handle_address_to_string, NULL,
GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_TO_STRING, 0},
- {&clients_handle_address_iterate, NULL,
+ {&clients_handle_address_iterate, NULL,
GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_ITERATE,
sizeof (struct AddressIterateMessage)},
{&GST_blacklist_handle_init, NULL,
if (NULL == gc->addr_pos)
return 0;
ret =
- GNUNET_HELLO_add_address (gc->addr_pos->address, gc->expiration,
- buf, max);
+ GNUNET_HELLO_add_address (gc->addr_pos->address, gc->expiration, buf,
+ max);
gc->addr_pos = gc->addr_pos->next;
return ret;
}
*/
void
GST_hello_modify_addresses (int addremove,
- const struct GNUNET_HELLO_Address *address)
+ const struct GNUNET_HELLO_Address *address)
{
struct OwnAddressList *al;
if (GNUNET_NO == addremove)
{
for (al = oal_head; al != NULL; al = al->next)
- if (0 ==
- GNUNET_HELLO_address_cmp (address,
- al->address))
- {
+ if (0 == GNUNET_HELLO_address_cmp (address, al->address))
+ {
GNUNET_CONTAINER_DLL_remove (oal_head, oal_tail, al);
GNUNET_HELLO_address_free (al->address);
GNUNET_free (al);
struct OwnAddressList *al;
for (al = oal_head; al != NULL; al = al->next)
- if (0 == GNUNET_HELLO_address_cmp (address,
- al->address))
+ if (0 == GNUNET_HELLO_address_cmp (address, al->address))
{
*sig = &al->pong_signature;
*sig_expiration = &al->pong_sig_expires;
* @param address address to add or remove
*/
void
-GST_hello_modify_addresses (int addremove,
- const struct GNUNET_HELLO_Address *address);
+GST_hello_modify_addresses (int addremove,
+ const struct GNUNET_HELLO_Address *address);
/**
enum State
{
/**
- * fresh peer or completely disconnected
+ * fresh peer or completely disconnected
*/
S_NOT_CONNECTED,
/**
- * sent CONNECT message to other peer, waiting for CONNECT_ACK
+ * sent CONNECT message to other peer, waiting for CONNECT_ACK
*/
S_CONNECT_SENT,
/**
- * received CONNECT message to other peer, sending CONNECT_ACK
+ * received CONNECT message to other peer, sending CONNECT_ACK
*/
S_CONNECT_RECV,
/**
- * received ACK or payload
+ * received ACK or payload
*/
S_CONNECTED,
S_FAST_RECONNECT,
/**
- * Disconnect in progress
+ * Disconnect in progress
*/
S_DISCONNECT
};
reset_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
struct NeighbourMapEntry *n = cls;
+
if (n == NULL)
return;
/* destroying address */
if (n->address != NULL)
{
- GNUNET_assert (strlen(n->address->transport_name) > 0);
+ GNUNET_assert (strlen (n->address->transport_name) > 0);
GNUNET_ATS_address_destroyed (GST_ats, n->address, n->session);
}
{
char *old = GNUNET_strdup (print_state (n->state));
char *new = GNUNET_strdup (print_state (state));
+
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
"Illegal state transition from `%s' to `%s' in line %u \n", old,
new, line);
{
char *old = GNUNET_strdup (print_state (n->state));
char *new = GNUNET_strdup (print_state (state));
+
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
"State for neighbour `%s' %X changed from `%s' to `%s' in line %u\n",
GNUNET_i2s (&n->id), n, old, new, line);
if (n->state_reset != GNUNET_SCHEDULER_NO_TASK)
GNUNET_SCHEDULER_cancel (n->state_reset);
n->state_reset =
- GNUNET_SCHEDULER_add_delayed (SETUP_CONNECTION_TIMEOUT, &reset_task,
- n);
+ GNUNET_SCHEDULER_add_delayed (SETUP_CONNECTION_TIMEOUT, &reset_task, n);
break;
case S_CONNECTED:
case S_NOT_CONNECTED:
#if DEBUG_TRANSPORT
char *old = GNUNET_strdup (print_state (n->state));
char *new = GNUNET_strdup (print_state (state));
+
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Removed reset task for peer `%s' %s failed in state transition `%s' -> `%s' \n",
- GNUNET_i2s (&n->id), GST_plugins_a2s (n->address),
- old, new);
+ "Removed reset task for peer `%s' %s failed in state transition `%s' -> `%s' \n",
+ GNUNET_i2s (&n->id), GST_plugins_a2s (n->address), old, new);
GNUNET_free (old);
GNUNET_free (new);
#endif
default:
GNUNET_assert (0);
}
-
+
return GNUNET_OK;
send_with_plugin (const struct GNUNET_PeerIdentity *target, const char *msgbuf,
size_t msgbuf_size, uint32_t priority,
struct GNUNET_TIME_Relative timeout, struct Session *session,
- const struct GNUNET_HELLO_Address *address,
- int force_address, GNUNET_TRANSPORT_TransmitContinuation cont,
- void *cont_cls)
+ const struct GNUNET_HELLO_Address *address, int force_address,
+ GNUNET_TRANSPORT_TransmitContinuation cont, void *cont_cls)
{
struct GNUNET_TRANSPORT_PluginFunctions *papi;
size_t ret = GNUNET_SYSERR;
ret =
papi->send (papi->cls, target, msgbuf, msgbuf_size, 0, timeout, session,
- address->address,
- address->address_length, GNUNET_YES, cont, cont_cls);
+ address->address, address->address_length, GNUNET_YES, cont,
+ cont_cls);
if (ret == -1)
{
struct NeighbourMapEntry *n;
struct NeighbourMapEntry *tmp;
- tmp = lookup_neighbour(receiver);
+ tmp = lookup_neighbour (receiver);
mq = cls;
n = mq->n;
if (n->address == NULL)
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "No address for peer `%s'\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "No address for peer `%s'\n",
GNUNET_i2s (&n->id));
transmit_send_continuation (mq, &n->id, GNUNET_SYSERR);
GNUNET_assert (n->transmission_task == GNUNET_SCHEDULER_NO_TASK);
if ((n->address->address_length == 0) && (n->session == NULL))
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "No address for peer `%s'\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "No address for peer `%s'\n",
GNUNET_i2s (&n->id));
transmit_send_continuation (mq, &n->id, GNUNET_SYSERR);
GNUNET_assert (n->transmission_task == GNUNET_SCHEDULER_NO_TASK);
ret =
send_with_plugin (&n->id, mq->message_buf, mq->message_buf_size, 0,
- timeout, n->session, n->address,
- GNUNET_YES, &transmit_send_continuation,
- mq);
+ timeout, n->session, n->address, GNUNET_YES,
+ &transmit_send_continuation, mq);
if (ret == -1)
{
/* failure, but 'send' would not call continuation in this case,
#endif
disconnect_msg.header.size = htons (sizeof (struct SessionDisconnectMessage));
- disconnect_msg.header.type = htons (GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_DISCONNECT);
+ disconnect_msg.header.type =
+ htons (GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_DISCONNECT);
disconnect_msg.reserved = htonl (0);
disconnect_msg.purpose.size =
htonl (sizeof (struct GNUNET_CRYPTO_RsaSignaturePurpose) +
send_with_plugin (target, (const char *) &disconnect_msg,
sizeof (disconnect_msg), UINT32_MAX,
GNUNET_TIME_UNIT_FOREVER_REL, session, address,
- GNUNET_YES,
- &send_disconnect_cont, NULL);
+ GNUNET_YES, &send_disconnect_cont, NULL);
if (ret == GNUNET_SYSERR)
return GNUNET_SYSERR;
/* send DISCONNECT MESSAGE */
if ((previous_state == S_CONNECTED) || is_connecting (n))
{
- if (GNUNET_OK ==
- send_disconnect (&n->id, n->address,
- n->session))
+ if (GNUNET_OK == send_disconnect (&n->id, n->address, n->session))
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Sent DISCONNECT_MSG to `%s'\n",
GNUNET_i2s (&n->id));
else
GNUNET_assert (NULL != n->address);
if (n->address_state == USED)
{
- GST_validation_set_address_use (&n->id,
- n->address,
- n->session,
+ GST_validation_set_address_use (&n->id, n->address, n->session,
GNUNET_NO);
GNUNET_ATS_address_in_use (GST_ats, n->address, n->session, GNUNET_NO);
if (n->address != NULL)
{
struct GNUNET_TRANSPORT_PluginFunctions *papi;
+
papi = GST_plugins_find (n->address->transport_name);
if (papi != NULL)
papi->disconnect (papi->cls, &n->id);
n->is_active = NULL;
}
- switch (previous_state) {
- case S_CONNECTED:
+ switch (previous_state)
+ {
+ case S_CONNECTED:
// GNUNET_assert (neighbours_connected > 0);
- neighbours_connected--;
- GNUNET_assert (GNUNET_SCHEDULER_NO_TASK != n->keepalive_task);
- GNUNET_SCHEDULER_cancel (n->keepalive_task);
- n->keepalive_task = GNUNET_SCHEDULER_NO_TASK;
- GNUNET_STATISTICS_update (GST_stats, gettext_noop ("# peers connected"), -1,
- GNUNET_NO);
- disconnect_notify_cb (callback_cls, &n->id);
- break;
- case S_FAST_RECONNECT:
- GNUNET_STATISTICS_update (GST_stats, gettext_noop ("# peers connected"), -1,
- GNUNET_NO);
- GNUNET_STATISTICS_update (GST_stats,
- gettext_noop
- ("# fast reconnects failed"),
- 1, GNUNET_NO);
- disconnect_notify_cb (callback_cls, &n->id);
- default:
- break;
+ neighbours_connected--;
+ GNUNET_assert (GNUNET_SCHEDULER_NO_TASK != n->keepalive_task);
+ GNUNET_SCHEDULER_cancel (n->keepalive_task);
+ n->keepalive_task = GNUNET_SCHEDULER_NO_TASK;
+ GNUNET_STATISTICS_update (GST_stats, gettext_noop ("# peers connected"), -1,
+ GNUNET_NO);
+ disconnect_notify_cb (callback_cls, &n->id);
+ break;
+ case S_FAST_RECONNECT:
+ GNUNET_STATISTICS_update (GST_stats, gettext_noop ("# peers connected"), -1,
+ GNUNET_NO);
+ GNUNET_STATISTICS_update (GST_stats,
+ gettext_noop ("# fast reconnects failed"), 1,
+ GNUNET_NO);
+ disconnect_notify_cb (callback_cls, &n->id);
+ default:
+ break;
}
GNUNET_ATS_suggest_address_cancel (GST_ats, &n->id);
m.type = htons (GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_KEEPALIVE);
- ret = send_with_plugin (&n->id, (const void *) &m, sizeof (m),
- UINT32_MAX /* priority */ ,
- GNUNET_TIME_UNIT_FOREVER_REL, n->session, n->address,
- GNUNET_YES, NULL, NULL);
+ ret =
+ send_with_plugin (&n->id, (const void *) &m, sizeof (m),
+ UINT32_MAX /* priority */ ,
+ GNUNET_TIME_UNIT_FOREVER_REL, n->session, n->address,
+ GNUNET_YES, NULL, NULL);
n->expect_latency_response = GNUNET_NO;
- n->keep_alive_sent = GNUNET_TIME_absolute_get_zero();
+ n->keep_alive_sent = GNUNET_TIME_absolute_get_zero ();
if (ret != GNUNET_SYSERR)
{
n->expect_latency_response = GNUNET_YES;
- n->keep_alive_sent = GNUNET_TIME_absolute_get();
+ n->keep_alive_sent = GNUNET_TIME_absolute_get ();
}
}
struct Session *session;
};
-static void send_outbound_quota (const struct GNUNET_PeerIdentity *target, struct GNUNET_BANDWIDTH_Value32NBO quota)
+static void
+send_outbound_quota (const struct GNUNET_PeerIdentity *target,
+ struct GNUNET_BANDWIDTH_Value32NBO quota)
{
- struct QuotaSetMessage q_msg;
+ struct QuotaSetMessage q_msg;
+
#if DEBUG_TRANSPORT
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Sending outbound quota of %u Bps for peer `%s' to all clients\n",
- ntohl (quota.value__), GNUNET_i2s (target));
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ "Sending outbound quota of %u Bps for peer `%s' to all clients\n",
+ ntohl (quota.value__), GNUNET_i2s (target));
#endif
- q_msg.header.size = htons (sizeof (struct QuotaSetMessage));
- q_msg.header.type = htons (GNUNET_MESSAGE_TYPE_TRANSPORT_SET_QUOTA);
- q_msg.quota = quota;
- q_msg.peer = (*target);
- GST_clients_broadcast (&q_msg.header, GNUNET_NO);
+ q_msg.header.size = htons (sizeof (struct QuotaSetMessage));
+ q_msg.header.type = htons (GNUNET_MESSAGE_TYPE_TRANSPORT_SET_QUOTA);
+ q_msg.quota = quota;
+ q_msg.peer = (*target);
+ GST_clients_broadcast (&q_msg.header, GNUNET_NO);
}
/**
send_connect_continuation (void *cls, const struct GNUNET_PeerIdentity *target,
int success)
{
- struct ContinutionContext * cc = cls;
+ struct ContinutionContext *cc = cls;
struct NeighbourMapEntry *n = lookup_neighbour (&cc->address->peer);
-
+
if (GNUNET_YES != success)
{
- GNUNET_assert (strlen(cc->address->transport_name) > 0);
+ GNUNET_assert (strlen (cc->address->transport_name) > 0);
GNUNET_ATS_address_destroyed (GST_ats, cc->address, cc->session);
}
- if ( (NULL == neighbours) ||
- (NULL == n) ||
- (n->state == S_DISCONNECT))
+ if ((NULL == neighbours) || (NULL == n) || (n->state == S_DISCONNECT))
{
GNUNET_HELLO_address_free (cc->address);
GNUNET_free (cc);
}
if ((GNUNET_YES == success) &&
- ((n->state == S_NOT_CONNECTED) || (n->state == S_CONNECT_SENT)))
+ ((n->state == S_NOT_CONNECTED) || (n->state == S_CONNECT_SENT)))
{
change_state (n, S_CONNECT_SENT);
GNUNET_HELLO_address_free (cc->address);
}
if ((GNUNET_NO == success) &&
- ((n->state == S_NOT_CONNECTED) || (n->state == S_CONNECT_SENT)))
+ ((n->state == S_NOT_CONNECTED) || (n->state == S_CONNECT_SENT)))
{
#if DEBUG_TRANSPORT
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Failed to send CONNECT_MSG to peer `%4s' with address '%s' session %p, asking ATS for new address \n",
- GNUNET_i2s (&n->id),
- GST_plugins_a2s (n->address),
- n->session);
+ GNUNET_i2s (&n->id), GST_plugins_a2s (n->address), n->session);
#endif
change_state (n, S_NOT_CONNECTED);
if (n->ats_suggest != GNUNET_SCHEDULER_NO_TASK)
GNUNET_SCHEDULER_cancel (n->ats_suggest);
n->ats_suggest =
- GNUNET_SCHEDULER_add_delayed (ATS_RESPONSE_TIMEOUT, &ats_suggest_cancel,
- n);
+ GNUNET_SCHEDULER_add_delayed (ATS_RESPONSE_TIMEOUT, &ats_suggest_cancel,
+ n);
GNUNET_ATS_suggest_address (GST_ats, &n->id);
}
GNUNET_HELLO_address_free (cc->address);
const struct GNUNET_PeerIdentity *target,
int success)
{
- struct ContinutionContext * cc = cls;
+ struct ContinutionContext *cc = cls;
struct NeighbourMapEntry *n;
if (neighbours == NULL)
return; /* neighbour is going away */
}
- n = lookup_neighbour(&cc->address->peer);
+ n = lookup_neighbour (&cc->address->peer);
if ((n == NULL) || (is_disconnecting (n)))
{
GNUNET_HELLO_address_free (cc->address);
#if DEBUG_TRANSPORT
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Failed to switch connected peer `%s' to address '%s' session %X, asking ATS for new address \n",
- GNUNET_i2s (&n->id),
- GST_plugins_a2s (n->address), n->session);
+ GNUNET_i2s (&n->id), GST_plugins_a2s (n->address), n->session);
#endif
- GNUNET_assert (strlen(cc->address->transport_name) > 0);
+ GNUNET_assert (strlen (cc->address->transport_name) > 0);
GNUNET_ATS_address_destroyed (GST_ats, cc->address, cc->session);
if (n->ats_suggest != GNUNET_SCHEDULER_NO_TASK)
return;
}
/* Tell ATS that switching addresses was successful */
- switch (n->state) {
- case S_CONNECTED:
- if (n->address_state == FRESH)
- {
- GST_validation_set_address_use (&n->id,
- cc->address,
- cc->session,
- GNUNET_YES);
- GNUNET_ATS_address_update (GST_ats, cc->address, cc->session, NULL, 0);
- GNUNET_ATS_address_in_use (GST_ats, cc->address, cc->session, GNUNET_YES);
- n->address_state = USED;
- }
- break;
- case S_FAST_RECONNECT:
+ switch (n->state)
+ {
+ case S_CONNECTED:
+ if (n->address_state == FRESH)
+ {
+ GST_validation_set_address_use (&n->id, cc->address, cc->session,
+ GNUNET_YES);
+ GNUNET_ATS_address_update (GST_ats, cc->address, cc->session, NULL, 0);
+ GNUNET_ATS_address_in_use (GST_ats, cc->address, cc->session, GNUNET_YES);
+ n->address_state = USED;
+ }
+ break;
+ case S_FAST_RECONNECT:
#if DEBUG_TRANSPORT
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Successful fast reconnect to peer `%s'\n", GNUNET_i2s (&n->id));
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Successful fast reconnect to peer `%s'\n",
+ GNUNET_i2s (&n->id));
#endif
- change_state (n, S_CONNECTED);
- neighbours_connected++;
- GNUNET_STATISTICS_update (GST_stats, gettext_noop ("# peers connected"), 1,
- GNUNET_NO);
-
- if (n->address_state == FRESH)
- {
- GST_validation_set_address_use (&n->id,
- cc->address,
- cc->session,
- GNUNET_YES);
- GNUNET_ATS_address_update (GST_ats, cc->address, cc->session, NULL, 0);
- GNUNET_ATS_address_in_use (GST_ats, cc->address, cc->session, GNUNET_YES);
- n->address_state = USED;
- }
-
- if (n->keepalive_task == GNUNET_SCHEDULER_NO_TASK)
- n->keepalive_task = GNUNET_SCHEDULER_add_now (&neighbour_keepalive_task, n);
-
- /* Updating quotas */
- GST_neighbours_set_incoming_quota (&n->id, n->bandwidth_in);
- send_outbound_quota(target, n->bandwidth_out);
-
- default:
- break;
+ change_state (n, S_CONNECTED);
+ neighbours_connected++;
+ GNUNET_STATISTICS_update (GST_stats, gettext_noop ("# peers connected"), 1,
+ GNUNET_NO);
+
+ if (n->address_state == FRESH)
+ {
+ GST_validation_set_address_use (&n->id, cc->address, cc->session,
+ GNUNET_YES);
+ GNUNET_ATS_address_update (GST_ats, cc->address, cc->session, NULL, 0);
+ GNUNET_ATS_address_in_use (GST_ats, cc->address, cc->session, GNUNET_YES);
+ n->address_state = USED;
+ }
+
+ if (n->keepalive_task == GNUNET_SCHEDULER_NO_TASK)
+ n->keepalive_task =
+ GNUNET_SCHEDULER_add_now (&neighbour_keepalive_task, n);
+
+ /* Updating quotas */
+ GST_neighbours_set_incoming_quota (&n->id, n->bandwidth_in);
+ send_outbound_quota (target, n->bandwidth_out);
+
+ default:
+ break;
}
GNUNET_HELLO_address_free (cc->address);
GNUNET_free (cc);
const struct GNUNET_PeerIdentity *target,
int success)
{
- struct ContinutionContext * cc = cls;
+ struct ContinutionContext *cc = cls;
struct NeighbourMapEntry *n;
if (neighbours == NULL)
return; /* neighbour is going away */
}
- n = lookup_neighbour(&cc->address->peer);
+ n = lookup_neighbour (&cc->address->peer);
if ((n == NULL) || (is_disconnecting (n)))
{
GNUNET_HELLO_address_free (cc->address);
#if DEBUG_TRANSPORT
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Failed to send CONNECT_MSG to peer `%4s' with address '%s' session %X, asking ATS for new address \n",
- GNUNET_i2s (&n->id),
- GST_plugins_a2s (n->address),
- n->session);
+ GNUNET_i2s (&n->id), GST_plugins_a2s (n->address), n->session);
#endif
change_state (n, S_NOT_CONNECTED);
- GNUNET_assert (strlen(cc->address->transport_name) > 0);
+ GNUNET_assert (strlen (cc->address->transport_name) > 0);
GNUNET_ATS_address_destroyed (GST_ats, cc->address, cc->session);
if (n->ats_suggest != GNUNET_SCHEDULER_NO_TASK)
*/
int
GST_neighbours_switch_to_address_3way (const struct GNUNET_PeerIdentity *peer,
- const struct GNUNET_HELLO_Address *address,
- struct Session *session,
+ const struct GNUNET_HELLO_Address
+ *address, struct Session *session,
const struct GNUNET_ATS_Information *ats,
uint32_t ats_count,
struct GNUNET_BANDWIDTH_Value32NBO
{
struct NeighbourMapEntry *n;
struct SessionConnectMessage connect_msg;
- struct ContinutionContext * cc;
+ struct ContinutionContext *cc;
size_t msg_len;
size_t ret;
return GNUNET_NO;
}
GNUNET_assert (address->transport_name != NULL);
- if ( (session == NULL) && (0 == address->address_length) )
+ if ((session == NULL) && (0 == address->address_length))
{
GNUNET_break_op (0);
/* FIXME: is this actually possible? When does this happen? */
- if (strlen(address->transport_name) > 0)
+ if (strlen (address->transport_name) > 0)
GNUNET_ATS_address_destroyed (GST_ats, address, session);
GNUNET_ATS_suggest_address (GST_ats, peer);
return GNUNET_NO;
#if DEBUG_TRANSPORT
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
"ATS tells us to switch to address '%s' session %p for peer `%s' in state `%s'\n",
- GST_plugins_a2s (address),
- session,
- GNUNET_i2s (peer),
- print_state(n->state));
+ GST_plugins_a2s (address), session, GNUNET_i2s (peer),
+ print_state (n->state));
#endif
if (n->ats_suggest != GNUNET_SCHEDULER_NO_TASK)
{
n->ats_suggest = GNUNET_SCHEDULER_NO_TASK;
}
/* do not switch addresses just update quotas */
- if ( (n->state == S_CONNECTED) &&
- (NULL != n->address) &&
- (0 == GNUNET_HELLO_address_cmp (address,
- n->address)) &&
- (n->session == session) )
+ if ((n->state == S_CONNECTED) && (NULL != n->address) &&
+ (0 == GNUNET_HELLO_address_cmp (address, n->address)) &&
+ (n->session == session))
{
n->bandwidth_in = bandwidth_in;
n->bandwidth_out = bandwidth_out;
GST_neighbours_set_incoming_quota (&n->id, n->bandwidth_in);
- send_outbound_quota(peer, n->bandwidth_out);
- return GNUNET_NO;
+ send_outbound_quota (peer, n->bandwidth_out);
+ return GNUNET_NO;
}
if (n->state == S_CONNECTED)
{
GNUNET_assert (NULL != n->address);
if (n->address_state == USED)
{
- GST_validation_set_address_use (&n->id,
- n->address,
- n->session,
+ GST_validation_set_address_use (&n->id, n->address, n->session,
GNUNET_NO);
GNUNET_ATS_address_in_use (GST_ats, n->address, n->session, GNUNET_NO);
n->address_state = UNUSED;
&neighbour_timeout_task, n);
switch (n->state)
{
- case S_NOT_CONNECTED:
+ case S_NOT_CONNECTED:
case S_CONNECT_SENT:
msg_len = sizeof (struct SessionConnectMessage);
connect_msg.header.size = htons (msg_len);
connect_msg.timestamp =
GNUNET_TIME_absolute_hton (GNUNET_TIME_absolute_get ());
- cc = GNUNET_malloc(sizeof (struct ContinutionContext));
+ cc = GNUNET_malloc (sizeof (struct ContinutionContext));
cc->session = session;
cc->address = GNUNET_HELLO_address_copy (address);
ret =
send_with_plugin (peer, (const char *) &connect_msg, msg_len,
UINT32_MAX, GNUNET_TIME_UNIT_FOREVER_REL, session,
- address, GNUNET_YES,
- &send_connect_continuation,
- cc);
+ address, GNUNET_YES, &send_connect_continuation, cc);
return GNUNET_NO;
case S_CONNECT_RECV:
/* We received a CONNECT message and asked ATS for an address */
connect_msg.reserved = htonl (0);
connect_msg.timestamp =
GNUNET_TIME_absolute_hton (GNUNET_TIME_absolute_get ());
- cc = GNUNET_malloc(sizeof (struct ContinutionContext));
+ cc = GNUNET_malloc (sizeof (struct ContinutionContext));
cc->session = session;
cc->address = GNUNET_HELLO_address_copy (address);
ret =
send_with_plugin (&n->id, (const void *) &connect_msg, msg_len,
UINT32_MAX, GNUNET_TIME_UNIT_FOREVER_REL, session,
- address, GNUNET_YES,
- &send_connect_ack_continuation, cc);
+ address, GNUNET_YES, &send_connect_ack_continuation,
+ cc);
return GNUNET_NO;
case S_CONNECTED:
case S_FAST_RECONNECT:
- /* connected peer is switching addresses or tries fast reconnect*/
+ /* connected peer is switching addresses or tries fast reconnect */
msg_len = sizeof (struct SessionConnectMessage);
connect_msg.header.size = htons (msg_len);
connect_msg.header.type =
connect_msg.reserved = htonl (0);
connect_msg.timestamp =
GNUNET_TIME_absolute_hton (GNUNET_TIME_absolute_get ());
- cc = GNUNET_malloc(sizeof (struct ContinutionContext));
+ cc = GNUNET_malloc (sizeof (struct ContinutionContext));
cc->session = session;
cc->address = GNUNET_HELLO_address_copy (address);
ret =
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Failed to send CONNECT_MESSAGE to `%4s' using address '%s' session %X\n",
- GNUNET_i2s (peer),
- GST_plugins_a2s (address), session);
+ GNUNET_i2s (peer), GST_plugins_a2s (address), session);
}
return GNUNET_NO;
default:
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Invalid connection state to switch addresses %u \n", n->state);
+ "Invalid connection state to switch addresses %u \n", n->state);
GNUNET_break_op (0);
return GNUNET_NO;
}
/**
* Obtain current latency information for the given neighbour.
*
- * @param peer
+ * @param peer
* @return observed latency of the address, FOREVER if the address was
* never successfully validated
*/
struct NeighbourMapEntry *n;
n = lookup_neighbour (peer);
- if ( (NULL == n) ||
- ( (n->address == NULL) && (n->session == NULL) ) )
+ if ((NULL == n) || ((n->address == NULL) && (n->session == NULL)))
return GNUNET_TIME_UNIT_FOREVER_REL;
return n->latency;
struct NeighbourMapEntry *n;
n = lookup_neighbour (peer);
- if ( (NULL == n) ||
- ( (n->address == NULL) && (n->session == NULL) ) )
+ if ((NULL == n) || ((n->address == NULL) && (n->session == NULL)))
return NULL;
return n->address;
n = GNUNET_malloc (sizeof (struct NeighbourMapEntry));
n->id = *peer;
n->state = S_NOT_CONNECTED;
- n->latency = GNUNET_TIME_relative_get_forever();
+ n->latency = GNUNET_TIME_relative_get_forever ();
GNUNET_BANDWIDTH_tracker_init (&n->in_tracker,
GNUNET_CONSTANTS_DEFAULT_BW_IN_OUT,
MAX_BANDWIDTH_CARRY_S);
{
if (n->address_state == USED)
{
- GST_validation_set_address_use (&n->id,
- n->address,
- n->session,
+ GST_validation_set_address_use (&n->id, n->address, n->session,
GNUNET_NO);
- GNUNET_ATS_address_in_use (GST_ats,n->address, n->session, GNUNET_NO);
+ GNUNET_ATS_address_in_use (GST_ats, n->address, n->session, GNUNET_NO);
n->address_state = UNUSED;
}
}
n->address = NULL;
}
n->session = NULL;
-
+
/* not connected anymore anyway, shouldn't matter */
if (S_CONNECTED != n->state)
return;
/* connected, try fast reconnect */
#if DEBUG_TRANSPORT
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Trying fast reconnect to peer `%s'\n", GNUNET_i2s (peer));
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Trying fast reconnect to peer `%s'\n",
+ GNUNET_i2s (peer));
#endif
change_state (n, S_FAST_RECONNECT);
GNUNET_assert (neighbours_connected > 0);
return;
}
- if ((n->session == NULL) && (n->address == NULL) )
+ if ((n->session == NULL) && (n->address == NULL))
{
GNUNET_STATISTICS_update (GST_stats,
gettext_noop
return;
struct GNUNET_MessageHeader m;
+
m.size = htons (sizeof (struct GNUNET_MessageHeader));
m.type = htons (GNUNET_MESSAGE_TYPE_TRANSPORT_SESSION_KEEPALIVE_RESPONSE);
*/
void
GST_neighbours_keepalive_response (const struct GNUNET_PeerIdentity *neighbour,
- const struct GNUNET_ATS_Information * ats,
+ const struct GNUNET_ATS_Information *ats,
uint32_t ats_count)
{
struct NeighbourMapEntry *n;
- struct GNUNET_ATS_Information * ats_new;
+ struct GNUNET_ATS_Information *ats_new;
uint32_t latency;
if (neighbours == NULL)
}
n->expect_latency_response = GNUNET_NO;
- GNUNET_assert (n->keep_alive_sent.abs_value != GNUNET_TIME_absolute_get_zero().abs_value);
- n->latency = GNUNET_TIME_absolute_get_difference(n->keep_alive_sent, GNUNET_TIME_absolute_get());
+ GNUNET_assert (n->keep_alive_sent.abs_value !=
+ GNUNET_TIME_absolute_get_zero ().abs_value);
+ n->latency =
+ GNUNET_TIME_absolute_get_difference (n->keep_alive_sent,
+ GNUNET_TIME_absolute_get ());
#if DEBUG_TRANSPORT
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Latency for peer `%s' is %llu ms\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Latency for peer `%s' is %llu ms\n",
GNUNET_i2s (&n->id), n->latency.rel_value);
#endif
- if (n->latency.rel_value == GNUNET_TIME_relative_get_forever().rel_value)
+ if (n->latency.rel_value == GNUNET_TIME_relative_get_forever ().rel_value)
{
GNUNET_ATS_address_update (GST_ats, n->address, n->session, ats, ats_count);
}
else
{
- ats_new = GNUNET_malloc (sizeof (struct GNUNET_ATS_Information) * (ats_count + 1));
+ ats_new =
+ GNUNET_malloc (sizeof (struct GNUNET_ATS_Information) *
+ (ats_count + 1));
memcpy (ats_new, ats, sizeof (struct GNUNET_ATS_Information) * ats_count);
/* add latency */
latency = n->latency.rel_value;
ats_new[ats_count].value = htonl (latency);
- GNUNET_ATS_address_update (GST_ats, n->address, n->session, ats_new, ats_count + 1);
+ GNUNET_ATS_address_update (GST_ats, n->address, n->session, ats_new,
+ ats_count + 1);
GNUNET_free (ats_new);
}
}
{
/* we did not send 'CONNECT' -- at least not recently */
GNUNET_STATISTICS_update (GST_stats,
- gettext_noop ("# unexpected CONNECT_ACK messages (no peer)"), 1,
- GNUNET_NO);
+ gettext_noop
+ ("# unexpected CONNECT_ACK messages (no peer)"),
+ 1, GNUNET_NO);
return;
- }
+ }
/* Additional check
*
* We also received an CONNECT message, switched from SENDT to RECV and
* ATS already suggested us an address after a successful blacklist check
*/
- if ((n->state != S_CONNECT_SENT) && ((n->state != S_CONNECT_RECV) && (n->address != NULL)))
+ if ((n->state != S_CONNECT_SENT) &&
+ ((n->state != S_CONNECT_RECV) && (n->address != NULL)))
{
GNUNET_STATISTICS_update (GST_stats,
- gettext_noop ("# unexpected CONNECT_ACK messages"), 1,
- GNUNET_NO);
+ gettext_noop
+ ("# unexpected CONNECT_ACK messages"), 1,
+ GNUNET_NO);
return;
}
GNUNET_assert (NULL != n->address);
if (n->address_state == FRESH)
{
- GST_validation_set_address_use (&n->id,
- n->address,
- n->session,
- GNUNET_YES);
+ GST_validation_set_address_use (&n->id, n->address, n->session, GNUNET_YES);
GNUNET_ATS_address_in_use (GST_ats, n->address, n->session, GNUNET_YES);
n->address_state = USED;
}
ret =
send_with_plugin (&n->id, (const char *) &msg, msg_len, UINT32_MAX,
- GNUNET_TIME_UNIT_FOREVER_REL, n->session,
- n->address, GNUNET_YES, NULL,
- NULL);
+ GNUNET_TIME_UNIT_FOREVER_REL, n->session, n->address,
+ GNUNET_YES, NULL, NULL);
if (ret == GNUNET_SYSERR)
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Failed to send SESSION_ACK to `%4s' using address '%s' session %X\n",
- GNUNET_i2s (&n->id),
- GST_plugins_a2s (n->address), n->session);
+ GNUNET_i2s (&n->id), GST_plugins_a2s (n->address), n->session);
if (n->keepalive_task == GNUNET_SCHEDULER_NO_TASK)
n->keepalive_task = GNUNET_SCHEDULER_add_now (&neighbour_keepalive_task, n);
-
+
neighbours_connected++;
GNUNET_STATISTICS_update (GST_stats, gettext_noop ("# peers connected"), 1,
- GNUNET_NO);
+ GNUNET_NO);
#if DEBUG_TRANSPORT
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Notify about connect of `%4s' using address '%s' session %X LINE %u\n",
- GNUNET_i2s (&n->id),
- GST_plugins_a2s (n->address), n->session,
- __LINE__);
+ "Notify about connect of `%4s' using address '%s' session %X LINE %u\n",
+ GNUNET_i2s (&n->id), GST_plugins_a2s (n->address), n->session,
+ __LINE__);
#endif
- connect_notify_cb (callback_cls, &n->id, ats, ats_count);
- send_outbound_quota(peer, n->bandwidth_out);
+ connect_notify_cb (callback_cls, &n->id, ats, ats_count);
+ send_outbound_quota (peer, n->bandwidth_out);
}
GST_neighbours_handle_ack (const struct GNUNET_MessageHeader *message,
const struct GNUNET_PeerIdentity *peer,
const struct GNUNET_HELLO_Address *address,
- struct Session *session,
+ struct Session *session,
const struct GNUNET_ATS_Information *ats,
uint32_t ats_count)
{
struct NeighbourMapEntry *n;
#if DEBUG_TRANSPORT
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Received ACK message from peer `%s'\n",
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Received ACK message from peer `%s'\n",
GNUNET_i2s (peer));
#endif
n = lookup_neighbour (peer);
if (NULL == n)
{
- send_disconnect (peer, address,
- session);
+ send_disconnect (peer, address, session);
GNUNET_break (0);
return;
}
if (S_CONNECTED == n->state)
return;
- if (!is_connecting(n))
+ if (!is_connecting (n))
{
- GNUNET_STATISTICS_update (GST_stats, gettext_noop ("# unexpected ACK messages"), 1,
+ GNUNET_STATISTICS_update (GST_stats,
+ gettext_noop ("# unexpected ACK messages"), 1,
GNUNET_NO);
return;
}
GNUNET_assert (n->address != NULL);
if (n->address_state == FRESH)
{
- GST_validation_set_address_use (&n->id,
- n->address,
- n->session,
- GNUNET_YES);
+ GST_validation_set_address_use (&n->id, n->address, n->session, GNUNET_YES);
GNUNET_ATS_address_in_use (GST_ats, n->address, n->session, GNUNET_YES);
n->address_state = USED;
}
neighbours_connected++;
GNUNET_STATISTICS_update (GST_stats, gettext_noop ("# peers connected"), 1,
- GNUNET_NO);
-
+ GNUNET_NO);
+
GST_neighbours_set_incoming_quota (&n->id, n->bandwidth_in);
if (n->keepalive_task == GNUNET_SCHEDULER_NO_TASK)
- n->keepalive_task = GNUNET_SCHEDULER_add_now (&neighbour_keepalive_task, n);
+ n->keepalive_task = GNUNET_SCHEDULER_add_now (&neighbour_keepalive_task, n);
#if DEBUG_TRANSPORT
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Notify about connect of `%4s' using address '%s' session %X LINE %u\n",
- GNUNET_i2s (&n->id),
- GST_plugins_a2s (n->address), n->session,
- __LINE__);
+ "Notify about connect of `%4s' using address '%s' session %X LINE %u\n",
+ GNUNET_i2s (&n->id), GST_plugins_a2s (n->address), n->session,
+ __LINE__);
#endif
- connect_notify_cb (callback_cls, &n->id, ats, ats_count);
- send_outbound_quota(peer, n->bandwidth_out);
+ connect_notify_cb (callback_cls, &n->id, ats, ats_count);
+ send_outbound_quota (peer, n->bandwidth_out);
}
struct BlackListCheckContext
GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG | GNUNET_ERROR_TYPE_BULK,
"transport-ats",
"Giving ATS session %p of address `%s' for peer %s\n",
- bcc->session,
- GST_plugins_a2s (bcc->address),
+ bcc->session, GST_plugins_a2s (bcc->address),
GNUNET_i2s (peer));
/* Tell ATS about the session, so ATS can suggest it if it likes it. */
- GNUNET_ATS_address_update (GST_ats,
- bcc->address,
- bcc->session,
- bcc->ats,
+ GNUNET_ATS_address_update (GST_ats, bcc->address, bcc->session, bcc->ats,
bcc->ats_count);
n->connect_ts = bcc->ts;
}
GNUNET_ATS_address_update (GST_ats, address, session, ats, ats_count);
n = lookup_neighbour (peer);
- if ( (n != NULL) && (S_CONNECTED == n->state) )
+ if ((n != NULL) && (S_CONNECTED == n->state))
{
- /* connected peer switches addresses */
- return;
+ /* connected peer switches addresses */
+ return;
}
bcc->ats = (struct GNUNET_ATS_Information *) &bcc[1];
memcpy (bcc->ats, ats, sizeof (struct GNUNET_ATS_Information) * ats_count);
bcc->ats[ats_count].type = htonl (GNUNET_ATS_QUALITY_NET_DELAY);
- bcc->ats[ats_count].value = htonl ((uint32_t) GST_neighbour_get_latency (peer).rel_value);
- GST_blacklist_test_allowed (peer, address->transport_name, handle_connect_blacklist_cont,
- bcc);
+ bcc->ats[ats_count].value =
+ htonl ((uint32_t) GST_neighbour_get_latency (peer).rel_value);
+ GST_blacklist_test_allowed (peer, address->transport_name,
+ handle_connect_blacklist_cont, bcc);
}
*/
void
GST_neighbours_keepalive_response (const struct GNUNET_PeerIdentity *neighbour,
- const struct GNUNET_ATS_Information * ats,
+ const struct GNUNET_ATS_Information *ats,
uint32_t ats_count);
neighbour,
const struct GNUNET_ATS_Information *
ats, uint32_t ats_count,
- const struct GNUNET_HELLO_Address *address);
+ const struct GNUNET_HELLO_Address *
+ address);
/**
*/
int
GST_neighbours_switch_to_address_3way (const struct GNUNET_PeerIdentity *peer,
- const struct GNUNET_HELLO_Address *address,
- struct Session *session,
- const struct GNUNET_ATS_Information *ats,
- uint32_t ats_count,
+ const struct GNUNET_HELLO_Address
+ *address, struct Session *session,
+ const struct GNUNET_ATS_Information *ats,
+ uint32_t ats_count,
struct GNUNET_BANDWIDTH_Value32NBO
bandwidth_in,
struct GNUNET_BANDWIDTH_Value32NBO
void
GST_neighbours_handle_connect_ack (const struct GNUNET_MessageHeader *message,
const struct GNUNET_PeerIdentity *peer,
- const struct GNUNET_HELLO_Address *address,
+ const struct GNUNET_HELLO_Address *address,
struct Session *session,
const struct GNUNET_ATS_Information *ats,
uint32_t ats_count);
GST_neighbours_handle_ack (const struct GNUNET_MessageHeader *message,
const struct GNUNET_PeerIdentity *peer,
const struct GNUNET_HELLO_Address *address,
- struct Session *session,
+ struct Session *session,
const struct GNUNET_ATS_Information *ats,
uint32_t ats_count);
/**
* Obtain current latency information for the given neighbour.
*
- * @param peer
+ * @param peer
* @return observed latency of the address, FOREVER if the address was
* never successfully validated
*/
if (plug->api == NULL)
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- _("Failed to load transport plugin for `%s'\n"), plug->lib_name);
+ _("Failed to load transport plugin for `%s'\n"),
+ plug->lib_name);
GNUNET_CONTAINER_DLL_remove (plugins_head, plugins_tail, plug);
GNUNET_free (plug->short_name);
GNUNET_free (plug->lib_name);
api = GST_plugins_find (address->transport_name);
if (NULL == api)
return "<plugin unknown>";
- if (0 == address->address_length)
+ if (0 == address->address_length)
{
- GNUNET_snprintf (unable_to_show,
- sizeof (unable_to_show),
- "<unable to stringify %u-byte long address of %s transport>",
- (unsigned int) address->address_length,
- address->transport_name);
+ GNUNET_snprintf (unable_to_show, sizeof (unable_to_show),
+ "<unable to stringify %u-byte long address of %s transport>",
+ (unsigned int) address->address_length,
+ address->transport_name);
return unable_to_show;
}
- return api->address_to_string (NULL, address->address, address->address_length);
+ return api->address_to_string (NULL, address->address,
+ address->address_length);
}
struct ValidationEntryMatchContext *vemc = cls;
struct ValidationEntry *ve = value;
- if (0 ==
- GNUNET_HELLO_address_cmp (ve->address,
- vemc->address))
+ if (0 == GNUNET_HELLO_address_cmp (ve->address, vemc->address))
{
vemc->ve = ve;
return GNUNET_NO;
struct GNUNET_TIME_Relative left;
ve->timeout_task = GNUNET_SCHEDULER_NO_TASK;
- max = GNUNET_TIME_absolute_max (ve->valid_until,
- ve->revalidation_block);
+ max = GNUNET_TIME_absolute_max (ve->valid_until, ve->revalidation_block);
left = GNUNET_TIME_absolute_get_remaining (max);
if (left.rel_value > 0)
{
/* should wait a bit longer */
- ve->timeout_task = GNUNET_SCHEDULER_add_delayed (left,
- &timeout_hello_validation,
- ve);
+ ve->timeout_task =
+ GNUNET_SCHEDULER_add_delayed (left, &timeout_hello_validation, ve);
return;
}
GNUNET_STATISTICS_update (GST_stats,
slen = strlen (ve->address->transport_name) + 1;
hello = GST_hello_get ();
hsize = ntohs (hello->size);
- tsize = sizeof (struct TransportPingMessage) + ve->address->address_length + slen + hsize;
+ tsize =
+ sizeof (struct TransportPingMessage) + ve->address->address_length +
+ slen + hsize;
ping.header.size =
- htons (sizeof (struct TransportPingMessage) + ve->address->address_length + slen);
+ htons (sizeof (struct TransportPingMessage) +
+ ve->address->address_length + slen);
ping.header.type = htons (GNUNET_MESSAGE_TYPE_TRANSPORT_PING);
ping.challenge = htonl (ve->challenge);
ping.target = *pid;
"HELLO", "PING", (unsigned int) tsize);
/* message too big (!?), get rid of HELLO */
hsize = 0;
- tsize = sizeof (struct TransportPingMessage) + ve->address->address_length + slen + hsize;
+ tsize =
+ sizeof (struct TransportPingMessage) + ve->address->address_length +
+ slen + hsize;
}
{
char message_buf[tsize];
ret =
papi->send (papi->cls, pid, message_buf, tsize, PING_PRIORITY,
ACCEPTABLE_PING_DELAY, NULL /* no session */ ,
- ve->address->address, ve->address->address_length,
- GNUNET_YES, NULL, NULL);
+ ve->address->address, ve->address->address_length,
+ GNUNET_YES, NULL, NULL);
}
}
if (-1 != ret)
ve->revalidation_task = GNUNET_SCHEDULER_NO_TASK;
delay = GNUNET_TIME_absolute_get_remaining (ve->revalidation_block);
/* How long until we can possibly permit the next PING? */
- canonical_delay =
- (ve->in_use == GNUNET_YES)
- ? CONNECTED_PING_FREQUENCY
- : ( (GNUNET_TIME_absolute_get_remaining (ve->valid_until).rel_value > 0)
- ? VALIDATED_PING_FREQUENCY
- : UNVALIDATED_PING_KEEPALIVE);
+ canonical_delay =
+ (ve->in_use ==
+ GNUNET_YES) ? CONNECTED_PING_FREQUENCY
+ : ((GNUNET_TIME_absolute_get_remaining (ve->valid_until).rel_value >
+ 0) ? VALIDATED_PING_FREQUENCY : UNVALIDATED_PING_KEEPALIVE);
if (delay.rel_value > canonical_delay.rel_value * 2)
{
/* situation changed, recalculate delay */
GNUNET_SCHEDULER_add_delayed (delay, &revalidate_address, ve);
return;
}
- ve->revalidation_block =
- GNUNET_TIME_relative_to_absolute (canonical_delay);
+ ve->revalidation_block = GNUNET_TIME_relative_to_absolute (canonical_delay);
/* schedule next PINGing with some extra random delay to avoid synchronous re-validations */
- rdelay = GNUNET_CRYPTO_random_u32 (GNUNET_CRYPTO_QUALITY_WEAK,
- canonical_delay.rel_value);
+ rdelay =
+ GNUNET_CRYPTO_random_u32 (GNUNET_CRYPTO_QUALITY_WEAK,
+ canonical_delay.rel_value);
delay =
- GNUNET_TIME_relative_add (canonical_delay,
- GNUNET_TIME_relative_multiply
+ GNUNET_TIME_relative_add (canonical_delay,
+ GNUNET_TIME_relative_multiply
(GNUNET_TIME_UNIT_MILLISECONDS, rdelay));
ve->revalidation_task =
- GNUNET_SCHEDULER_add_delayed (delay, &revalidate_address, ve);
+ GNUNET_SCHEDULER_add_delayed (delay, &revalidate_address, ve);
- /* start PINGing by checking blacklist */
+ /* start PINGing by checking blacklist */
GNUNET_STATISTICS_update (GST_stats,
gettext_noop ("# address revalidations started"), 1,
- GNUNET_NO);
- bc = GST_blacklist_test_allowed (&ve->pid, ve->address->transport_name,
- &transmit_ping_if_allowed, ve);
+ GNUNET_NO);
+ bc = GST_blacklist_test_allowed (&ve->pid, ve->address->transport_name,
+ &transmit_ping_if_allowed, ve);
if (NULL != bc)
- ve->bc = bc; /* only set 'bc' if 'transmit_ping_if_allowed' was not already
- called... */
+ ve->bc = bc; /* only set 'bc' if 'transmit_ping_if_allowed' was not already
+ * called... */
}
ve->latency = GNUNET_TIME_UNIT_FOREVER_REL;
ve->challenge =
GNUNET_CRYPTO_random_u32 (GNUNET_CRYPTO_QUALITY_NONCE, UINT32_MAX);
- ve->timeout_task = GNUNET_SCHEDULER_add_delayed (UNVALIDATED_PING_KEEPALIVE,
- &timeout_hello_validation, ve);
- GNUNET_CONTAINER_multihashmap_put (validation_map, &address->peer.hashPubKey, ve,
+ ve->timeout_task =
+ GNUNET_SCHEDULER_add_delayed (UNVALIDATED_PING_KEEPALIVE,
+ &timeout_hello_validation, ve);
+ GNUNET_CONTAINER_multihashmap_put (validation_map, &address->peer.hashPubKey,
+ ve,
GNUNET_CONTAINER_MULTIHASHMAPOPTION_MULTIPLE);
ve->expecting_pong = GNUNET_NO;
return ve;
* @return GNUNET_OK (keep the address)
*/
static int
-add_valid_address (void *cls,
- const struct GNUNET_HELLO_Address *address,
+add_valid_address (void *cls, const struct GNUNET_HELLO_Address *address,
struct GNUNET_TIME_Absolute expiration)
{
const struct GNUNET_HELLO_Message *hello = cls;
GNUNET_break (0);
return GNUNET_OK; /* invalid HELLO !? */
}
- if (0 == memcmp(&GST_my_identity, &pid, sizeof (struct GNUNET_PeerIdentity)))
+ if (0 == memcmp (&GST_my_identity, &pid, sizeof (struct GNUNET_PeerIdentity)))
{
/* Peerinfo returned own identity, skip validation */
return GNUNET_OK;
if (GNUNET_SCHEDULER_NO_TASK == ve->revalidation_task)
ve->revalidation_task = GNUNET_SCHEDULER_add_now (&revalidate_address, ve);
- GNUNET_ATS_address_update (GST_ats, address, NULL, NULL,
- 0);
+ GNUNET_ATS_address_update (GST_ats, address, NULL, NULL, 0);
return GNUNET_OK;
}
static void
multicast_pong (void *cls,
const struct GNUNET_CRYPTO_RsaPublicKeyBinaryEncoded
- *public_key,
- struct GNUNET_TIME_Absolute valid_until,
+ *public_key, struct GNUNET_TIME_Absolute valid_until,
struct GNUNET_TIME_Absolute validation_block,
const struct GNUNET_HELLO_Address *address)
{
return;
(void) papi->send (papi->cls, &address->peer, (const char *) pong,
ntohs (pong->header.size), PONG_PRIORITY,
- ACCEPTABLE_PING_DELAY, NULL,
- address->address,
+ ACCEPTABLE_PING_DELAY, NULL, address->address,
address->address_length, GNUNET_YES, NULL, NULL);
}
GST_validation_handle_ping (const struct GNUNET_PeerIdentity *sender,
const struct GNUNET_MessageHeader *hdr,
const struct GNUNET_HELLO_Address *sender_address,
- struct Session *session)
+ struct Session *session)
{
const struct TransportPingMessage *ping;
struct TransportPongMessage *pong;
address.transport_name = addr;
address.peer = *sender;
if (GNUNET_YES !=
- GST_hello_test_address (&address, &sig_cache,
- &sig_cache_exp))
+ GST_hello_test_address (&address, &sig_cache, &sig_cache_exp))
{
GNUNET_log (GNUNET_ERROR_TYPE_INFO,
_
ret =
papi->send (papi->cls, sender, (const char *) pong,
ntohs (pong->header.size), PONG_PRIORITY,
- ACCEPTABLE_PING_DELAY, session,
- sender_address->address,
- sender_address->address_length,
- GNUNET_SYSERR, NULL, NULL);
+ ACCEPTABLE_PING_DELAY, session, sender_address->address,
+ sender_address->address_length, GNUNET_SYSERR, NULL, NULL);
if (ret != -1)
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
* @return GNUNET_OK (keep the address)
*/
static int
-validate_address_iterator (void *cls,
- const struct GNUNET_HELLO_Address *address,
- struct GNUNET_TIME_Absolute expiration)
+validate_address_iterator (void *cls,
+ const struct GNUNET_HELLO_Address *address,
+ struct GNUNET_TIME_Absolute expiration)
{
const struct ValidateAddressContext *vac = cls;
struct ValidationEntry *ve;
return GNUNET_OK; /* expired */
ve = find_validation_entry (&vac->public_key, address);
if (GNUNET_SCHEDULER_NO_TASK == ve->revalidation_task)
- ve->revalidation_task = GNUNET_SCHEDULER_add_now (&revalidate_address,
- ve);
+ ve->revalidation_task = GNUNET_SCHEDULER_add_now (&revalidate_address, ve);
return GNUNET_OK;
}
if (GNUNET_YES == ve->copied)
return 0; /* terminate */
ve->copied = GNUNET_YES;
- return GNUNET_HELLO_add_address (ve->address, ve->valid_until,
- buf, max);
+ return GNUNET_HELLO_add_address (ve->address, ve->valid_until, buf, max);
}
struct GNUNET_ATS_Information ats;
ats.type = htonl (GNUNET_ATS_QUALITY_NET_DELAY);
- ats.value = htonl ((uint32_t) ve->latency.rel_value);
+ ats.value = htonl ((uint32_t) ve->latency.rel_value);
GNUNET_ATS_address_update (GST_ats, ve->address, NULL, &ats, 1);
}
/* build HELLO to store in PEERINFO */
GNUNET_free (h);
GNUNET_assert (NULL ==
GNUNET_HELLO_iterate_addresses (hm, GNUNET_NO,
- &validate_address_iterator, &vac));
+ &validate_address_iterator,
+ &vac));
}
struct IteratorContext *ic = cls;
struct ValidationEntry *ve = value;
- ic->cb (ic->cb_cls, &ve->public_key, ve->valid_until,
- ve->revalidation_block, ve->address);
+ ic->cb (ic->cb_cls, &ve->public_key, ve->valid_until, ve->revalidation_block,
+ ve->address);
return GNUNET_OK;
}
*/
void
GST_validation_set_address_use (const struct GNUNET_PeerIdentity *sender,
- const struct GNUNET_HELLO_Address *address,
- struct Session *session,
- int in_use)
+ const struct GNUNET_HELLO_Address *address,
+ struct Session *session, int in_use)
{
struct ValidationEntry *ve;
if (NULL != address)
ve = find_validation_entry (NULL, address);
else
- ve = NULL; /* FIXME: lookup based on session... */
+ ve = NULL; /* FIXME: lookup based on session... */
if (NULL == ve)
{
/* this can happen for inbound connections (sender_address_len == 0); */
}
if (ve->in_use == in_use)
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "GST_validation_set_address_use: %s %s: ve->in_use %i <-> in_use %i\n",
- GNUNET_i2s(sender),
- GST_plugins_a2s(address),
- ve->in_use,
- in_use);
- GNUNET_break (ve->in_use != in_use); /* should be different... */
+ "GST_validation_set_address_use: %s %s: ve->in_use %i <-> in_use %i\n",
+ GNUNET_i2s (sender), GST_plugins_a2s (address), ve->in_use,
+ in_use);
+ GNUNET_break (ve->in_use != in_use); /* should be different... */
ve->in_use = in_use;
if (in_use == GNUNET_YES)
{
/* from now on, higher frequeny, so reschedule now */
GNUNET_SCHEDULER_cancel (ve->revalidation_task);
- ve->revalidation_task =
- GNUNET_SCHEDULER_add_now (&revalidate_address, ve);
+ ve->revalidation_task = GNUNET_SCHEDULER_add_now (&revalidate_address, ve);
}
}
*
* @param sender peer
* @param address the address
- * @param session session
+ * @param session session
* @return observed latency of the address, FOREVER if the address was
* never successfully validated
*/
struct GNUNET_TIME_Relative
GST_validation_get_address_latency (const struct GNUNET_PeerIdentity *sender,
- const struct GNUNET_HELLO_Address *address,
- struct Session *session)
+ const struct GNUNET_HELLO_Address *address,
+ struct Session *session)
{
struct ValidationEntry *ve;
if (NULL == address)
{
- GNUNET_break (0); // FIXME: support having latency only with session...
+ GNUNET_break (0); // FIXME: support having latency only with session...
return GNUNET_TIME_UNIT_FOREVER_REL;
}
ve = find_validation_entry (NULL, address);
*/
void
GST_validation_set_address_use (const struct GNUNET_PeerIdentity *sender,
- const struct GNUNET_HELLO_Address *address,
- struct Session *session,
- int in_use);
+ const struct GNUNET_HELLO_Address *address,
+ struct Session *session, int in_use);
/**
* Query validation about the latest observed latency on a given
* address.
*
- * @param sender peer
+ * @param sender peer
* @param address the address
* @param session session
* @return observed latency of the address, FOREVER if the address was
*/
struct GNUNET_TIME_Relative
GST_validation_get_address_latency (const struct GNUNET_PeerIdentity *sender,
- const struct GNUNET_HELLO_Address *address,
- struct Session *session);
+ const struct GNUNET_HELLO_Address *address,
+ struct Session *session);
/**
void
GST_validation_handle_ping (const struct GNUNET_PeerIdentity *sender,
const struct GNUNET_MessageHeader *hdr,
- const struct GNUNET_HELLO_Address *sender_address,
- struct Session *session);
+ const struct GNUNET_HELLO_Address *sender_address,
+ struct Session *session);
/**
valid_until,
struct GNUNET_TIME_Absolute
validation_block,
- const struct GNUNET_HELLO_Address *address);
+ const struct GNUNET_HELLO_Address
+ * address);
/**
erg = mkfifo (FIFO_FILE1, 0666);
if (0 != erg)
{
- fprintf (stderr,
- "Error in mkfifo(%s): %s\n",
- FIFO_FILE1,
- strerror (errno));
+ fprintf (stderr, "Error in mkfifo(%s): %s\n", FIFO_FILE1,
+ strerror (errno));
//exit(1);
}
erg = mkfifo (FIFO_FILE2, 0666);
if (0 != erg)
{
- fprintf (stderr,
- "Error in mkfifo(%s): %s\n",
- FIFO_FILE2,
- strerror (errno));
+ fprintf (stderr, "Error in mkfifo(%s): %s\n", FIFO_FILE2,
+ strerror (errno));
//exit(1);
}
if (fdpin >= FD_SETSIZE)
{
- fprintf (stderr,
- "File fdpin number too large (%d > %u)\n",
- fdpin,
+ fprintf (stderr, "File fdpin number too large (%d > %u)\n", fdpin,
(unsigned int) FD_SETSIZE);
goto end;
}
if (fdpout >= FD_SETSIZE)
{
- fprintf (stderr,
- "File fdpout number too large (%d > %u)\n",
- fdpout,
+ fprintf (stderr, "File fdpout number too large (%d > %u)\n", fdpout,
(unsigned int) FD_SETSIZE);
goto end;
}
retval = select (maxfd + 1, &rfds, &wfds, NULL, &tv);
- if ( (-1 == retval) && (EINTR == errno) )
- continue;
+ if ((-1 == retval) && (EINTR == errno))
+ continue;
if (0 > retval)
{
- fprintf (stderr,
- "select failed: %s\n",
- strerror (errno));
+ fprintf (stderr, "select failed: %s\n", strerror (errno));
closeprog = 1;
break;
}
if (0 > ret)
{
closeprog = 1;
- fprintf (stderr,
- "Write ERROR to STDOUT_FILENO: %s\n",
- strerror (errno));
+ fprintf (stderr, "Write ERROR to STDOUT_FILENO: %s\n",
+ strerror (errno));
break;
}
else
if (0 > ret)
{
closeprog = 1;
- fprintf (stderr,
- "Write ERROR to fdpout: %s\n",
- strerror (errno));
+ fprintf (stderr, "Write ERROR to fdpout: %s\n", strerror (errno));
}
else
{
if (0 > readsize)
{
closeprog = 1;
- fprintf (stderr,
- "Error reading from STDIN_FILENO: %s\n",
- strerror (errno));
+ fprintf (stderr, "Error reading from STDIN_FILENO: %s\n",
+ strerror (errno));
}
else if (0 < readsize)
{
if (0 > readsize)
{
closeprog = 1;
- fprintf (stderr,
- "Error reading from fdpin: %s\n",
- strerror (errno));
+ fprintf (stderr, "Error reading from fdpin: %s\n", strerror (errno));
break;
}
else if (0 < readsize)
}
return 0;
}
-
};
/* For IEEE80211_RADIOTAP_FLAGS */
-#define IEEE80211_RADIOTAP_F_CFP 0x01 /* sent/received
- * during CFP
- */
-#define IEEE80211_RADIOTAP_F_SHORTPRE 0x02 /* sent/received
- * with short
- * preamble
- */
-#define IEEE80211_RADIOTAP_F_WEP 0x04 /* sent/received
- * with WEP encryption
- */
-#define IEEE80211_RADIOTAP_F_FRAG 0x08 /* sent/received
- * with fragmentation
- */
-#define IEEE80211_RADIOTAP_F_FCS 0x10 /* frame includes FCS */
-#define IEEE80211_RADIOTAP_F_DATAPAD 0x20 /* frame has padding between
- * 802.11 header and payload
- * (to 32-bit boundary)
- */
+#define IEEE80211_RADIOTAP_F_CFP 0x01 /* sent/received
+ * during CFP
+ */
+#define IEEE80211_RADIOTAP_F_SHORTPRE 0x02 /* sent/received
+ * with short
+ * preamble
+ */
+#define IEEE80211_RADIOTAP_F_WEP 0x04 /* sent/received
+ * with WEP encryption
+ */
+#define IEEE80211_RADIOTAP_F_FRAG 0x08 /* sent/received
+ * with fragmentation
+ */
+#define IEEE80211_RADIOTAP_F_FCS 0x10 /* frame includes FCS */
+#define IEEE80211_RADIOTAP_F_DATAPAD 0x20 /* frame has padding between
+ * 802.11 header and payload
+ * (to 32-bit boundary)
+ */
/* For IEEE80211_RADIOTAP_RX_FLAGS */
-#define IEEE80211_RADIOTAP_F_RX_BADFCS 0x0001 /* frame failed crc check */
+#define IEEE80211_RADIOTAP_F_RX_BADFCS 0x0001 /* frame failed crc check */
/* For IEEE80211_RADIOTAP_TX_FLAGS */
-#define IEEE80211_RADIOTAP_F_TX_FAIL 0x0001 /* failed due to excessive
- * retries */
-#define IEEE80211_RADIOTAP_F_TX_CTS 0x0002 /* used cts 'protection' */
-#define IEEE80211_RADIOTAP_F_TX_RTS 0x0004 /* used rts/cts handshake */
-#define IEEE80211_RADIOTAP_F_TX_NOACK 0x0008 /* frame should not be ACKed */
-#define IEEE80211_RADIOTAP_F_TX_NOSEQ 0x0010 /* sequence number handled
- * by userspace */
+#define IEEE80211_RADIOTAP_F_TX_FAIL 0x0001 /* failed due to excessive
+ * retries */
+#define IEEE80211_RADIOTAP_F_TX_CTS 0x0002 /* used cts 'protection' */
+#define IEEE80211_RADIOTAP_F_TX_RTS 0x0004 /* used rts/cts handshake */
+#define IEEE80211_RADIOTAP_F_TX_NOACK 0x0008 /* frame should not be ACKed */
+#define IEEE80211_RADIOTAP_F_TX_NOSEQ 0x0010 /* sequence number handled
+ * by userspace */
/**
* index corresponds to the IEEE80211_RADIOTAP_... defines.
*/
static int
-ieee80211_radiotap_iterator_init (struct ieee80211_radiotap_iterator
- *iterator,
- struct ieee80211_radiotap_header
- *radiotap_header, int max_length)
+ieee80211_radiotap_iterator_init (struct ieee80211_radiotap_iterator *iterator,
+ struct ieee80211_radiotap_header
+ *radiotap_header, int max_length)
{
if (iterator == NULL)
return (-EINVAL);
iterator->arg_index = 0;
iterator->bitmap_shifter = le32toh (radiotap_header->it_present);
iterator->arg =
- ((uint8_t *) radiotap_header) + sizeof (struct ieee80211_radiotap_header);
+ ((uint8_t *) radiotap_header) + sizeof (struct ieee80211_radiotap_header);
iterator->this_arg = 0;
/* find payload start allowing for extended bitmap(s) */
if ((iterator->bitmap_shifter & IEEE80211_RADIOTAP_PRESENT_EXTEND_MASK))
+ {
+ while (le32toh (*((uint32_t *) iterator->arg)) &
+ IEEE80211_RADIOTAP_PRESENT_EXTEND_MASK)
{
- while (le32toh (*((uint32_t *) iterator->arg)) &
- IEEE80211_RADIOTAP_PRESENT_EXTEND_MASK)
- {
- iterator->arg += sizeof (uint32_t);
-
- /*
- * check for insanity where the present bitmaps
- * keep claiming to extend up to or even beyond the
- * stated radiotap header length
- */
-
- if ((((void *) iterator->arg) - ((void *) iterator->rtheader)) >
- iterator->max_length)
- return (-EINVAL);
-
- }
-
iterator->arg += sizeof (uint32_t);
/*
- * no need to check again for blowing past stated radiotap
- * header length, becuase ieee80211_radiotap_iterator_next
- * checks it before it is dereferenced
+ * check for insanity where the present bitmaps
+ * keep claiming to extend up to or even beyond the
+ * stated radiotap header length
*/
+ if ((((void *) iterator->arg) - ((void *) iterator->rtheader)) >
+ iterator->max_length)
+ return (-EINVAL);
+
}
+ iterator->arg += sizeof (uint32_t);
+
+ /*
+ * no need to check again for blowing past stated radiotap
+ * header length, becuase ieee80211_radiotap_iterator_next
+ * checks it before it is dereferenced
+ */
+
+ }
+
/* we are all initialized happily */
return 0;
}
/**
- * @brief ieee80211_radiotap_iterator_next - return next radiotap parser iterator arg
+ * @brief ieee80211_radiotap_iterator_next - return next radiotap parser iterator arg
*
* This function returns the next radiotap arg index (IEEE80211_RADIOTAP_...)
* and sets iterator->this_arg to point to the payload for the arg. It takes
* @return next present arg index on success or negative if no more or error
*/
static int
-ieee80211_radiotap_iterator_next (struct ieee80211_radiotap_iterator
- *iterator)
+ieee80211_radiotap_iterator_next (struct ieee80211_radiotap_iterator *iterator)
{
/*
[IEEE80211_RADIOTAP_RX_FLAGS] = 0x22,
[IEEE80211_RADIOTAP_RTS_RETRIES] = 0x11,
[IEEE80211_RADIOTAP_DATA_RETRIES] = 0x11
- /*
- * add more here as they are defined in
- * include/net/ieee80211_radiotap.h
- */
+ /*
+ * add more here as they are defined in
+ * include/net/ieee80211_radiotap.h
+ */
};
/*
*/
while (iterator->arg_index < (int) sizeof (rt_sizes))
+ {
+ int hit = 0;
+
+ if (!(iterator->bitmap_shifter & 1))
+ goto next_entry; /* arg not present */
+
+ /*
+ * arg is present, account for alignment padding
+ * 8-bit args can be at any alignment
+ * 16-bit args must start on 16-bit boundary
+ * 32-bit args must start on 32-bit boundary
+ * 64-bit args must start on 64-bit boundary
+ *
+ * note that total arg size can differ from alignment of
+ * elements inside arg, so we use upper nybble of length
+ * table to base alignment on
+ *
+ * also note: these alignments are ** relative to the
+ * start of the radiotap header **. There is no guarantee
+ * that the radiotap header itself is aligned on any
+ * kind of boundary.
+ */
+
+ if ((((void *) iterator->arg) -
+ ((void *) iterator->rtheader)) & ((rt_sizes[iterator->arg_index] >> 4)
+ - 1))
+ iterator->arg_index +=
+ (rt_sizes[iterator->arg_index] >> 4) -
+ ((((void *) iterator->arg) -
+ ((void *) iterator->rtheader)) & ((rt_sizes[iterator->arg_index] >>
+ 4) - 1));
+
+ /*
+ * this is what we will return to user, but we need to
+ * move on first so next call has something fresh to test
+ */
+
+ iterator->this_arg_index = iterator->arg_index;
+ iterator->this_arg = iterator->arg;
+ hit = 1;
+
+ /* internally move on the size of this arg */
+
+ iterator->arg += rt_sizes[iterator->arg_index] & 0x0f;
+
+ /*
+ * check for insanity where we are given a bitmap that
+ * claims to have more arg content than the length of the
+ * radiotap section. We will normally end up equalling this
+ * max_length on the last arg, never exceeding it.
+ */
+
+ if ((((void *) iterator->arg) - ((void *) iterator->rtheader)) >
+ iterator->max_length)
+ return (-EINVAL);
+
+next_entry:
+
+ iterator->arg_index++;
+ if (((iterator->arg_index & 31) == 0))
{
- int hit = 0;
-
- if (!(iterator->bitmap_shifter & 1))
- goto next_entry; /* arg not present */
-
- /*
- * arg is present, account for alignment padding
- * 8-bit args can be at any alignment
- * 16-bit args must start on 16-bit boundary
- * 32-bit args must start on 32-bit boundary
- * 64-bit args must start on 64-bit boundary
- *
- * note that total arg size can differ from alignment of
- * elements inside arg, so we use upper nybble of length
- * table to base alignment on
- *
- * also note: these alignments are ** relative to the
- * start of the radiotap header **. There is no guarantee
- * that the radiotap header itself is aligned on any
- * kind of boundary.
- */
-
- if ((((void *) iterator->arg) -
- ((void *) iterator->rtheader)) & ((rt_sizes[iterator->arg_index] >>
- 4) - 1))
- iterator->arg_index +=
- (rt_sizes[iterator->arg_index] >> 4) -
- ((((void *) iterator->arg) -
- ((void *) iterator->rtheader)) & ((rt_sizes[iterator->arg_index]
- >> 4) - 1));
-
- /*
- * this is what we will return to user, but we need to
- * move on first so next call has something fresh to test
- */
-
- iterator->this_arg_index = iterator->arg_index;
- iterator->this_arg = iterator->arg;
- hit = 1;
-
- /* internally move on the size of this arg */
-
- iterator->arg += rt_sizes[iterator->arg_index] & 0x0f;
-
- /*
- * check for insanity where we are given a bitmap that
- * claims to have more arg content than the length of the
- * radiotap section. We will normally end up equalling this
- * max_length on the last arg, never exceeding it.
- */
-
- if ((((void *) iterator->arg) - ((void *) iterator->rtheader)) >
- iterator->max_length)
- return (-EINVAL);
-
- next_entry:
-
- iterator->arg_index++;
- if (((iterator->arg_index & 31) == 0))
- {
- /* completed current uint32_t bitmap */
- if (iterator->bitmap_shifter & 1)
- {
- /* b31 was set, there is more */
- /* move to next uint32_t bitmap */
- iterator->bitmap_shifter = le32toh (*iterator->next_bitmap);
- iterator->next_bitmap++;
- }
- else
- {
- /* no more bitmaps: end */
- iterator->arg_index = sizeof (rt_sizes);
- }
- }
+ /* completed current uint32_t bitmap */
+ if (iterator->bitmap_shifter & 1)
+ {
+ /* b31 was set, there is more */
+ /* move to next uint32_t bitmap */
+ iterator->bitmap_shifter = le32toh (*iterator->next_bitmap);
+ iterator->next_bitmap++;
+ }
else
- { /* just try the next bit */
- iterator->bitmap_shifter >>= 1;
- }
+ {
+ /* no more bitmaps: end */
+ iterator->arg_index = sizeof (rt_sizes);
+ }
+ }
+ else
+ { /* just try the next bit */
+ iterator->bitmap_shifter >>= 1;
+ }
- /* if we found a valid arg earlier, return it now */
+ /* if we found a valid arg earlier, return it now */
- if (hit)
- return (iterator->this_arg_index);
+ if (hit)
+ return (iterator->this_arg_index);
- }
+ }
/* we don't know how to handle any more args, we're done */
crc = calc_crc_osdep (buf, len);
buf += len;
return (((crc) & 0xFF) == buf[0] && ((crc >> 8) & 0xFF) == buf[1] &&
- ((crc >> 16) & 0xFF) == buf[2] && ((crc >> 24) & 0xFF) == buf[3]);
+ ((crc >> 16) & 0xFF) == buf[2] && ((crc >> 24) & 0xFF) == buf[3]);
}
* @return size read from the buffer
*/
static ssize_t
-linux_read (struct Hardware_Infos *dev, unsigned char *buf,
- size_t buf_size, struct Radiotap_rx *ri)
+linux_read (struct Hardware_Infos *dev, unsigned char *buf, size_t buf_size,
+ struct Radiotap_rx *ri)
{
unsigned char tmpbuf[buf_size];
ssize_t caplen;
caplen = read (dev->fd_raw, tmpbuf, buf_size);
if (0 > caplen)
- {
- if (EAGAIN == errno)
- return 0;
- fprintf (stderr, "Failed to read from RAW socket: %s\n",
- strerror (errno));
- return -1;
- }
+ {
+ if (EAGAIN == errno)
+ return 0;
+ fprintf (stderr, "Failed to read from RAW socket: %s\n", strerror (errno));
+ return -1;
+ }
memset (buf, 0, buf_size);
memset (ri, 0, sizeof (*ri));
switch (dev->arptype_in)
+ {
+ case ARPHRD_IEEE80211_PRISM:
+ {
+ /* skip the prism header */
+ if (tmpbuf[7] == 0x40)
{
- case ARPHRD_IEEE80211_PRISM:
- {
- /* skip the prism header */
- if (tmpbuf[7] == 0x40)
- {
- /* prism54 uses a different format */
- ri->ri_power = tmpbuf[0x33];
- ri->ri_noise = *(unsigned int *) (tmpbuf + 0x33 + 12);
- ri->ri_rate = (*(unsigned int *) (tmpbuf + 0x33 + 24)) * 500000;
- got_signal = 1;
- got_noise = 1;
- n = 0x40;
- }
- else
- {
- ri->ri_mactime = *(uint64_t *) (tmpbuf + 0x5C - 48);
- ri->ri_channel = *(unsigned int *) (tmpbuf + 0x5C - 36);
- ri->ri_power = *(unsigned int *) (tmpbuf + 0x5C);
- ri->ri_noise = *(unsigned int *) (tmpbuf + 0x5C + 12);
- ri->ri_rate = (*(unsigned int *) (tmpbuf + 0x5C + 24)) * 500000;
- got_channel = 1;
- got_signal = 1;
- got_noise = 1;
- n = *(int *) (tmpbuf + 4);
- }
-
- if (n < 8 || n >= caplen)
- return (0);
- }
- break;
+ /* prism54 uses a different format */
+ ri->ri_power = tmpbuf[0x33];
+ ri->ri_noise = *(unsigned int *) (tmpbuf + 0x33 + 12);
+ ri->ri_rate = (*(unsigned int *) (tmpbuf + 0x33 + 24)) * 500000;
+ got_signal = 1;
+ got_noise = 1;
+ n = 0x40;
+ }
+ else
+ {
+ ri->ri_mactime = *(uint64_t *) (tmpbuf + 0x5C - 48);
+ ri->ri_channel = *(unsigned int *) (tmpbuf + 0x5C - 36);
+ ri->ri_power = *(unsigned int *) (tmpbuf + 0x5C);
+ ri->ri_noise = *(unsigned int *) (tmpbuf + 0x5C + 12);
+ ri->ri_rate = (*(unsigned int *) (tmpbuf + 0x5C + 24)) * 500000;
+ got_channel = 1;
+ got_signal = 1;
+ got_noise = 1;
+ n = *(int *) (tmpbuf + 4);
+ }
+
+ if (n < 8 || n >= caplen)
+ return (0);
+ }
+ break;
- case ARPHRD_IEEE80211_FULL:
+ case ARPHRD_IEEE80211_FULL:
+ {
+ struct ieee80211_radiotap_iterator iterator;
+ struct ieee80211_radiotap_header *rthdr;
+
+ rthdr = (struct ieee80211_radiotap_header *) tmpbuf;
+
+ if (ieee80211_radiotap_iterator_init (&iterator, rthdr, caplen) < 0)
+ return (0);
+
+ /* go through the radiotap arguments we have been given
+ * by the driver
+ */
+
+ while (ieee80211_radiotap_iterator_next (&iterator) >= 0)
+ {
+
+ switch (iterator.this_arg_index)
{
- struct ieee80211_radiotap_iterator iterator;
- struct ieee80211_radiotap_header *rthdr;
-
- rthdr = (struct ieee80211_radiotap_header *) tmpbuf;
-
- if (ieee80211_radiotap_iterator_init (&iterator, rthdr, caplen) < 0)
- return (0);
-
- /* go through the radiotap arguments we have been given
- * by the driver
- */
-
- while (ieee80211_radiotap_iterator_next (&iterator) >= 0)
- {
-
- switch (iterator.this_arg_index)
- {
-
- case IEEE80211_RADIOTAP_TSFT:
- ri->ri_mactime = le64toh (*((uint64_t *) iterator.this_arg));
- break;
-
- case IEEE80211_RADIOTAP_DBM_ANTSIGNAL:
- if (!got_signal)
- {
- if (*iterator.this_arg < 127)
- ri->ri_power = *iterator.this_arg;
- else
- ri->ri_power = *iterator.this_arg - 255;
-
- got_signal = 1;
- }
- break;
-
- case IEEE80211_RADIOTAP_DB_ANTSIGNAL:
- if (!got_signal)
- {
- if (*iterator.this_arg < 127)
- ri->ri_power = *iterator.this_arg;
- else
- ri->ri_power = *iterator.this_arg - 255;
-
- got_signal = 1;
- }
- break;
-
- case IEEE80211_RADIOTAP_DBM_ANTNOISE:
- if (!got_noise)
- {
- if (*iterator.this_arg < 127)
- ri->ri_noise = *iterator.this_arg;
- else
- ri->ri_noise = *iterator.this_arg - 255;
-
- got_noise = 1;
- }
- break;
-
- case IEEE80211_RADIOTAP_DB_ANTNOISE:
- if (!got_noise)
- {
- if (*iterator.this_arg < 127)
- ri->ri_noise = *iterator.this_arg;
- else
- ri->ri_noise = *iterator.this_arg - 255;
-
- got_noise = 1;
- }
- break;
-
- case IEEE80211_RADIOTAP_ANTENNA:
- ri->ri_antenna = *iterator.this_arg;
- break;
-
- case IEEE80211_RADIOTAP_CHANNEL:
- ri->ri_channel = *iterator.this_arg;
- got_channel = 1;
- break;
-
- case IEEE80211_RADIOTAP_RATE:
- ri->ri_rate = (*iterator.this_arg) * 500000;
- break;
-
- case IEEE80211_RADIOTAP_FLAGS:
- /* is the CRC visible at the end?
- * remove
- */
- if (*iterator.this_arg & IEEE80211_RADIOTAP_F_FCS)
- {
- fcs_removed = 1;
- caplen -= 4;
- }
-
- if (*iterator.this_arg & IEEE80211_RADIOTAP_F_RX_BADFCS)
- return (0);
-
- break;
- }
- }
- n = le16toh (rthdr->it_len);
- if (n <= 0 || n >= caplen)
- return 0;
+
+ case IEEE80211_RADIOTAP_TSFT:
+ ri->ri_mactime = le64toh (*((uint64_t *) iterator.this_arg));
+ break;
+
+ case IEEE80211_RADIOTAP_DBM_ANTSIGNAL:
+ if (!got_signal)
+ {
+ if (*iterator.this_arg < 127)
+ ri->ri_power = *iterator.this_arg;
+ else
+ ri->ri_power = *iterator.this_arg - 255;
+
+ got_signal = 1;
+ }
+ break;
+
+ case IEEE80211_RADIOTAP_DB_ANTSIGNAL:
+ if (!got_signal)
+ {
+ if (*iterator.this_arg < 127)
+ ri->ri_power = *iterator.this_arg;
+ else
+ ri->ri_power = *iterator.this_arg - 255;
+
+ got_signal = 1;
+ }
+ break;
+
+ case IEEE80211_RADIOTAP_DBM_ANTNOISE:
+ if (!got_noise)
+ {
+ if (*iterator.this_arg < 127)
+ ri->ri_noise = *iterator.this_arg;
+ else
+ ri->ri_noise = *iterator.this_arg - 255;
+
+ got_noise = 1;
+ }
+ break;
+
+ case IEEE80211_RADIOTAP_DB_ANTNOISE:
+ if (!got_noise)
+ {
+ if (*iterator.this_arg < 127)
+ ri->ri_noise = *iterator.this_arg;
+ else
+ ri->ri_noise = *iterator.this_arg - 255;
+
+ got_noise = 1;
+ }
+ break;
+
+ case IEEE80211_RADIOTAP_ANTENNA:
+ ri->ri_antenna = *iterator.this_arg;
+ break;
+
+ case IEEE80211_RADIOTAP_CHANNEL:
+ ri->ri_channel = *iterator.this_arg;
+ got_channel = 1;
+ break;
+
+ case IEEE80211_RADIOTAP_RATE:
+ ri->ri_rate = (*iterator.this_arg) * 500000;
+ break;
+
+ case IEEE80211_RADIOTAP_FLAGS:
+ /* is the CRC visible at the end?
+ * remove
+ */
+ if (*iterator.this_arg & IEEE80211_RADIOTAP_F_FCS)
+ {
+ fcs_removed = 1;
+ caplen -= 4;
+ }
+
+ if (*iterator.this_arg & IEEE80211_RADIOTAP_F_RX_BADFCS)
+ return (0);
+
+ break;
}
- break;
- case ARPHRD_IEEE80211:
- /* do nothing? */
- break;
- default:
- errno = ENOTSUP;
- return -1;
}
+ n = le16toh (rthdr->it_len);
+ if (n <= 0 || n >= caplen)
+ return 0;
+ }
+ break;
+ case ARPHRD_IEEE80211:
+ /* do nothing? */
+ break;
+ default:
+ errno = ENOTSUP;
+ return -1;
+ }
caplen -= n;
//detect fcs at the end, even if the flag wasn't set and remove it
- if ((0 == fcs_removed)
- && (1 == check_crc_buf_osdep (tmpbuf + n, caplen - 4)))
- {
- caplen -= 4;
- }
+ if ((0 == fcs_removed) && (1 == check_crc_buf_osdep (tmpbuf + n, caplen - 4)))
+ {
+ caplen -= 4;
+ }
memcpy (buf, tmpbuf + n, caplen);
if (!got_channel)
ri->ri_channel = linux_get_channel (dev);
memset (&ifr, 0, sizeof (ifr));
strncpy (ifr.ifr_name, dev->iface, IFNAMSIZ);
if (-1 == ioctl (dev->fd_raw, SIOCGIFINDEX, &ifr))
- {
- fprintf (stderr,
- "ioctl(SIOCGIFINDEX) on interface `%.*s' failed: %s\n",
- IFNAMSIZ, dev->iface, strerror (errno));
- return 1;
- }
+ {
+ fprintf (stderr, "ioctl(SIOCGIFINDEX) on interface `%.*s' failed: %s\n",
+ IFNAMSIZ, dev->iface, strerror (errno));
+ return 1;
+ }
/* lookup the hardware type */
memset (&sll, 0, sizeof (sll));
sll.sll_ifindex = ifr.ifr_ifindex;
sll.sll_protocol = htons (ETH_P_ALL);
if (-1 == ioctl (dev->fd_raw, SIOCGIFHWADDR, &ifr))
- {
- fprintf (stderr,
- "ioctl(SIOCGIFHWADDR) on interface `%.*s' failed: %s\n",
- IFNAMSIZ, dev->iface, strerror (errno));
- return 1;
- }
+ {
+ fprintf (stderr, "ioctl(SIOCGIFHWADDR) on interface `%.*s' failed: %s\n",
+ IFNAMSIZ, dev->iface, strerror (errno));
+ return 1;
+ }
/* lookup iw mode */
memset (&wrq, 0, sizeof (struct iwreq));
strncpy (wrq.ifr_name, dev->iface, IFNAMSIZ);
if (-1 == ioctl (dev->fd_raw, SIOCGIWMODE, &wrq))
- {
- /* most probably not supported (ie for rtap ipw interface) *
- * so just assume its correctly set... */
- wrq.u.mode = IW_MODE_MONITOR;
- }
+ {
+ /* most probably not supported (ie for rtap ipw interface) *
+ * so just assume its correctly set... */
+ wrq.u.mode = IW_MODE_MONITOR;
+ }
if (((ifr.ifr_hwaddr.sa_family != ARPHRD_IEEE80211) &&
(ifr.ifr_hwaddr.sa_family != ARPHRD_IEEE80211_PRISM) &&
(ifr.ifr_hwaddr.sa_family != ARPHRD_IEEE80211_FULL)) ||
(wrq.u.mode != IW_MODE_MONITOR))
- {
- fprintf (stderr,
- "Error: interface `%.*s' is not in monitor mode\n",
- IFNAMSIZ, dev->iface);
- return 1;
- }
+ {
+ fprintf (stderr, "Error: interface `%.*s' is not in monitor mode\n",
+ IFNAMSIZ, dev->iface);
+ return 1;
+ }
/* Is interface st to up, broadcast & running ? */
if ((ifr.ifr_flags | IFF_UP | IFF_BROADCAST | IFF_RUNNING) != ifr.ifr_flags)
+ {
+ /* Bring interface up */
+ ifr.ifr_flags |= IFF_UP | IFF_BROADCAST | IFF_RUNNING;
+
+ if (-1 == ioctl (dev->fd_raw, SIOCSIFFLAGS, &ifr))
{
- /* Bring interface up */
- ifr.ifr_flags |= IFF_UP | IFF_BROADCAST | IFF_RUNNING;
-
- if (-1 == ioctl (dev->fd_raw, SIOCSIFFLAGS, &ifr))
- {
- fprintf (stderr,
- "ioctl(SIOCSIFFLAGS) on interface `%.*s' failed: %s\n",
- IFNAMSIZ, dev->iface, strerror (errno));
- return 1;
- }
+ fprintf (stderr, "ioctl(SIOCSIFFLAGS) on interface `%.*s' failed: %s\n",
+ IFNAMSIZ, dev->iface, strerror (errno));
+ return 1;
}
+ }
/* bind the raw socket to the interface */
if (-1 == bind (dev->fd_raw, (struct sockaddr *) &sll, sizeof (sll)))
- {
- fprintf (stderr,
- "Failed to bind interface `%.*s': %s\n", IFNAMSIZ,
- dev->iface, strerror (errno));
- return 1;
- }
+ {
+ fprintf (stderr, "Failed to bind interface `%.*s': %s\n", IFNAMSIZ,
+ dev->iface, strerror (errno));
+ return 1;
+ }
/* lookup the hardware type */
if (-1 == ioctl (dev->fd_raw, SIOCGIFHWADDR, &ifr))
- {
- fprintf (stderr,
- "ioctl(SIOCGIFHWADDR) on interface `%.*s' failed: %s\n",
- IFNAMSIZ, dev->iface, strerror (errno));
- return 1;
- }
+ {
+ fprintf (stderr, "ioctl(SIOCGIFHWADDR) on interface `%.*s' failed: %s\n",
+ IFNAMSIZ, dev->iface, strerror (errno));
+ return 1;
+ }
memcpy (&dev->pl_mac, ifr.ifr_hwaddr.sa_data, MAC_ADDR_SIZE);
dev->arptype_in = ifr.ifr_hwaddr.sa_family;
if ((ifr.ifr_hwaddr.sa_family != ARPHRD_IEEE80211) &&
(ifr.ifr_hwaddr.sa_family != ARPHRD_IEEE80211_PRISM) &&
(ifr.ifr_hwaddr.sa_family != ARPHRD_IEEE80211_FULL))
- {
- fprintf (stderr,
- "Unsupported hardware link type %d on interface `%.*s'\n",
- ifr.ifr_hwaddr.sa_family, IFNAMSIZ, dev->iface);
- return 1;
- }
+ {
+ fprintf (stderr, "Unsupported hardware link type %d on interface `%.*s'\n",
+ ifr.ifr_hwaddr.sa_family, IFNAMSIZ, dev->iface);
+ return 1;
+ }
/* enable promiscuous mode */
memset (&mr, 0, sizeof (mr));
mr.mr_type = PACKET_MR_PROMISC;
if (0 !=
setsockopt (dev->fd_raw, SOL_PACKET, PACKET_ADD_MEMBERSHIP, &mr,
- sizeof (mr)))
- {
- fprintf (stderr,
- "Failed to enable promiscuous mode on interface `%.*s'\n",
- IFNAMSIZ, dev->iface);
- return 1;
- }
+ sizeof (mr)))
+ {
+ fprintf (stderr, "Failed to enable promiscuous mode on interface `%.*s'\n",
+ IFNAMSIZ, dev->iface);
+ return 1;
+ }
return 0;
}
dev->fd_raw = socket (PF_PACKET, SOCK_RAW, htons (ETH_P_ALL));
if (0 > dev->fd_raw)
- {
- fprintf (stderr, "Failed to create raw socket: %s\n", strerror (errno));
- return 1;
- }
+ {
+ fprintf (stderr, "Failed to create raw socket: %s\n", strerror (errno));
+ return 1;
+ }
if (dev->fd_raw >= FD_SETSIZE)
- {
- fprintf (stderr,
- "File descriptor too large for select (%d > %d)\n",
- dev->fd_raw, FD_SETSIZE);
- close (dev->fd_raw);
- return 1;
- }
+ {
+ fprintf (stderr, "File descriptor too large for select (%d > %d)\n",
+ dev->fd_raw, FD_SETSIZE);
+ close (dev->fd_raw);
+ return 1;
+ }
/* mac80211 stack detection */
ret =
- snprintf (strbuf,
- sizeof (strbuf), "/sys/class/net/%s/phy80211/subsystem", iface);
+ snprintf (strbuf, sizeof (strbuf), "/sys/class/net/%s/phy80211/subsystem",
+ iface);
if ((ret < 0) || (ret >= sizeof (strbuf)) || (0 != stat (strbuf, &sbuf)))
- {
- fprintf (stderr,
- "Did not find 802.11 interface `%s'. Exiting.\n", iface);
- close (dev->fd_raw);
- return 1;
- }
+ {
+ fprintf (stderr, "Did not find 802.11 interface `%s'. Exiting.\n", iface);
+ close (dev->fd_raw);
+ return 1;
+ }
strncpy (dev->iface, iface, IFNAMSIZ);
if (0 != openraw (dev))
- {
- close (dev->fd_raw);
- return 1;
- }
+ {
+ close (dev->fd_raw);
+ return 1;
+ }
return 0;
}
*/
static int
mac_test (const struct ieee80211_frame *uint8_taIeeeHeader,
- const struct Hardware_Infos *dev)
+ const struct Hardware_Infos *dev)
{
if (0 != memcmp (uint8_taIeeeHeader->i_addr3, &mac_bssid, MAC_ADDR_SIZE))
return 1;
*/
static void
mac_set (struct ieee80211_frame *uint8_taIeeeHeader,
- const struct Hardware_Infos *dev)
+ const struct Hardware_Infos *dev)
{
uint8_taIeeeHeader->i_fc[0] = 0x08;
uint8_taIeeeHeader->i_fc[1] = 0x00;
* @param hdr pointer to the start of the packet
*/
static void
-stdin_send_hw (void *cls, void *client,
- const struct GNUNET_MessageHeader *hdr)
+stdin_send_hw (void *cls, void *client, const struct GNUNET_MessageHeader *hdr)
{
struct Hardware_Infos *dev = cls;
struct sendbuf *write_pout = &dev->write_pout;
rtheader.rate = 0x00;
rtheader.pad1 = 0x00;
rtheader.txflags =
- htole16 (IEEE80211_RADIOTAP_F_TX_NOACK | IEEE80211_RADIOTAP_F_TX_NOSEQ);
+ htole16 (IEEE80211_RADIOTAP_F_TX_NOACK | IEEE80211_RADIOTAP_F_TX_NOSEQ);
/* { 0x00, 0x00, <-- radiotap version
* 0x0c, 0x00, <- radiotap header length
sendsize = ntohs (hdr->size);
if (sendsize <
sizeof (struct Radiotap_Send) + sizeof (struct GNUNET_MessageHeader))
- {
- fprintf (stderr,
- "Function stdin_send_hw: malformed packet (too small)\n");
- exit (1);
- }
+ {
+ fprintf (stderr, "Function stdin_send_hw: malformed packet (too small)\n");
+ exit (1);
+ }
sendsize -=
- sizeof (struct Radiotap_Send) + sizeof (struct GNUNET_MessageHeader);
+ sizeof (struct Radiotap_Send) + sizeof (struct GNUNET_MessageHeader);
if (MAXLINE < sendsize)
- {
- fprintf (stderr, "Function stdin_send_hw: Packet too big for buffer\n");
- exit (1);
- }
+ {
+ fprintf (stderr, "Function stdin_send_hw: Packet too big for buffer\n");
+ exit (1);
+ }
if (GNUNET_MESSAGE_TYPE_WLAN_HELPER_DATA != ntohs (hdr->type))
- {
- fprintf (stderr, "Function stdin_send: wrong packet type\n");
- exit (1);
- }
+ {
+ fprintf (stderr, "Function stdin_send: wrong packet type\n");
+ exit (1);
+ }
rtheader.header.it_len = htole16 (sizeof (rtheader));
rtheader.rate = header->rate;
memcpy (write_pout->buf + sizeof (rtheader), &header[1], sendsize);
/* payload contains MAC address, but we don't trust it, so we'll
* overwrite it with OUR MAC address again to prevent mischief */
- wlanheader =
- (struct ieee80211_frame *) (write_pout->buf + sizeof (rtheader));
+ wlanheader = (struct ieee80211_frame *) (write_pout->buf + sizeof (rtheader));
mac_set (wlanheader, dev);
write_pout->size = sendsize + sizeof (rtheader);
}
struct GNUNET_SERVER_MessageStreamTokenizer *stdin_mst;
if (2 != argc)
- {
- fprintf (stderr,
- "You must specify the name of the interface as the first and only argument to this program.\n");
- return 1;
- }
+ {
+ fprintf (stderr,
+ "You must specify the name of the interface as the first and only argument to this program.\n");
+ return 1;
+ }
if (0 != wlaninit (&dev, argv[1]))
return 1;
uid = getuid ();
if (0 != setresuid (uid, uid, uid))
- {
- fprintf (stderr, "Failed to setresuid: %s\n", strerror (errno));
- /* not critical, continue anyway */
- }
+ {
+ fprintf (stderr, "Failed to setresuid: %s\n", strerror (errno));
+ /* not critical, continue anyway */
+ }
dev.write_pout.size = 0;
dev.write_pout.pos = 0;
stdin_open = 1;
while (1)
+ {
+ maxfd = -1;
+ FD_ZERO (&rfds);
+ if ((0 == dev.write_pout.size) && (1 == stdin_open))
+ {
+ FD_SET (STDIN_FILENO, &rfds);
+ maxfd = MAX (maxfd, STDIN_FILENO);
+ }
+ if (0 == write_std.size)
+ {
+ FD_SET (dev.fd_raw, &rfds);
+ maxfd = MAX (maxfd, dev.fd_raw);
+ }
+ FD_ZERO (&wfds);
+ if (0 < write_std.size)
+ {
+ FD_SET (STDOUT_FILENO, &wfds);
+ maxfd = MAX (maxfd, STDOUT_FILENO);
+ }
+ if (0 < dev.write_pout.size)
+ {
+ FD_SET (dev.fd_raw, &wfds);
+ maxfd = MAX (maxfd, dev.fd_raw);
+ }
+ retval = select (maxfd + 1, &rfds, &wfds, NULL, NULL);
+ if ((-1 == retval) && (EINTR == errno))
+ continue;
+ if (0 > retval)
+ {
+ fprintf (stderr, "select failed: %s\n", strerror (errno));
+ break;
+ }
+ if (FD_ISSET (STDOUT_FILENO, &wfds))
+ {
+ ret =
+ write (STDOUT_FILENO, write_std.buf + write_std.pos,
+ write_std.size - write_std.pos);
+ if (0 > ret)
+ {
+ fprintf (stderr, "Failed to write to STDOUT: %s\n", strerror (errno));
+ break;
+ }
+ write_std.pos += ret;
+ if (write_std.pos == write_std.size)
+ {
+ write_std.pos = 0;
+ write_std.size = 0;
+ }
+ }
+ if (FD_ISSET (dev.fd_raw, &wfds))
+ {
+ ret = write (dev.fd_raw, dev.write_pout.buf, dev.write_pout.size);
+ if (0 > ret)
+ {
+ fprintf (stderr, "Failed to write to WLAN device: %s\n",
+ strerror (errno));
+ break;
+ }
+ dev.write_pout.pos += ret;
+ if ((dev.write_pout.pos != dev.write_pout.size) && (ret != 0))
+ {
+ /* we should not get partial sends with packet-oriented devices... */
+ fprintf (stderr, "Write error, partial send: %u/%u\n",
+ dev.write_pout.pos, dev.write_pout.size);
+ break;
+ }
+ if (dev.write_pout.pos == dev.write_pout.size)
+ {
+ dev.write_pout.pos = 0;
+ dev.write_pout.size = 0;
+ }
+ }
+
+ if (FD_ISSET (STDIN_FILENO, &rfds))
{
- maxfd = -1;
- FD_ZERO (&rfds);
- if ((0 == dev.write_pout.size) && (1 == stdin_open))
- {
- FD_SET (STDIN_FILENO, &rfds);
- maxfd = MAX (maxfd, STDIN_FILENO);
- }
- if (0 == write_std.size)
- {
- FD_SET (dev.fd_raw, &rfds);
- maxfd = MAX (maxfd, dev.fd_raw);
- }
- FD_ZERO (&wfds);
- if (0 < write_std.size)
- {
- FD_SET (STDOUT_FILENO, &wfds);
- maxfd = MAX (maxfd, STDOUT_FILENO);
- }
- if (0 < dev.write_pout.size)
- {
- FD_SET (dev.fd_raw, &wfds);
- maxfd = MAX (maxfd, dev.fd_raw);
- }
- retval = select (maxfd + 1, &rfds, &wfds, NULL, NULL);
- if ((-1 == retval) && (EINTR == errno))
- continue;
- if (0 > retval)
- {
- fprintf (stderr, "select failed: %s\n", strerror (errno));
- break;
- }
- if (FD_ISSET (STDOUT_FILENO, &wfds))
- {
- ret =
- write (STDOUT_FILENO,
- write_std.buf + write_std.pos,
- write_std.size - write_std.pos);
- if (0 > ret)
- {
- fprintf (stderr,
- "Failed to write to STDOUT: %s\n", strerror (errno));
- break;
- }
- write_std.pos += ret;
- if (write_std.pos == write_std.size)
- {
- write_std.pos = 0;
- write_std.size = 0;
- }
- }
- if (FD_ISSET (dev.fd_raw, &wfds))
- {
- ret = write (dev.fd_raw, dev.write_pout.buf, dev.write_pout.size);
- if (0 > ret)
- {
- fprintf (stderr,
- "Failed to write to WLAN device: %s\n",
- strerror (errno));
- break;
- }
- dev.write_pout.pos += ret;
- if ((dev.write_pout.pos != dev.write_pout.size) && (ret != 0))
- {
- /* we should not get partial sends with packet-oriented devices... */
- fprintf (stderr,
- "Write error, partial send: %u/%u\n",
- dev.write_pout.pos, dev.write_pout.size);
- break;
- }
- if (dev.write_pout.pos == dev.write_pout.size)
- {
- dev.write_pout.pos = 0;
- dev.write_pout.size = 0;
- }
- }
-
- if (FD_ISSET (STDIN_FILENO, &rfds))
- {
- ret = read (STDIN_FILENO, readbuf, sizeof (readbuf));
- if (0 > ret)
- {
- fprintf (stderr,
- "Read error from STDIN: %s\n", strerror (errno));
- break;
- }
- if (0 == ret)
- {
- /* stop reading... */
- stdin_open = 0;
- }
- GNUNET_SERVER_mst_receive (stdin_mst, NULL, readbuf, ret, GNUNET_NO,
- GNUNET_NO);
- }
-
- if (FD_ISSET (dev.fd_raw, &rfds))
- {
- struct GNUNET_MessageHeader *header;
- struct Radiotap_rx *rxinfo;
- struct ieee80211_frame *datastart;
-
- header = (struct GNUNET_MessageHeader *) write_std.buf;
- rxinfo = (struct Radiotap_rx *) &header[1];
- datastart = (struct ieee80211_frame *) &rxinfo[1];
- ret =
- linux_read (&dev, (unsigned char *) datastart,
- sizeof (write_std.buf) - sizeof (struct Radiotap_rx) -
- sizeof (struct GNUNET_MessageHeader), rxinfo);
- if (0 > ret)
- {
- fprintf (stderr,
- "Read error from raw socket: %s\n", strerror (errno));
- break;
- }
- if ((0 < ret) && (0 == mac_test (datastart, &dev)))
- {
- write_std.size =
- ret + sizeof (struct GNUNET_MessageHeader) +
- sizeof (struct Radiotap_rx);
- header->size = htons (write_std.size);
- header->type = htons (GNUNET_MESSAGE_TYPE_WLAN_HELPER_DATA);
- }
- }
+ ret = read (STDIN_FILENO, readbuf, sizeof (readbuf));
+ if (0 > ret)
+ {
+ fprintf (stderr, "Read error from STDIN: %s\n", strerror (errno));
+ break;
+ }
+ if (0 == ret)
+ {
+ /* stop reading... */
+ stdin_open = 0;
+ }
+ GNUNET_SERVER_mst_receive (stdin_mst, NULL, readbuf, ret, GNUNET_NO,
+ GNUNET_NO);
+ }
+ if (FD_ISSET (dev.fd_raw, &rfds))
+ {
+ struct GNUNET_MessageHeader *header;
+ struct Radiotap_rx *rxinfo;
+ struct ieee80211_frame *datastart;
+
+ header = (struct GNUNET_MessageHeader *) write_std.buf;
+ rxinfo = (struct Radiotap_rx *) &header[1];
+ datastart = (struct ieee80211_frame *) &rxinfo[1];
+ ret =
+ linux_read (&dev, (unsigned char *) datastart,
+ sizeof (write_std.buf) - sizeof (struct Radiotap_rx) -
+ sizeof (struct GNUNET_MessageHeader), rxinfo);
+ if (0 > ret)
+ {
+ fprintf (stderr, "Read error from raw socket: %s\n", strerror (errno));
+ break;
+ }
+ if ((0 < ret) && (0 == mac_test (datastart, &dev)))
+ {
+ write_std.size =
+ ret + sizeof (struct GNUNET_MessageHeader) +
+ sizeof (struct Radiotap_rx);
+ header->size = htons (write_std.size);
+ header->type = htons (GNUNET_MESSAGE_TYPE_WLAN_HELPER_DATA);
+ }
}
+
+ }
/* Error handling, try to clean up a bit at least */
GNUNET_SERVER_mst_destroy (stdin_mst);
close (dev.fd_raw);
- return 1; /* we never exit 'normally' */
+ return 1; /* we never exit 'normally' */
}
/* end of gnunet-transport-wlan-helper.c */
traffic_received += ntohs (message->size);
}
-void process_string (void *cls,
- const char *address)
+void
+process_string (void *cls, const char *address)
{
- struct GNUNET_PeerIdentity * peer = cls;
+ struct GNUNET_PeerIdentity *peer = cls;
if ((address != NULL))
{
- fprintf (stdout, _("Peer `%s': %s\n"), GNUNET_i2s(peer), address);
+ fprintf (stdout, _("Peer `%s': %s\n"), GNUNET_i2s (peer), address);
}
else
{
* @param addrlen number of bytes in addr
*/
static void
-process_address (void *cls,
- const struct GNUNET_PeerIdentity *peer,
- const struct GNUNET_HELLO_Address *address)
+process_address (void *cls, const struct GNUNET_PeerIdentity *peer,
+ const struct GNUNET_HELLO_Address *address)
{
- const struct GNUNET_CONFIGURATION_Handle * cfg = cls;
+ const struct GNUNET_CONFIGURATION_Handle *cfg = cls;
struct GNUNET_PeerIdentity *peercp;
- if ( (address == NULL) || (peer == NULL) )
+ if ((address == NULL) || (peer == NULL))
{
/* done */
return;
}
- peercp = GNUNET_malloc(sizeof (struct GNUNET_PeerIdentity));
+ peercp = GNUNET_malloc (sizeof (struct GNUNET_PeerIdentity));
*peercp = *peer;
/* Resolve address to string */
- GNUNET_TRANSPORT_address_to_string (cfg,
- address,
- numeric,
- GNUNET_TIME_UNIT_MINUTES,
- &process_string,
- peercp);
+ GNUNET_TRANSPORT_address_to_string (cfg, address, numeric,
+ GNUNET_TIME_UNIT_MINUTES, &process_string,
+ peercp);
}
if (iterate_connections)
{
GNUNET_TRANSPORT_peer_get_active_addresses (cfg, NULL, GNUNET_YES,
- GNUNET_TIME_UNIT_MINUTES,
- &process_address, (void *)cfg);
+ GNUNET_TIME_UNIT_MINUTES,
+ &process_address, (void *) cfg);
}
}
{'t', "test", NULL,
gettext_noop ("test transport configuration (involves external server)"),
0, &GNUNET_GETOPT_set_one, &test_configuration},
- {'n', "numeric", NULL,
- gettext_noop ("do not resolve hostnames"),
- 0, &GNUNET_GETOPT_set_one, &numeric},
+ {'n', "numeric", NULL,
+ gettext_noop ("do not resolve hostnames"),
+ 0, &GNUNET_GETOPT_set_one, &numeric},
GNUNET_GETOPT_OPTION_VERBOSE (&verbosity),
GNUNET_GETOPT_OPTION_END
};
struct Plugin *plugin = cls;
struct HTTP_Message *msg;
struct Session *s;
+
GNUNET_assert (plugin != NULL);
int res = GNUNET_SYSERR;
GNUNET_i2s (target));
#endif
int res = GNUNET_OK;
+
if (addrlen == sizeof (struct IPv4HttpAddress))
{
- struct IPv4HttpAddress * a4 = (struct IPv4HttpAddress *) addr;
- if ((ntohs(a4->u4_port) == 0) || (plugin->ipv4 == GNUNET_NO))
- res = GNUNET_SYSERR;
+ struct IPv4HttpAddress *a4 = (struct IPv4HttpAddress *) addr;
+
+ if ((ntohs (a4->u4_port) == 0) || (plugin->ipv4 == GNUNET_NO))
+ res = GNUNET_SYSERR;
}
if (addrlen == sizeof (struct IPv6HttpAddress))
{
- struct IPv6HttpAddress * a6 = (struct IPv6HttpAddress *) addr;
- if ((ntohs(a6->u6_port) == 0) || (plugin->ipv6 == GNUNET_NO))
- res = GNUNET_SYSERR;
+ struct IPv6HttpAddress *a6 = (struct IPv6HttpAddress *) addr;
+
+ if ((ntohs (a6->u6_port) == 0) || (plugin->ipv6 == GNUNET_NO))
+ res = GNUNET_SYSERR;
}
if (res == GNUNET_OK)
{
{
#if DEBUG_HTTP
GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
- "Using outbound client session %p to send to `%s'\n",
- s,
+ "Using outbound client session %p to send to `%s'\n", s,
GNUNET_i2s (target));
#endif
{
#if DEBUG_HTTP
GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
- "Using inbound server %p session to send to `%s'\n",
- s,
+ "Using inbound server %p session to send to `%s'\n", s,
GNUNET_i2s (target));
#endif
GNUNET_assert (GNUNET_OK == server_disconnect (s));
GNUNET_CONTAINER_DLL_remove (plugin->head, plugin->tail, s);
- struct HTTP_Message * msg = s->msg_head;
- struct HTTP_Message * tmp = s->msg_head;
+ struct HTTP_Message *msg = s->msg_head;
+ struct HTTP_Message *tmp = s->msg_head;
+
while (msg != NULL)
{
tmp = msg->next;
- GNUNET_CONTAINER_DLL_remove(s->msg_head,s->msg_tail, msg);
+ GNUNET_CONTAINER_DLL_remove (s->msg_head, s->msg_tail, msg);
if (msg->transmit_cont != NULL)
{
- msg->transmit_cont(msg->transmit_cont_cls, target, GNUNET_SYSERR);
+ msg->transmit_cont (msg->transmit_cont_cls, target, GNUNET_SYSERR);
}
GNUNET_free (msg);
msg = tmp;
while (s != NULL)
{
struct Session *t = s->next;
+
GNUNET_CONTAINER_DLL_remove (plugin->head, plugin->tail, s);
- struct HTTP_Message * msg = s->msg_head;
- struct HTTP_Message * tmp = s->msg_head;
+ struct HTTP_Message *msg = s->msg_head;
+ struct HTTP_Message *tmp = s->msg_head;
+
while (msg != NULL)
{
tmp = msg->next;
- GNUNET_CONTAINER_DLL_remove(s->msg_head,s->msg_tail, msg);
+ GNUNET_CONTAINER_DLL_remove (s->msg_head, s->msg_tail, msg);
if (msg->transmit_cont != NULL)
{
- msg->transmit_cont(msg->transmit_cont_cls, &s->target, GNUNET_SYSERR);
+ msg->transmit_cont (msg->transmit_cont_cls, &s->target, GNUNET_SYSERR);
}
GNUNET_free (msg);
msg = tmp;
server_send_callback (void *cls, uint64_t pos, char *buf, size_t max)
{
struct Session *s = cls;
+
#if VERBOSE_SERVER
GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, s->plugin->name,
"Server: %X can sent maximum %u \n", s, max);
#if VERBOSE_SERVER
struct Plugin *plugin = s->plugin;
+
GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, plugin->name,
"Server: %X: sent %u bytes\n", s, bytes_read);
#endif
#endif
MHD_set_connection_option (mhd_connection, MHD_CONNECTION_OPTION_TIMEOUT, to);
- struct MHD_Daemon * d = NULL;
+ struct MHD_Daemon *d = NULL;
+
if (s->addrlen == sizeof (struct IPv6HttpAddress))
d = plugin->server_v6;
if (s->addrlen == sizeof (struct IPv4HttpAddress))
if ((sc->session->server_recv == NULL) || (sc->session->server_send == NULL))
{
#if VERBOSE_SERVER
- GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
- "Server: Delayed read from `%s' `%s' since not both semi-connections are connected\n",
- GNUNET_i2s (&s->target),
- http_plugin_address_to_string (NULL, s->addr, s->addrlen));
+ GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
+ "Server: Delayed read from `%s' `%s' since not both semi-connections are connected\n",
+ GNUNET_i2s (&s->target),
+ http_plugin_address_to_string (NULL, s->addr, s->addrlen));
#endif
return MHD_YES;
}
GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
"Server: Peer `%s' PUT on address `%s' connected\n",
GNUNET_i2s (&s->target),
- http_plugin_address_to_string (NULL, s->addr, s->addrlen));
+ http_plugin_address_to_string (NULL, s->addr,
+ s->addrlen));
#endif
return MHD_YES;
}
GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
"Server: peer `%s' PUT on address `%s' received %u bytes\n",
GNUNET_i2s (&s->target),
- http_plugin_address_to_string (NULL,s->addr, s->addrlen),
+ http_plugin_address_to_string (NULL, s->addr,
+ s->addrlen),
*upload_data_size);
#endif
struct GNUNET_TIME_Absolute now = GNUNET_TIME_absolute_get ();
to);
}
struct MHD_Daemon *d = NULL;
+
if (s->addrlen == sizeof (struct IPv6HttpAddress))
d = plugin->server_v6;
if (s->addrlen == sizeof (struct IPv4HttpAddress))
plugin->cur_connections--;
struct MHD_Daemon *d = NULL;
+
if (s->addrlen == sizeof (struct IPv6HttpAddress))
d = plugin->server_v6;
if (s->addrlen == sizeof (struct IPv4HttpAddress))
if (s->addrlen == sizeof (struct IPv4HttpAddress))
{
- server_reschedule (s->plugin, s->plugin->server_v4 , GNUNET_YES);
+ server_reschedule (s->plugin, s->plugin->server_v4, GNUNET_YES);
}
else if (s->addrlen == sizeof (struct IPv6HttpAddress))
{
- server_reschedule (s->plugin, s->plugin->server_v6 , GNUNET_YES);
+ server_reschedule (s->plugin, s->plugin->server_v6, GNUNET_YES);
}
else
return GNUNET_SYSERR;
return;
#if VERBOSE_SERVER
GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, plugin->name,
- "Running IPv4 server\n");
+ "Running IPv4 server\n");
#endif
GNUNET_assert (MHD_YES == MHD_run (plugin->server_v4));
if (plugin->server_v4 != NULL)
return;
#if VERBOSE_SERVER
GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, plugin->name,
- "Running IPv6 server\n");
+ "Running IPv6 server\n");
#endif
GNUNET_assert (MHD_YES == MHD_run (plugin->server_v6));
if (plugin->server_v6 != NULL)
plugin->server_v4_task = GNUNET_SCHEDULER_NO_TASK;
}
#if VERBOSE_SERVER
- GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, plugin->name,
- "Scheduling IPv4 server task in %llu ms\n", tv);
+ GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, plugin->name,
+ "Scheduling IPv4 server task in %llu ms\n", tv);
#endif
ret =
GNUNET_SCHEDULER_add_select (GNUNET_SCHEDULER_PRIORITY_DEFAULT,
plugin->server_v6_task = GNUNET_SCHEDULER_NO_TASK;
}
#if VERBOSE_SERVER
- GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, plugin->name,
- "Scheduling IPv6 server task in %llu ms\n", tv);
+ GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, plugin->name,
+ "Scheduling IPv6 server task in %llu ms\n", tv);
#endif
ret =
GNUNET_SCHEDULER_add_select (GNUNET_SCHEDULER_PRIORITY_DEFAULT,
struct Session *t = NULL;
#if VERBOSE_SERVER
- GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, plugin->name,
- "server_stop\n");
+ GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, plugin->name, "server_stop\n");
#endif
struct MHD_Daemon *server_v4_tmp = plugin->server_v4;
"Deleting semi-sessions %p\n", s);
#endif
t = s->next;
- struct HTTP_Message * msg = s->msg_head;
- struct HTTP_Message * tmp = s->msg_head;
+ struct HTTP_Message *msg = s->msg_head;
+ struct HTTP_Message *tmp = s->msg_head;
+
while (msg != NULL)
{
tmp = msg->next;
- GNUNET_CONTAINER_DLL_remove(s->msg_head,s->msg_tail, msg);
+ GNUNET_CONTAINER_DLL_remove (s->msg_head, s->msg_tail, msg);
if (msg->transmit_cont != NULL)
{
- msg->transmit_cont(msg->transmit_cont_cls, &s->target, GNUNET_SYSERR);
+ msg->transmit_cont (msg->transmit_cont_cls, &s->target, GNUNET_SYSERR);
}
GNUNET_free (msg);
msg = tmp;
struct BroadcastAddress *next;
struct BroadcastAddress *prev;
- void * addr;
+ void *addr;
socklen_t addrlen;
};
struct Session *peer_session = value;
GNUNET_assert (GNUNET_YES ==
- GNUNET_CONTAINER_multihashmap_remove (peer_session->plugin->sessions,
- &peer_session->target.hashPubKey, peer_session));
+ GNUNET_CONTAINER_multihashmap_remove (peer_session->
+ plugin->sessions,
+ &peer_session->
+ target.hashPubKey,
+ peer_session));
if (peer_session->frag != NULL)
GNUNET_FRAGMENT_context_destroy (peer_session->frag);
if (GNUNET_SCHEDULER_NO_TASK != peer_session->delayed_cont_task)
GNUNET_SCHEDULER_cancel (s->invalidation_task);
if (GNUNET_SCHEDULER_NO_TASK != s->delayed_cont_task)
GNUNET_SCHEDULER_cancel (s->delayed_cont_task);
- GNUNET_CONTAINER_multihashmap_remove (s->plugin->inbound_sessions, &s->target.hashPubKey, s);
+ GNUNET_CONTAINER_multihashmap_remove (s->plugin->inbound_sessions,
+ &s->target.hashPubKey, s);
GNUNET_free (s);
return GNUNET_OK;
}
switch (ntohs (msg->type))
{
case GNUNET_MESSAGE_TYPE_TRANSPORT_BROADCAST_BEACON:
+ {
+ if (fromlen == sizeof (struct sockaddr_in))
{
- if (fromlen == sizeof (struct sockaddr_in))
- {
- LOG (GNUNET_ERROR_TYPE_DEBUG, "Received IPv4 HELLO beacon broadcast with %i bytes from address %s\n",
- ret, GNUNET_a2s((const struct sockaddr *) &addr, fromlen));
-
- struct Mstv4Context *mc;
- mc = GNUNET_malloc (sizeof (struct Mstv4Context));
- struct sockaddr_in *av4 = (struct sockaddr_in *) &addr;
-
- mc->addr.ipv4_addr = av4->sin_addr.s_addr;
- mc->addr.u4_port = av4->sin_port;
- if (GNUNET_OK !=
- GNUNET_SERVER_mst_receive (plugin->broadcast_ipv4_mst, mc, buf, ret, GNUNET_NO,
- GNUNET_NO))
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Received IPv4 HELLO beacon broadcast with %i bytes from address %s\n",
+ ret, GNUNET_a2s ((const struct sockaddr *) &addr, fromlen));
+
+ struct Mstv4Context *mc;
+
+ mc = GNUNET_malloc (sizeof (struct Mstv4Context));
+ struct sockaddr_in *av4 = (struct sockaddr_in *) &addr;
+
+ mc->addr.ipv4_addr = av4->sin_addr.s_addr;
+ mc->addr.u4_port = av4->sin_port;
+ if (GNUNET_OK !=
+ GNUNET_SERVER_mst_receive (plugin->broadcast_ipv4_mst, mc, buf, ret,
+ GNUNET_NO, GNUNET_NO))
GNUNET_free (mc);
- }
- else if (fromlen == sizeof (struct sockaddr_in6))
- {
- LOG (GNUNET_ERROR_TYPE_DEBUG, "Received IPv6 HELLO beacon broadcast with %i bytes from address %s\n",
- ret, GNUNET_a2s((const struct sockaddr *) &addr, fromlen));
+ }
+ else if (fromlen == sizeof (struct sockaddr_in6))
+ {
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Received IPv6 HELLO beacon broadcast with %i bytes from address %s\n",
+ ret, GNUNET_a2s ((const struct sockaddr *) &addr, fromlen));
- struct Mstv6Context *mc;
- mc = GNUNET_malloc (sizeof (struct Mstv6Context));
- struct sockaddr_in6 *av6 = (struct sockaddr_in6 *) &addr;
+ struct Mstv6Context *mc;
- mc->addr.ipv6_addr = av6->sin6_addr;
- mc->addr.u6_port = av6->sin6_port;
+ mc = GNUNET_malloc (sizeof (struct Mstv6Context));
+ struct sockaddr_in6 *av6 = (struct sockaddr_in6 *) &addr;
- if (GNUNET_OK !=
- GNUNET_SERVER_mst_receive (plugin->broadcast_ipv6_mst, mc, buf, ret, GNUNET_NO,
- GNUNET_NO))
- GNUNET_free (mc);
- }
- return;
+ mc->addr.ipv6_addr = av6->sin6_addr;
+ mc->addr.u6_port = av6->sin6_port;
+
+ if (GNUNET_OK !=
+ GNUNET_SERVER_mst_receive (plugin->broadcast_ipv6_mst, mc, buf, ret,
+ GNUNET_NO, GNUNET_NO))
+ GNUNET_free (mc);
}
+ return;
+ }
case GNUNET_MESSAGE_TYPE_TRANSPORT_UDP_MESSAGE:
if (ntohs (msg->size) < sizeof (struct UDPMessage))
{
void
broadcast_ipv4_mst_cb (void *cls, void *client,
- const struct GNUNET_MessageHeader *message)
+ const struct GNUNET_MessageHeader *message)
{
struct Plugin *plugin = cls;
struct Mstv4Context *mc = client;
(const char *) &mc->addr, sizeof (mc->addr));
GNUNET_STATISTICS_update (plugin->env->stats,
- _("# IPv4 broadcast HELLO beacons received via udp"), 1,
- GNUNET_NO);
+ _
+ ("# IPv4 broadcast HELLO beacons received via udp"),
+ 1, GNUNET_NO);
GNUNET_free (mc);
}
void
broadcast_ipv6_mst_cb (void *cls, void *client,
- const struct GNUNET_MessageHeader *message)
+ const struct GNUNET_MessageHeader *message)
{
struct Plugin *plugin = cls;
(const char *) &mc->addr, sizeof (mc->addr));
GNUNET_STATISTICS_update (plugin->env->stats,
- _("# IPv6 multicast HELLO beacons received via udp"), 1,
- GNUNET_NO);
+ _
+ ("# IPv6 multicast HELLO beacons received via udp"),
+ 1, GNUNET_NO);
GNUNET_free (mc);
}
static void
-udp_ipv4_broadcast_send (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
+udp_ipv4_broadcast_send (void *cls,
+ const struct GNUNET_SCHEDULER_TaskContext *tc)
{
struct Plugin *plugin = cls;
int sent;
const struct GNUNET_MessageHeader *hello;
struct UDP_Beacon_Message *msg;
- struct BroadcastAddress * baddr;
+ struct BroadcastAddress *baddr;
plugin->send_ipv4_broadcast_task = GNUNET_SCHEDULER_NO_TASK;
/* just IPv4 */
while ((baddr != NULL) && (baddr->addrlen == sizeof (struct sockaddr_in)))
{
- struct sockaddr_in * addr = (struct sockaddr_in * ) baddr->addr;
+ struct sockaddr_in *addr = (struct sockaddr_in *) baddr->addr;
+
addr->sin_port = htons (plugin->port);
- sent = GNUNET_NETWORK_socket_sendto (plugin->sockv4, msg, msg_size,
- (const struct sockaddr *) addr,
- baddr->addrlen);
+ sent =
+ GNUNET_NETWORK_socket_sendto (plugin->sockv4, msg, msg_size,
+ (const struct sockaddr *) addr,
+ baddr->addrlen);
if (sent == GNUNET_SYSERR)
- GNUNET_log_strerror(GNUNET_ERROR_TYPE_ERROR, "sendto");
+ GNUNET_log_strerror (GNUNET_ERROR_TYPE_ERROR, "sendto");
else
- LOG (GNUNET_ERROR_TYPE_DEBUG, "Sent HELLO beacon broadcast with %i bytes to address %s\n",
- sent, GNUNET_a2s(baddr->addr, baddr->addrlen));
- baddr = baddr->next;
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Sent HELLO beacon broadcast with %i bytes to address %s\n", sent,
+ GNUNET_a2s (baddr->addr, baddr->addrlen));
+ baddr = baddr->next;
}
plugin->send_ipv4_broadcast_task =
}
static void
-udp_ipv6_broadcast_send (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
+udp_ipv6_broadcast_send (void *cls,
+ const struct GNUNET_SCHEDULER_TaskContext *tc)
{
struct Plugin *plugin = cls;
int sent;
memcpy (&msg[1], hello, hello_size);
sent = 0;
- sent = GNUNET_NETWORK_socket_sendto (plugin->sockv6, msg, msg_size,
- (const struct sockaddr *) &plugin->ipv6_multicast_address,
- sizeof(struct sockaddr_in6));
+ sent =
+ GNUNET_NETWORK_socket_sendto (plugin->sockv6, msg, msg_size,
+ (const struct sockaddr *)
+ &plugin->ipv6_multicast_address,
+ sizeof (struct sockaddr_in6));
if (sent == GNUNET_SYSERR)
- GNUNET_log_strerror(GNUNET_ERROR_TYPE_ERROR, "sendto");
+ GNUNET_log_strerror (GNUNET_ERROR_TYPE_ERROR, "sendto");
else
- LOG (GNUNET_ERROR_TYPE_DEBUG, "Sending IPv6 HELLO beacon broadcast with %i bytes to address %s\n",
- sent, GNUNET_a2s((const struct sockaddr *) &plugin->ipv6_multicast_address, sizeof(struct sockaddr_in6)));
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Sending IPv6 HELLO beacon broadcast with %i bytes to address %s\n",
+ sent,
+ GNUNET_a2s ((const struct sockaddr *) &plugin->ipv6_multicast_address,
+ sizeof (struct sockaddr_in6)));
static int
-iface_proc (void *cls, const char *name,
- int isDefault,
- const struct sockaddr * addr,
- const struct sockaddr * broadcast_addr,
- const struct sockaddr * netmask,
- socklen_t addrlen)
+iface_proc (void *cls, const char *name, int isDefault,
+ const struct sockaddr *addr, const struct sockaddr *broadcast_addr,
+ const struct sockaddr *netmask, socklen_t addrlen)
{
struct Plugin *plugin = cls;
if (addr != NULL)
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "address %s for interface %s %p\n ",
- GNUNET_a2s(addr,addrlen), name, addr);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "broadcast address %s for interface %s %p\n ",
- GNUNET_a2s(broadcast_addr,addrlen), name, broadcast_addr);
+ GNUNET_a2s (addr, addrlen), name, addr);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "broadcast address %s for interface %s %p\n ",
+ GNUNET_a2s (broadcast_addr, addrlen), name, broadcast_addr);
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "netmask %s for interface %s %p\n ",
- GNUNET_a2s(netmask,addrlen), name, netmask);
+ GNUNET_a2s (netmask, addrlen), name, netmask);
- /* Collecting broadcast addresses*/
+ /* Collecting broadcast addresses */
if (broadcast_addr != NULL)
{
- struct BroadcastAddress * ba = GNUNET_malloc(sizeof (struct BroadcastAddress));
- ba->addr = GNUNET_malloc(addrlen);
- memcpy(ba->addr, broadcast_addr, addrlen);
+ struct BroadcastAddress *ba =
+ GNUNET_malloc (sizeof (struct BroadcastAddress));
+ ba->addr = GNUNET_malloc (addrlen);
+ memcpy (ba->addr, broadcast_addr, addrlen);
ba->addrlen = addrlen;
- GNUNET_CONTAINER_DLL_insert(plugin->ipv4_broadcast_head, plugin->ipv4_broadcast_tail, ba);
+ GNUNET_CONTAINER_DLL_insert (plugin->ipv4_broadcast_head,
+ plugin->ipv4_broadcast_tail, ba);
}
}
return GNUNET_OK;
{
/* create IPv4 broadcast socket */
plugin->broadcast_ipv4 = GNUNET_NO;
- if (plugin->sockv4 != NULL)
- {
- int yes = 1;
+ if (plugin->sockv4 != NULL)
+ {
+ int yes = 1;
- if (GNUNET_NETWORK_socket_setsockopt
- (plugin->sockv4, SOL_SOCKET, SO_BROADCAST, &yes, sizeof (int)) != GNUNET_OK)
- {
- LOG (GNUNET_ERROR_TYPE_WARNING,
- _
- ("Failed to set IPv4 broadcast option for broadcast socket on port %d\n"),
- ntohs (serverAddrv4.sin_port));
- }
- else
- {
- GNUNET_OS_network_interfaces_list(iface_proc, plugin);
- plugin->send_ipv4_broadcast_task =
+ if (GNUNET_NETWORK_socket_setsockopt
+ (plugin->sockv4, SOL_SOCKET, SO_BROADCAST, &yes,
+ sizeof (int)) != GNUNET_OK)
+ {
+ LOG (GNUNET_ERROR_TYPE_WARNING,
+ _
+ ("Failed to set IPv4 broadcast option for broadcast socket on port %d\n"),
+ ntohs (serverAddrv4.sin_port));
+ }
+ else
+ {
+ GNUNET_OS_network_interfaces_list (iface_proc, plugin);
+ plugin->send_ipv4_broadcast_task =
GNUNET_SCHEDULER_add_now (&udp_ipv4_broadcast_send, plugin);
- plugin->broadcast_ipv4_mst =
- GNUNET_SERVER_mst_create (broadcast_ipv4_mst_cb, plugin);
+ plugin->broadcast_ipv4_mst =
+ GNUNET_SERVER_mst_create (broadcast_ipv4_mst_cb, plugin);
- LOG (GNUNET_ERROR_TYPE_DEBUG, "IPv4 Broadcasting running\n");
- plugin->broadcast_ipv4 = GNUNET_YES;
- }
+ LOG (GNUNET_ERROR_TYPE_DEBUG, "IPv4 Broadcasting running\n");
+ plugin->broadcast_ipv4 = GNUNET_YES;
}
+ }
- plugin->broadcast_ipv6 = GNUNET_NO;
- if (plugin->sockv6 != NULL)
+ plugin->broadcast_ipv6 = GNUNET_NO;
+ if (plugin->sockv6 != NULL)
+ {
+ memset (&plugin->ipv6_multicast_address, 0, sizeof (struct sockaddr_in6));
+ GNUNET_assert (1 ==
+ inet_pton (AF_INET6, "FF05::13B",
+ &plugin->ipv6_multicast_address.sin6_addr));
+
+ plugin->ipv6_multicast_address.sin6_family = AF_INET6;
+ plugin->ipv6_multicast_address.sin6_port = htons (plugin->port);
+
+ plugin->broadcast_ipv6_mst =
+ GNUNET_SERVER_mst_create (broadcast_ipv6_mst_cb, plugin);
+
+ /* Create IPv6 multicast request */
+ struct ipv6_mreq multicastRequest;
+
+ multicastRequest.ipv6mr_multiaddr =
+ plugin->ipv6_multicast_address.sin6_addr;
+ /* TODO: 0 selects the "best" interface, tweak to use all interfaces
+ *
+ * http://tools.ietf.org/html/rfc2553#section-5.2:
+ *
+ * IPV6_JOIN_GROUP
+ *
+ * Join a multicast group on a specified local interface. If the
+ * interface index is specified as 0, the kernel chooses the local
+ * interface. For example, some kernels look up the multicast
+ * group in the normal IPv6 routing table and using the resulting
+ * interface.
+ * */
+ multicastRequest.ipv6mr_interface = 0;
+
+ /* Join the multicast group */
+ if (GNUNET_NETWORK_socket_setsockopt
+ (plugin->sockv6, IPPROTO_IPV6, IPV6_JOIN_GROUP,
+ (char *) &multicastRequest, sizeof (multicastRequest)) == GNUNET_OK)
{
- memset (&plugin->ipv6_multicast_address, 0, sizeof (struct sockaddr_in6));
- GNUNET_assert (1 == inet_pton(AF_INET6, "FF05::13B", &plugin->ipv6_multicast_address.sin6_addr));
-
- plugin->ipv6_multicast_address.sin6_family = AF_INET6;
- plugin->ipv6_multicast_address.sin6_port = htons(plugin->port);
-
- plugin->broadcast_ipv6_mst =
- GNUNET_SERVER_mst_create (broadcast_ipv6_mst_cb, plugin);
-
- /* Create IPv6 multicast request */
- struct ipv6_mreq multicastRequest;
- multicastRequest.ipv6mr_multiaddr = plugin->ipv6_multicast_address.sin6_addr;
- /* TODO: 0 selects the "best" interface, tweak to use all interfaces
- *
- * http://tools.ietf.org/html/rfc2553#section-5.2:
- *
- * IPV6_JOIN_GROUP
- *
- * Join a multicast group on a specified local interface. If the
- * interface index is specified as 0, the kernel chooses the local
- * interface. For example, some kernels look up the multicast
- * group in the normal IPv6 routing table and using the resulting
- * interface.
- * */
- multicastRequest.ipv6mr_interface = 0;
-
- /* Join the multicast group */
- if ( GNUNET_NETWORK_socket_setsockopt( plugin->sockv6, IPPROTO_IPV6, IPV6_JOIN_GROUP, (char*) &multicastRequest, sizeof(multicastRequest)) == GNUNET_OK )
- {
- LOG (GNUNET_ERROR_TYPE_DEBUG, "IPv6 broadcasting running\n");
+ LOG (GNUNET_ERROR_TYPE_DEBUG, "IPv6 broadcasting running\n");
- plugin->send_ipv6_broadcast_task =
+ plugin->send_ipv6_broadcast_task =
GNUNET_SCHEDULER_add_now (&udp_ipv6_broadcast_send, plugin);
- plugin->broadcast_ipv6 = GNUNET_YES;
- }
- else
- LOG (GNUNET_ERROR_TYPE_DEBUG, "IPv6 broadcasting not running\n");
+ plugin->broadcast_ipv6 = GNUNET_YES;
}
+ else
+ LOG (GNUNET_ERROR_TYPE_DEBUG, "IPv6 broadcasting not running\n");
+ }
}
if (sockets_created == 0)
while (plugin->ipv4_broadcast_head != NULL)
{
- struct BroadcastAddress * p= plugin->ipv4_broadcast_head;
- GNUNET_CONTAINER_DLL_remove(plugin->ipv4_broadcast_head, plugin->ipv4_broadcast_tail, p);
+ struct BroadcastAddress *p = plugin->ipv4_broadcast_head;
+
+ GNUNET_CONTAINER_DLL_remove (plugin->ipv4_broadcast_head,
+ plugin->ipv4_broadcast_tail, p);
GNUNET_free (p->addr);
GNUNET_free (p);
}
{
/* Create IPv6 multicast request */
struct ipv6_mreq multicastRequest;
- multicastRequest.ipv6mr_multiaddr = plugin->ipv6_multicast_address.sin6_addr;
+
+ multicastRequest.ipv6mr_multiaddr =
+ plugin->ipv6_multicast_address.sin6_addr;
multicastRequest.ipv6mr_interface = 0;
/* Join the multicast address */
- if ( GNUNET_NETWORK_socket_setsockopt( plugin->sockv6, IPPROTO_IPV6, IPV6_LEAVE_GROUP, (char*) &multicastRequest, sizeof(multicastRequest)) == 0 )
+ if (GNUNET_NETWORK_socket_setsockopt
+ (plugin->sockv6, IPPROTO_IPV6, IPV6_LEAVE_GROUP,
+ (char *) &multicastRequest, sizeof (multicastRequest)) == 0)
{
LOG (GNUNET_ERROR_TYPE_DEBUG, "IPv6 Broadcasting stopped\n");
}
else
- GNUNET_log_strerror(GNUNET_ERROR_TYPE_ERROR, setsockopt);
+ GNUNET_log_strerror (GNUNET_ERROR_TYPE_ERROR, setsockopt);
if (plugin->send_ipv6_broadcast_task != GNUNET_SCHEDULER_NO_TASK)
{
struct Sessionqueue *prev;
struct Session *content;
#if !HAVE_UNALIGNED_64_ACCESS
- void *dummy; /* for alignment, see #1909 */
+ void *dummy; /* for alignment, see #1909 */
#endif
};
struct GNUNET_TIME_Relative next_send;
//abort if helper is not running
- if (plugin->helper_is_running == GNUNET_NO){
- return;
+ if (plugin->helper_is_running == GNUNET_NO)
+ {
+ return;
}
//cancel old task
const char *filenameloopback = "gnunet-transport-wlan-helper-dummy";
char *absolute_filename = NULL;
- if (plugin->helper_is_running == GNUNET_YES){
+ if (plugin->helper_is_running == GNUNET_YES)
+ {
#if DEBUG_wlan
GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, PLUGIN_LOG_NAME,
"wlan_transport_start_wlan_helper not needed, helper already running!");
#endif
- return GNUNET_YES;
+ return GNUNET_YES;
}
plugin->server_stdout = GNUNET_DISK_pipe (GNUNET_YES, GNUNET_NO, GNUNET_YES);
"Stoping WLAN helper process\n");
#endif
- if (plugin->helper_is_running == GNUNET_NO){
+ if (plugin->helper_is_running == GNUNET_NO)
+ {
#if DEBUG_wlan
GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, PLUGIN_LOG_NAME,
"wlan_transport_stop_wlan_helper not needed, helper already stopped!");
#endif
- return GNUNET_YES;
+ return GNUNET_YES;
}
if (plugin->server_write_delay_task != GNUNET_SCHEDULER_NO_TASK)
temp_hdr = (const struct GNUNET_MessageHeader *) &wlanheader[1];
crc = ntohl (wlanheader->crc);
wlanheader->crc = 0;
- if (GNUNET_CRYPTO_crc32_n ((char *) wlanheader, ntohs (wlanheader->header.size)) != crc)
+ if (GNUNET_CRYPTO_crc32_n
+ ((char *) wlanheader, ntohs (wlanheader->header.size)) != crc)
{
//wrong crc, dispose message
GNUNET_log_from (GNUNET_ERROR_TYPE_INFO, PLUGIN_LOG_NAME,
"Wlan message header crc was wrong: %u != %u\n",
GNUNET_CRYPTO_crc32_n ((char *) wlanheader,
- ntohs (wlanheader->header.size)), crc);
+ ntohs (wlanheader->header.size)),
+ crc);
hexdump ((void *) hdr, ntohs (hdr->size));
return;
}
GNUNET_asprintf (&fname, "q_in_%llu_q_out_%llu_%s", quota_in, quota_out,
cfg_file);
GNUNET_CONFIGURATION_set_value_string (cfg, "PATHS", "DEFAULTCONFIG", fname);
- GNUNET_CONFIGURATION_set_value_number (cfg, "ats", "WAN_QUOTA_IN",
- quota_in);
+ GNUNET_CONFIGURATION_set_value_number (cfg, "ats", "WAN_QUOTA_IN", quota_in);
GNUNET_CONFIGURATION_set_value_number (cfg, "ats", "WAN_QUOTA_OUT",
quota_out);
GNUNET_assert (GNUNET_OK == GNUNET_CONFIGURATION_write (cfg, fname));
"Test tries to connect peer %u (`%s') <-> peer %u (`%s')\n",
p1->no, sender_c, p2->no, GNUNET_i2s (&p2->id));
- cc1 = GNUNET_TRANSPORT_TESTING_connect_peers (tth, p2, p1, &testing_connect_cb,
- NULL);
- cc2 = GNUNET_TRANSPORT_TESTING_connect_peers (tth, p1, p2, &testing_connect_cb,
- NULL);
+ cc1 =
+ GNUNET_TRANSPORT_TESTING_connect_peers (tth, p2, p1, &testing_connect_cb,
+ NULL);
+ cc2 =
+ GNUNET_TRANSPORT_TESTING_connect_peers (tth, p1, p2, &testing_connect_cb,
+ NULL);
}
static void
if (cc != NULL)
{
- GNUNET_TRANSPORT_TESTING_connect_peers_cancel(tth, cc);
+ GNUNET_TRANSPORT_TESTING_connect_peers_cancel (tth, cc);
cc = NULL;
}
reconnect (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
struct PeerContext *p = cls;
+
reconnect_task = GNUNET_SCHEDULER_NO_TASK;
GNUNET_TRANSPORT_try_connect (p->th, &p2->id);
- reconnect_task = GNUNET_SCHEDULER_add_delayed(GNUNET_TIME_UNIT_SECONDS, &reconnect, p);
+ reconnect_task =
+ GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS, &reconnect, p);
}
static void
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Restarted peer %u (`%4s'), issuing reconnect\n",
- p->no,
+ "Restarted peer %u (`%4s'), issuing reconnect\n", p->no,
GNUNET_i2s (&p->id));
- reconnect_task = GNUNET_SCHEDULER_add_now(&reconnect, p);
+ reconnect_task = GNUNET_SCHEDULER_add_now (&reconnect, p);
}
-static
-void restart (struct PeerContext *p , char * cfg_file)
+static void
+restart (struct PeerContext *p, char *cfg_file)
{
GNUNET_assert (p != NULL);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Restarting peer %u (`%4s')\n",
- p->no,
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Restarting peer %u (`%4s')\n", p->no,
GNUNET_i2s (&p->id));
GNUNET_TRANSPORT_TESTING_restart_peer (tth, p, cfg_file, &restart_cb, p);
return;
GNUNET_assert (t != NULL);
char *ps = GNUNET_strdup (GNUNET_i2s (&p->id));
+
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Peer %u (`%4s') received message of type %d and size %u size from peer %u (`%4s')!\n",
p->no, ps, ntohs (message->type), ntohs (message->size), t->no,
}
else
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Restarted peers connected, stopping test...\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Restarted peers connected, stopping test...\n");
ok = 0;
end ();
}
char *ps = GNUNET_strdup (GNUNET_i2s (&p->id));
+
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Peer %u (`%4s'): peer (`%s') disconnected from me!\n", p->no, ps,
GNUNET_i2s (peer));
return;
char *sender_c = GNUNET_strdup (GNUNET_i2s (&p1->id));
+
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Test tries to connect peer %u (`%s') -> peer %u (`%s')\n",
p1->no, sender_c, p2->no, GNUNET_i2s (&p2->id));
tth = GNUNET_TRANSPORT_TESTING_init ();
- GNUNET_asprintf(&cfg_file_p1,"test_transport_api_tcp_peer1.conf");
- GNUNET_asprintf(&cfg_file_p2,"test_transport_api_tcp_peer2.conf");
+ GNUNET_asprintf (&cfg_file_p1, "test_transport_api_tcp_peer1.conf");
+ GNUNET_asprintf (&cfg_file_p2, "test_transport_api_tcp_peer2.conf");
ret = check ();
reconnect (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
struct PeerContext *p = cls;
+
reconnect_task = GNUNET_SCHEDULER_NO_TASK;
GNUNET_TRANSPORT_try_connect (p1->th, &p2->id);
- reconnect_task = GNUNET_SCHEDULER_add_delayed(GNUNET_TIME_UNIT_SECONDS, &reconnect, p);
+ reconnect_task =
+ GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS, &reconnect, p);
}
static void
restart_cb (struct PeerContext *p, void *cls)
{
static int c;
+
c++;
if (c != 2)
return;
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Restarted peer %u (`%4s'), issuing reconnect\n",
- p->no,
+ "Restarted peer %u (`%4s'), issuing reconnect\n", p->no,
GNUNET_i2s (&p->id));
- reconnect_task = GNUNET_SCHEDULER_add_now(&reconnect, p);
+ reconnect_task = GNUNET_SCHEDULER_add_now (&reconnect, p);
}
-static
-void restart (struct PeerContext *p , char * cfg_file)
+static void
+restart (struct PeerContext *p, char *cfg_file)
{
GNUNET_assert (p != NULL);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Restarting peer %u (`%4s')\n",
- p->no,
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Restarting peer %u (`%4s')\n", p->no,
GNUNET_i2s (&p->id));
GNUNET_TRANSPORT_TESTING_restart_peer (tth, p, cfg_file, &restart_cb, p);
return;
GNUNET_assert (t != NULL);
char *ps = GNUNET_strdup (GNUNET_i2s (&p->id));
+
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Peer %u (`%4s') received message of type %d and size %u size from peer %u (`%4s')!\n",
p->no, ps, ntohs (message->type), ntohs (message->size), t->no,
}
else
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Restarted peers connected, stopping test...\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Restarted peers connected, stopping test...\n");
ok = 0;
end ();
}
char *ps = GNUNET_strdup (GNUNET_i2s (&p->id));
+
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Peer %u (`%4s'): peer (`%s') disconnected from me!\n", p->no, ps,
GNUNET_i2s (peer));
return;
char *sender_c = GNUNET_strdup (GNUNET_i2s (&p1->id));
+
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Test tries to connect peer %u (`%s') -> peer %u (`%s')\n",
p1->no, sender_c, p2->no, GNUNET_i2s (&p2->id));
tth = GNUNET_TRANSPORT_TESTING_init ();
- GNUNET_asprintf(&cfg_file_p1,"test_transport_api_tcp_peer1.conf");
- GNUNET_asprintf(&cfg_file_p2,"test_transport_api_tcp_peer2.conf");
+ GNUNET_asprintf (&cfg_file_p1, "test_transport_api_tcp_peer1.conf");
+ GNUNET_asprintf (&cfg_file_p2, "test_transport_api_tcp_peer2.conf");
ret = check ();
return ret;
}
+
/* end of test_transport_api_restart_2peers.c */
#ifndef LINUX
/* FreeBSD/OSX etc. Unix DGRAMs do not work
- with large messages */
- if (0 == strcmp ("unix",
- test_plugin))
- return sizeof (struct TestMessage) + (ret % 1024);
+ * with large messages */
+ if (0 == strcmp ("unix", test_plugin))
+ return sizeof (struct TestMessage) + (ret % 1024);
#endif
return sizeof (struct TestMessage) + (ret % 60000);
}
p->cfg = GNUNET_CONFIGURATION_create ();
GNUNET_assert (GNUNET_OK == GNUNET_CONFIGURATION_load (p->cfg, cfgname));
- if (GNUNET_CONFIGURATION_have_value (p->
- cfg, "PATHS", "SERVICEHOME"))
+ if (GNUNET_CONFIGURATION_have_value (p->cfg, "PATHS", "SERVICEHOME"))
GNUNET_assert (GNUNET_OK ==
GNUNET_CONFIGURATION_get_value_string (p->cfg, "PATHS",
"SERVICEHOME",
&p->servicehome));
- if (NULL != p->servicehome)
- GNUNET_DISK_directory_remove (p->servicehome);
+ if (NULL != p->servicehome)
+ GNUNET_DISK_directory_remove (p->servicehome);
- hostkey = get_host_key(tth);
+ hostkey = get_host_key (tth);
if (hostkey != NULL)
{
GNUNET_asprintf (&p->hostkeyfile, "%s/.hostkey", p->servicehome);
- GNUNET_assert(GNUNET_OK == GNUNET_DISK_directory_create_for_file (p->hostkeyfile));
+ GNUNET_assert (GNUNET_OK ==
+ GNUNET_DISK_directory_create_for_file (p->hostkeyfile));
fn = GNUNET_DISK_file_open (p->hostkeyfile,
GNUNET_DISK_OPEN_READWRITE |
GNUNET_DISK_OPEN_CREATE,
* @return GNUNET_OK in success otherwise GNUNET_SYSERR
*/
int
-GNUNET_TRANSPORT_TESTING_restart_peer (struct GNUNET_TRANSPORT_TESTING_handle *tth,
- struct PeerContext *p,
+GNUNET_TRANSPORT_TESTING_restart_peer (struct GNUNET_TRANSPORT_TESTING_handle
+ *tth, struct PeerContext *p,
const char *cfgname,
- GNUNET_TRANSPORT_TESTING_start_cb restart_cb,
- void *cb_cls)
+ GNUNET_TRANSPORT_TESTING_start_cb
+ restart_cb, void *cb_cls)
{
struct GNUNET_DISK_FileHandle *fn;
/* shutdown */
#if VERBOSE
- GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, "transport-testing",
- "Stopping peer %u (`%s')\n", p->no,
- GNUNET_i2s (&p->id));
+ GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, "transport-testing",
+ "Stopping peer %u (`%s')\n", p->no, GNUNET_i2s (&p->id));
#endif
if (p->ghh != NULL)
GNUNET_TRANSPORT_get_hello_cancel (p->ghh);
/* start */
#if VERBOSE
- GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, "transport-testing",
- "Restarting peer %u (`%s')\n", p->no,
- GNUNET_i2s (&p->id));
+ GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, "transport-testing",
+ "Restarting peer %u (`%s')\n", p->no, GNUNET_i2s (&p->id));
#endif
- sleep (5); // YUCK!
+ sleep (5); // YUCK!
if (GNUNET_DISK_file_test (cfgname) == GNUNET_NO)
{
GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, "transport-testing",
- "File not found: `%s' \n", cfgname);
+ "File not found: `%s' \n", cfgname);
goto fail;
}
p->cfg = GNUNET_CONFIGURATION_create ();
GNUNET_assert (GNUNET_OK == GNUNET_CONFIGURATION_load (p->cfg, cfgname));
- if (! GNUNET_CONFIGURATION_have_value (p->cfg, "PATHS", "SERVICEHOME"))
+ if (!GNUNET_CONFIGURATION_have_value (p->cfg, "PATHS", "SERVICEHOME"))
goto fail;
fn = GNUNET_DISK_file_open (p->hostkeyfile,
- GNUNET_DISK_OPEN_READWRITE |
- GNUNET_DISK_OPEN_CREATE,
- GNUNET_DISK_PERM_USER_READ |
- GNUNET_DISK_PERM_USER_WRITE);
+ GNUNET_DISK_OPEN_READWRITE |
+ GNUNET_DISK_OPEN_CREATE,
+ GNUNET_DISK_PERM_USER_READ |
+ GNUNET_DISK_PERM_USER_WRITE);
if (fn == NULL)
- goto fail;
+ goto fail;
if (GNUNET_OK != GNUNET_DISK_file_close (fn))
- goto fail;
+ goto fail;
- p->arm_proc = GNUNET_OS_start_process (NULL, NULL, "gnunet-service-arm",
- "gnunet-service-arm", "-c", cfgname,
- #if VERBOSE_PEERS
- "-L", "DEBUG",
- #else
- "-L", "ERROR",
- #endif
- NULL);
+ p->arm_proc =
+ GNUNET_OS_start_process (NULL, NULL, "gnunet-service-arm",
+ "gnunet-service-arm", "-c", cfgname,
+#if VERBOSE_PEERS
+ "-L", "DEBUG",
+#else
+ "-L", "ERROR",
+#endif
+ NULL);
p->th =
- GNUNET_TRANSPORT_connect (p->cfg, NULL, p, ¬ify_receive,
- ¬ify_connect, ¬ify_disconnect);
+ GNUNET_TRANSPORT_connect (p->cfg, NULL, p, ¬ify_receive,
+ ¬ify_connect, ¬ify_disconnect);
GNUNET_assert (p->th != NULL);
p->start_cb = restart_cb;
GNUNET_assert (p->ghh != NULL);
return GNUNET_OK;
- fail:
+fail:
GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, "transport-testing",
- "Restarting peer %u (`%s') failed, removing peer\n", p->no,
- GNUNET_i2s (&p->id));
- GNUNET_TRANSPORT_TESTING_stop_peer (tth,p);
+ "Restarting peer %u (`%s') failed, removing peer\n", p->no,
+ GNUNET_i2s (&p->id));
+ GNUNET_TRANSPORT_TESTING_stop_peer (tth, p);
return GNUNET_SYSERR;
}
/* prepare hostkeys */
tth = GNUNET_malloc (sizeof (struct GNUNET_TRANSPORT_TESTING_handle));
tth->hostkey_data = NULL;
- const char * hostkeys_file = "../../contrib/testing_hostkeys.dat";
+ const char *hostkeys_file = "../../contrib/testing_hostkeys.dat";
+
if (GNUNET_YES != GNUNET_DISK_file_test (hostkeys_file))
{
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- _("Could not read hostkeys file!\n"));
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR, _("Could not read hostkeys file!\n"));
}
else
{
GNUNET_DISK_PERM_NONE);
if (NULL == fd)
{
- GNUNET_log_strerror_file (GNUNET_ERROR_TYPE_ERROR, "open",
- hostkeys_file);
+ GNUNET_log_strerror_file (GNUNET_ERROR_TYPE_ERROR, "open", hostkeys_file);
GNUNET_free (tth);
return NULL;
}
if (0 != (fs % HOSTKEYFILESIZE))
{
GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, "transport-testing",
- "File size %llu seems incorrect for hostkeys...\n", fs);
+ "File size %llu seems incorrect for hostkeys...\n", fs);
}
else
{
tth->hostkey_data = GNUNET_malloc_large (fs);
GNUNET_assert (fs == GNUNET_DISK_file_read (fd, tth->hostkey_data, fs));
GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, "transport-testing",
- "Read %llu hostkeys from file\n", total_hostkeys);
+ "Read %llu hostkeys from file\n", total_hostkeys);
tth->hostkeys_total = total_hostkeys;
}
GNUNET_assert (GNUNET_OK == GNUNET_DISK_file_close (fd));
* @return GNUNET_OK in success otherwise GNUNET_SYSERR
*/
int
-GNUNET_TRANSPORT_TESTING_restart_peer (struct GNUNET_TRANSPORT_TESTING_handle *tth,
- struct PeerContext *p,
+GNUNET_TRANSPORT_TESTING_restart_peer (struct GNUNET_TRANSPORT_TESTING_handle
+ *tth, struct PeerContext *p,
const char *cfgname,
- GNUNET_TRANSPORT_TESTING_start_cb start_cb,
- void *cb_cls);
+ GNUNET_TRANSPORT_TESTING_start_cb
+ start_cb, void *cb_cls);
/**
* Connect the given peers and call the callback when both peers report the
* length of the plugin name
*/
uint32_t pluginlen GNUNET_PACKED;
-
+
};
return;
}
size = ntohs (msg->size);
- GNUNET_break (ntohs (msg->type) == GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_ITERATE_RESPONSE);
+ GNUNET_break (ntohs (msg->type) ==
+ GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_ITERATE_RESPONSE);
if (size == sizeof (struct GNUNET_MessageHeader))
{
/* done! */
return;
}
- if ( (size < sizeof (struct GNUNET_MessageHeader) + sizeof (struct AddressIterateResponseMessage)) ||
- (ntohs (msg->type) != GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_ITERATE_RESPONSE) )
+ if ((size <
+ sizeof (struct GNUNET_MessageHeader) +
+ sizeof (struct AddressIterateResponseMessage)) ||
+ (ntohs (msg->type) !=
+ GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_ITERATE_RESPONSE))
{
GNUNET_break (0);
pal_ctx->cb (pal_ctx->cb_cls, NULL, NULL);
}
air_msg = (struct AddressIterateResponseMessage *) msg;
- tlen = ntohl(air_msg->pluginlen);
- alen = ntohl(air_msg->addrlen);
+ tlen = ntohl (air_msg->pluginlen);
+ alen = ntohl (air_msg->addrlen);
if (size != sizeof (struct AddressIterateResponseMessage) + tlen + alen)
{
addr = (const char *) &air_msg[1];
transport_name = &addr[alen];
- if (transport_name[tlen-1] != '\0')
+ if (transport_name[tlen - 1] != '\0')
{
GNUNET_break_op (0);
pal_ctx->cb (pal_ctx->cb_cls, NULL, NULL);
}
/* expect more replies */
- GNUNET_CLIENT_receive (pal_ctx->client,
- &peer_address_response_processor, pal_ctx,
+ GNUNET_CLIENT_receive (pal_ctx->client, &peer_address_response_processor,
+ pal_ctx,
GNUNET_TIME_absolute_get_remaining (pal_ctx->timeout));
/* notify client */
- address = GNUNET_HELLO_address_allocate (&air_msg->peer,
- transport_name, addr, alen);
+ address =
+ GNUNET_HELLO_address_allocate (&air_msg->peer, transport_name, addr,
+ alen);
pal_ctx->cb (pal_ctx->cb_cls, &air_msg->peer, address);
GNUNET_HELLO_address_free (address);
}
* @param peer_address_callback_cls closure for peer_address_callback
*/
struct GNUNET_TRANSPORT_PeerIterateContext *
-GNUNET_TRANSPORT_peer_get_active_addresses (const struct GNUNET_CONFIGURATION_Handle *cfg,
- const struct GNUNET_PeerIdentity *peer,
- int one_shot,
+GNUNET_TRANSPORT_peer_get_active_addresses (const struct
+ GNUNET_CONFIGURATION_Handle *cfg,
+ const struct GNUNET_PeerIdentity
+ *peer, int one_shot,
struct GNUNET_TIME_Relative timeout,
- GNUNET_TRANSPORT_PeerIterateCallback peer_address_callback,
+ GNUNET_TRANSPORT_PeerIterateCallback
+ peer_address_callback,
void *peer_address_callback_cls)
{
struct GNUNET_TRANSPORT_PeerIterateContext *pal_ctx;
if (GNUNET_YES != one_shot)
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Address monitoring not implemented\n");
+ "Address monitoring not implemented\n");
return NULL;
}
client = GNUNET_CLIENT_connect ("transport", cfg);
msg.one_shot = htonl (one_shot);
msg.timeout = GNUNET_TIME_absolute_hton (abs_timeout);
if (peer == NULL)
- memset (&msg.peer, 0 , sizeof (struct GNUNET_PeerIdentity));
+ memset (&msg.peer, 0, sizeof (struct GNUNET_PeerIdentity));
else
msg.peer = *peer;
pal_ctx = GNUNET_malloc (sizeof (struct GNUNET_TRANSPORT_PeerIterateContext));
*/
void
GNUNET_TRANSPORT_peer_get_active_addresses_cancel (struct
- GNUNET_TRANSPORT_PeerIterateContext
- *alc)
+ GNUNET_TRANSPORT_PeerIterateContext
+ *alc)
{
GNUNET_CLIENT_disconnect (alc->client, GNUNET_NO);
GNUNET_free (alc);
return;
}
GNUNET_break (ntohs (msg->type) ==
- GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_TO_STRING_REPLY);
+ GNUNET_MESSAGE_TYPE_TRANSPORT_ADDRESS_TO_STRING_REPLY);
size = ntohs (msg->size);
if (size == sizeof (struct GNUNET_MessageHeader))
{
* @return handle to cancel the operation, NULL on error
*/
struct GNUNET_TRANSPORT_AddressToStringContext *
-GNUNET_TRANSPORT_address_to_string (const struct GNUNET_CONFIGURATION_Handle *cfg,
- const struct GNUNET_HELLO_Address *address,
- int numeric,
- struct GNUNET_TIME_Relative timeout,
- GNUNET_TRANSPORT_AddressToStringCallback aluc,
- void *aluc_cls)
+GNUNET_TRANSPORT_address_to_string (const struct GNUNET_CONFIGURATION_Handle
+ *cfg,
+ const struct GNUNET_HELLO_Address *address,
+ int numeric,
+ struct GNUNET_TIME_Relative timeout,
+ GNUNET_TRANSPORT_AddressToStringCallback
+ aluc, void *aluc_cls)
{
size_t len;
size_t alen;
if (client == NULL)
return NULL;
#if DEBUG_TRANSPORT
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "GNUNET_TRANSPORT_address_to_string\n");
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "GNUNET_TRANSPORT_address_to_string\n");
#endif
msg = GNUNET_malloc (len);
msg->header.size = htons (len);
*/
void
GNUNET_TRANSPORT_address_to_string_cancel (struct
- GNUNET_TRANSPORT_AddressToStringContext
- *alc)
+ GNUNET_TRANSPORT_AddressToStringContext
+ *alc)
{
GNUNET_CLIENT_disconnect (alc->client, GNUNET_NO);
GNUNET_free (alc);
GNUNET_abort ()
{
#if WINDOWS
- DebugBreak();
+ DebugBreak ();
#endif
- abort();
+ abort ();
}
{
struct LogDef n;
int r;
+
if (logdefs_size == logdefs_len)
resize_logdefs ();
memset (&n, 0, sizeof (n));
component = (char *) ".*";
r = regcomp (&n.component_regex, (const char *) component, REG_NOSUB);
if (r != 0)
- {
- return r;
- }
+ {
+ return r;
+ }
if (strlen (file) == 0)
file = (char *) ".*";
r = regcomp (&n.file_regex, (const char *) file, REG_NOSUB);
if (r != 0)
- {
- regfree (&n.component_regex);
- return r;
- }
- if ( (NULL == function) ||
- (strlen (function) == 0))
+ {
+ regfree (&n.component_regex);
+ return r;
+ }
+ if ((NULL == function) || (strlen (function) == 0))
function = (char *) ".*";
r = regcomp (&n.function_regex, (const char *) function, REG_NOSUB);
if (r != 0)
- {
- regfree (&n.component_regex);
- regfree (&n.file_regex);
- return r;
- }
+ {
+ regfree (&n.component_regex);
+ regfree (&n.file_regex);
+ return r;
+ }
n.from_line = from_line;
n.to_line = to_line;
n.level = level;
force_only = min_level >= 0;
for (i = 0; i < logdefs_len; i++)
{
- ld = &logdefs[i];
- if ((!force_only || ld->force) &&
- (line >= ld->from_line && line <= ld->to_line) &&
- (regexec (&ld->component_regex, comp, 0, NULL, 0) == 0) &&
- (regexec (&ld->file_regex, file, 0, NULL, 0) == 0) &&
- (regexec (&ld->function_regex, function, 0, NULL, 0) == 0))
- {
- /* We're finished */
- return caller_level <= ld->level;
- }
+ ld = &logdefs[i];
+ if ((!force_only || ld->force) &&
+ (line >= ld->from_line && line <= ld->to_line) &&
+ (regexec (&ld->component_regex, comp, 0, NULL, 0) == 0) &&
+ (regexec (&ld->file_regex, file, 0, NULL, 0) == 0) &&
+ (regexec (&ld->function_regex, function, 0, NULL, 0) == 0))
+ {
+ /* We're finished */
+ return caller_level <= ld->level;
+ }
}
/* No matches - use global level, if defined */
if (min_level >= 0)
to_line = INT_MAX;
for (p = def, state = 0, start = def; keep_looking; p++)
{
- switch (p[0])
- {
- case ';': /* found a field separator */
- p[0] = '\0';
- switch (state)
- {
- case 0: /* within a component name */
- comp = start;
- break;
- case 1: /* within a file name */
- file = start;
- break;
- case 2: /* within a function name */
- /* after a file name there must be a function name */
- function = start;
- break;
- case 3: /* within a from-to line range */
- if (strlen (start) > 0)
- {
- errno = 0;
- from_line = strtol (start, &t, 10);
- if (errno != 0 || from_line < 0)
- {
- free (def);
- return counter;
- }
- if (t < p && t[0] == '-')
- {
- errno = 0;
- start = t + 1;
- to_line = strtol (start, &t, 10);
- if (errno != 0 || to_line < 0 || t != p)
- {
- free (def);
- return counter;
- }
- }
- else /* one number means "match this line only" */
- to_line = from_line;
- }
- else /* default to 0-max */
- {
- from_line = 0;
- to_line = INT_MAX;
- }
- break;
- }
- start = p + 1;
- state += 1;
- break;
- case '\0': /* found EOL */
- keep_looking = 0;
- /* fall through to '/' */
- case '/': /* found a definition separator */
- switch (state)
- {
- case 4: /* within a log level */
- p[0] = '\0';
- state = 0;
- level = get_type ((const char *) start);
- if (level == GNUNET_ERROR_TYPE_INVALID
- || level == GNUNET_ERROR_TYPE_UNSPECIFIED
- || 0 != add_definition (comp, file, function, from_line,
- to_line, level, force))
- {
- free (def);
- return counter;
- }
- counter += 1;
- start = p + 1;
- break;
- default:
- break;
- }
- default:
- break;
- }
+ switch (p[0])
+ {
+ case ';': /* found a field separator */
+ p[0] = '\0';
+ switch (state)
+ {
+ case 0: /* within a component name */
+ comp = start;
+ break;
+ case 1: /* within a file name */
+ file = start;
+ break;
+ case 2: /* within a function name */
+ /* after a file name there must be a function name */
+ function = start;
+ break;
+ case 3: /* within a from-to line range */
+ if (strlen (start) > 0)
+ {
+ errno = 0;
+ from_line = strtol (start, &t, 10);
+ if (errno != 0 || from_line < 0)
+ {
+ free (def);
+ return counter;
+ }
+ if (t < p && t[0] == '-')
+ {
+ errno = 0;
+ start = t + 1;
+ to_line = strtol (start, &t, 10);
+ if (errno != 0 || to_line < 0 || t != p)
+ {
+ free (def);
+ return counter;
+ }
+ }
+ else /* one number means "match this line only" */
+ to_line = from_line;
+ }
+ else /* default to 0-max */
+ {
+ from_line = 0;
+ to_line = INT_MAX;
+ }
+ break;
+ }
+ start = p + 1;
+ state += 1;
+ break;
+ case '\0': /* found EOL */
+ keep_looking = 0;
+ /* fall through to '/' */
+ case '/': /* found a definition separator */
+ switch (state)
+ {
+ case 4: /* within a log level */
+ p[0] = '\0';
+ state = 0;
+ level = get_type ((const char *) start);
+ if (level == GNUNET_ERROR_TYPE_INVALID ||
+ level == GNUNET_ERROR_TYPE_UNSPECIFIED ||
+ 0 != add_definition (comp, file, function, from_line, to_line,
+ level, force))
+ {
+ free (def);
+ return counter;
+ }
+ counter += 1;
+ start = p + 1;
+ break;
+ default:
+ break;
+ }
+ default:
+ break;
+ }
}
free (def);
return counter;
component_nopid = GNUNET_strdup (comp);
env_logfile = getenv ("GNUNET_FORCE_LOGFILE");
- if ( (env_logfile != NULL) &&
- (strlen (env_logfile) > 0) )
+ if ((env_logfile != NULL) && (strlen (env_logfile) > 0))
logfile = env_logfile;
if (logfile == NULL)
/* The code is derived from glibc, obviously */
#if MINGW
#ifdef RANDOM
-# undef RANDOM
+#undef RANDOM
#endif
#ifdef SRANDOM
-# undef SRANDOM
+#undef SRANDOM
#endif
#define RANDOM() glibc_weak_rand32()
#define SRANDOM(s) glibc_weak_srand32(s)
glibc_weak_rand32 ()
{
int32_t val = glibc_weak_rand32_state;
+
val = ((glibc_weak_rand32_state * 1103515245) + 12345) & 0x7fffffff;
glibc_weak_rand32_state = val;
return val;
gcry_set_progress_handler (&entropy_generator, NULL);
atexit (&killfind);
GNUNET_CRYPTO_seed_weak_random (time (NULL) ^
- GNUNET_CRYPTO_random_u32 (GNUNET_CRYPTO_QUALITY_NONCE, UINT32_MAX));
+ GNUNET_CRYPTO_random_u32
+ (GNUNET_CRYPTO_QUALITY_NONCE, UINT32_MAX));
}
/* Make sure the environment variable bash 2.0 puts in the environment
is valid for the getopt call we must make sure that the ARGV passed
to getopt is that one passed to the process. */
-static void
- GNUNET_UNUSED store_args_and_env (int argc, char *const *argv)
+static void GNUNET_UNUSED
+store_args_and_env (int argc, char *const *argv)
{
/* XXX This is no good solution. We should rather copy the args so
* that we can compare them later. But we must not use malloc(3). */
for (i = 0; i < results_count; i++)
{
- if (GNUNET_OK != proc (proc_cls, results[i].pretty_name,
- results[i].is_default,
- &results[i].address,
- results[i].flags & ENUMNICS3_MASK_OK ? &results[i].mask : NULL,
- results[i].flags & ENUMNICS3_BCAST_OK ? &results[i].broadcast : NULL,
- results[i].addr_size))
+ if (GNUNET_OK !=
+ proc (proc_cls, results[i].pretty_name, results[i].is_default,
+ &results[i].address,
+ results[i].flags & ENUMNICS3_MASK_OK ? &results[i].mask : NULL,
+ results[i].
+ flags & ENUMNICS3_BCAST_OK ? &results[i].broadcast : NULL,
+ results[i].addr_size))
break;
}
EnumNICs3_free (results);
if (GNUNET_OK !=
proc (proc_cls, ifa_ptr->ifa_name,
0 == strcmp (ifa_ptr->ifa_name, GNUNET_DEFAULT_INTERFACE),
- ifa_ptr->ifa_addr,
- ifa_ptr->ifa_broadaddr,
- ifa_ptr->ifa_netmask,
- alen))
+ ifa_ptr->ifa_addr, ifa_ptr->ifa_broadaddr,
+ ifa_ptr->ifa_netmask, alen))
break;
}
}
proc (proc_cls, ifc, 0 == strcmp (ifc, GNUNET_DEFAULT_INTERFACE),
(const struct sockaddr *) &a4,
/* TODO broadcast and netmask */
- NULL,
- NULL,
- sizeof (a4)))
+ NULL, NULL, sizeof (a4)))
break;
continue;
}
proc (proc_cls, ifc, 0 == strcmp (ifc, GNUNET_DEFAULT_INTERFACE),
(const struct sockaddr *) &a6,
/* TODO broadcast and netmask */
- NULL,
- NULL,
- sizeof (a6)))
+ NULL, NULL, sizeof (a6)))
break;
continue;
}
if (((tc.reason & GNUNET_SCHEDULER_REASON_WRITE_READY) != 0) &&
(pos->write_fd != -1) &&
(!GNUNET_NETWORK_fdset_test_native (ws, pos->write_fd)))
- GNUNET_abort (); // added to ready in previous select loop!
+ GNUNET_abort (); // added to ready in previous select loop!
#if DEBUG_TASKS
LOG (GNUNET_ERROR_TYPE_DEBUG, "Running task: %llu / %p\n", pos->id,
pos->callback_cls);
static char c;
int old_errno = errno; /* backup errno */
- if (getpid() != my_pid)
- exit(1); /* we have fork'ed since the signal handler was created,
- ignore the signal, see https://gnunet.org/vfork discussion */
+ if (getpid () != my_pid)
+ exit (1); /* we have fork'ed since the signal handler was created,
+ * ignore the signal, see https://gnunet.org/vfork discussion */
GNUNET_DISK_file_write (GNUNET_DISK_pipe_handle
(shutdown_pipe_handle, GNUNET_DISK_PIPE_END_WRITE),
&c, sizeof (c));
LOG (GNUNET_ERROR_TYPE_DEBUG,
"Service `%s' runs with configuration from `%s'\n", serviceName, cfg_fn);
#endif
- if ( (GNUNET_OK ==
- GNUNET_CONFIGURATION_get_value_number (sctx.cfg, "TESTING", "SKEW_OFFSET",
- &skew_offset)) &&
- (GNUNET_OK ==
- GNUNET_CONFIGURATION_get_value_number (sctx.cfg, "TESTING",
- "SKEW_VARIANCE", &skew_variance)) )
+ if ((GNUNET_OK ==
+ GNUNET_CONFIGURATION_get_value_number (sctx.cfg, "TESTING",
+ "SKEW_OFFSET", &skew_offset)) &&
+ (GNUNET_OK ==
+ GNUNET_CONFIGURATION_get_value_number (sctx.cfg, "TESTING",
+ "SKEW_VARIANCE", &skew_variance)))
{
clock_offset = skew_offset - skew_variance;
GNUNET_TIME_set_offset (clock_offset);
last = 0;
if (1 != sscanf (tok, "%llu", &last))
{
- GNUNET_free (in);
+ GNUNET_free (in);
return GNUNET_SYSERR; /* expected number */
}
}
last = 0;
if (1 != sscanf (tok, "%llu", &last))
{
- GNUNET_free (in);
+ GNUNET_free (in);
return GNUNET_SYSERR; /* expected number */
}
}
static int
test_directory_r ()
{
-#if LINUX
+#if LINUX
char *msg;
char readResult[200];
struct GNUNET_BIO_ReadHandle *fileR;
break;
}
- proc =
- GNUNET_OS_start_process (NULL, pipe_stdout,
+ proc = GNUNET_OS_start_process (NULL, pipe_stdout,
#if MINGW
- "test_common_logging_dummy",
+ "test_common_logging_dummy",
#else
- "./test_common_logging_dummy",
+ "./test_common_logging_dummy",
#endif
- "test_common_logging_dummy", NULL);
+ "test_common_logging_dummy", NULL);
putenv ("GNUNET_FORCE_LOG=");
putenv ("GNUNET_LOG=");
* (success).
*/
static int
-proc (void *cls, const char *name,
- int isDefault,
- const struct sockaddr * addr,
- const struct sockaddr * broadcast_addr,
- const struct sockaddr * netmask,
+proc (void *cls, const char *name, int isDefault, const struct sockaddr *addr,
+ const struct sockaddr *broadcast_addr, const struct sockaddr *netmask,
socklen_t addrlen)
{
int *ok = cls;
* Function that frees everything from a hashmap
*/
static int
-free_iterate (void *cls GNUNET_UNUSED, const GNUNET_HashCode * hash
- GNUNET_UNUSED, void *value)
+free_iterate (void *cls GNUNET_UNUSED,
+ const GNUNET_HashCode * hash GNUNET_UNUSED, void *value)
{
GNUNET_free (value);
return GNUNET_YES;
* Function scheduled as very last function, cleans up after us
*/
static void
-cleanup (void *cls
- GNUNET_UNUSED,
+cleanup (void *cls GNUNET_UNUSED,
const struct GNUNET_SCHEDULER_TaskContext *tskctx)
{
GNUNET_assert (0 != (tskctx->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN));
}
static void *
-new_tunnel (void *cls
- GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
- const struct GNUNET_PeerIdentity *initiator
- GNUNET_UNUSED, const struct GNUNET_ATS_Information *ats
- GNUNET_UNUSED)
+new_tunnel (void *cls GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
+ const struct GNUNET_PeerIdentity *initiator GNUNET_UNUSED,
+ const struct GNUNET_ATS_Information *ats GNUNET_UNUSED)
{
struct tunnel_state *s = GNUNET_malloc (sizeof *s);
}
static void
-clean_tunnel (void *cls
- GNUNET_UNUSED, const struct GNUNET_MESH_Tunnel *tunnel,
+clean_tunnel (void *cls GNUNET_UNUSED, const struct GNUNET_MESH_Tunnel *tunnel,
void *tunnel_ctx)
{
GNUNET_free (tunnel_ctx);
* Receive packets from the helper-process
*/
static void
-message_token (void *cls GNUNET_UNUSED, void *client
- GNUNET_UNUSED,
+message_token (void *cls GNUNET_UNUSED, void *client GNUNET_UNUSED,
const struct GNUNET_MessageHeader *message)
{
GNUNET_assert (ntohs (message->type) == GNUNET_MESSAGE_TYPE_VPN_HELPER);
* The messages are one GNUNET_HashCode for the service followed by a struct tcp_pkt
*/
static int
-receive_tcp_service (void *cls
- GNUNET_UNUSED,
- struct GNUNET_MESH_Tunnel *tunnel, void **tunnel_ctx
- GNUNET_UNUSED,
- const struct GNUNET_PeerIdentity *sender
- GNUNET_UNUSED,
+receive_tcp_service (void *cls GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
+ void **tunnel_ctx GNUNET_UNUSED,
+ const struct GNUNET_PeerIdentity *sender GNUNET_UNUSED,
const struct GNUNET_MessageHeader *message,
- const struct GNUNET_ATS_Information *atsi
- GNUNET_UNUSED)
+ const struct GNUNET_ATS_Information *atsi GNUNET_UNUSED)
{
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Received TCP-Packet\n");
GNUNET_HashCode *desc = (GNUNET_HashCode *) (message + 1);
}
static int
-receive_tcp_remote (void *cls
- GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
- void **tunnel_ctx
- GNUNET_UNUSED,
- const struct GNUNET_PeerIdentity *sender
- GNUNET_UNUSED,
+receive_tcp_remote (void *cls GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
+ void **tunnel_ctx GNUNET_UNUSED,
+ const struct GNUNET_PeerIdentity *sender GNUNET_UNUSED,
const struct GNUNET_MessageHeader *message,
- const struct GNUNET_ATS_Information *atsi
- GNUNET_UNUSED)
+ const struct GNUNET_ATS_Information *atsi GNUNET_UNUSED)
{
GNUNET_HashCode *desc = (GNUNET_HashCode *) (message + 1);
struct tcp_pkt *pkt = (struct tcp_pkt *) (desc + 1);
}
static int
-receive_udp_remote (void *cls
- GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
- void **tunnel_ctx
- GNUNET_UNUSED,
- const struct GNUNET_PeerIdentity *sender
- GNUNET_UNUSED,
+receive_udp_remote (void *cls GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
+ void **tunnel_ctx GNUNET_UNUSED,
+ const struct GNUNET_PeerIdentity *sender GNUNET_UNUSED,
const struct GNUNET_MessageHeader *message,
- const struct GNUNET_ATS_Information *atsi
- GNUNET_UNUSED)
+ const struct GNUNET_ATS_Information *atsi GNUNET_UNUSED)
{
GNUNET_HashCode *desc = (GNUNET_HashCode *) (message + 1);
struct udp_pkt *pkt = (struct udp_pkt *) (desc + 1);
* The messages are one GNUNET_HashCode for the service, followed by a struct udp_pkt
*/
static int
-receive_udp_service (void *cls
- GNUNET_UNUSED,
- struct GNUNET_MESH_Tunnel *tunnel, void **tunnel_ctx,
- const struct GNUNET_PeerIdentity *sender
- GNUNET_UNUSED,
+receive_udp_service (void *cls GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
+ void **tunnel_ctx,
+ const struct GNUNET_PeerIdentity *sender GNUNET_UNUSED,
const struct GNUNET_MessageHeader *message,
- const struct GNUNET_ATS_Information *atsi
- GNUNET_UNUSED)
+ const struct GNUNET_ATS_Information *atsi GNUNET_UNUSED)
{
GNUNET_HashCode *desc = (GNUNET_HashCode *) (message + 1);
struct udp_pkt *pkt = (struct udp_pkt *) (desc + 1);
* @param cfg_ configuration
*/
static void
-run (void *cls, char *const *args GNUNET_UNUSED, const char *cfgfile
- GNUNET_UNUSED, const struct GNUNET_CONFIGURATION_Handle *cfg_)
+run (void *cls, char *const *args GNUNET_UNUSED,
+ const char *cfgfile GNUNET_UNUSED,
+ const struct GNUNET_CONFIGURATION_Handle *cfg_)
{
cfg = cfg_;
* Connect to the service-dns
*/
void
-connect_to_service_dns (void *cls
- GNUNET_UNUSED,
+connect_to_service_dns (void *cls GNUNET_UNUSED,
const struct GNUNET_SCHEDULER_TaskContext *tc)
{
conn_task = GNUNET_SCHEDULER_NO_TASK;
* handle it
*/
void
-dns_answer_handler (void *cls
- GNUNET_UNUSED,
+dns_answer_handler (void *cls GNUNET_UNUSED,
const struct GNUNET_MessageHeader *msg)
{
/* the service disconnected, reconnect after short wait */
* Send an dns-answer-packet to the helper
*/
void
-helper_write (void *cls
- GNUNET_UNUSED,
+helper_write (void *cls GNUNET_UNUSED,
const struct GNUNET_SCHEDULER_TaskContext *tsdkctx)
{
if (tsdkctx->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN)
GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Wrong addrlen = %d\n",
ans->pkt.addrlen);
GNUNET_assert (0);
- return; /* convince compiler that we're done here */
+ return; /* convince compiler that we're done here */
}
GNUNET_CONTAINER_DLL_remove (answer_proc_head, answer_proc_tail, ans);
* Receive packets from the helper-process
*/
void
-message_token (void *cls GNUNET_UNUSED, void *client
- GNUNET_UNUSED,
+message_token (void *cls GNUNET_UNUSED, void *client GNUNET_UNUSED,
const struct GNUNET_MessageHeader *message)
{
GNUNET_assert (ntohs (message->type) == GNUNET_MESSAGE_TYPE_VPN_HELPER);
htons (sizeof (struct GNUNET_MessageHeader) +
sizeof (GNUNET_HashCode) + ntohs (pkt6->ip6_hdr.paylgth));
- GNUNET_MESH_ApplicationType app_type = 0; /* fix compiler uninitialized warning... */
+ GNUNET_MESH_ApplicationType app_type = 0; /* fix compiler uninitialized warning... */
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "me->addrlen is %d\n",
me->addrlen);
*{{{
*/
static void
-cleanup (void *cls
- GNUNET_UNUSED,
+cleanup (void *cls GNUNET_UNUSED,
const struct GNUNET_SCHEDULER_TaskContext *tskctx)
{
GNUNET_assert (0 != (tskctx->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN));
}
static void
-collect_mappings (void *cls
- GNUNET_UNUSED,
+collect_mappings (void *cls GNUNET_UNUSED,
const struct GNUNET_SCHEDULER_TaskContext *tc)
{
if ((tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN) != 0)
void
send_pkt_to_peer (void *cls, const struct GNUNET_PeerIdentity *peer,
- const struct GNUNET_ATS_Information *atsi
- GNUNET_UNUSED)
+ const struct GNUNET_ATS_Information *atsi GNUNET_UNUSED)
{
/* peer == NULL means that all peers in this request are connected */
if (peer == NULL)
}
static int
-receive_udp_back (void *cls
- GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
+receive_udp_back (void *cls GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
void **tunnel_ctx, const struct GNUNET_PeerIdentity *sender,
const struct GNUNET_MessageHeader *message,
- const struct GNUNET_ATS_Information *atsi
- GNUNET_UNUSED)
+ const struct GNUNET_ATS_Information *atsi GNUNET_UNUSED)
{
GNUNET_HashCode *desc = (GNUNET_HashCode *) (message + 1);
struct remote_addr *s = (struct remote_addr *) desc;
}
static int
-receive_tcp_back (void *cls
- GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
- void **tunnel_ctx, const struct GNUNET_PeerIdentity *sender
- GNUNET_UNUSED,
+receive_tcp_back (void *cls GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
+ void **tunnel_ctx,
+ const struct GNUNET_PeerIdentity *sender GNUNET_UNUSED,
const struct GNUNET_MessageHeader *message,
- const struct GNUNET_ATS_Information *atsi
- GNUNET_UNUSED)
+ const struct GNUNET_ATS_Information *atsi GNUNET_UNUSED)
{
GNUNET_HashCode *desc = (GNUNET_HashCode *) (message + 1);
struct remote_addr *s = (struct remote_addr *) desc;
* @param cfg_ configuration
*/
static void
-run (void *cls, char *const *args GNUNET_UNUSED, const char *cfgfile
- GNUNET_UNUSED, const struct GNUNET_CONFIGURATION_Handle *cfg_)
+run (void *cls, char *const *args GNUNET_UNUSED,
+ const char *cfgfile GNUNET_UNUSED,
+ const struct GNUNET_CONFIGURATION_Handle *cfg_)
{
static const struct GNUNET_MESH_MessageHandler handlers[] = {
{receive_udp_back, GNUNET_MESSAGE_TYPE_VPN_SERVICE_UDP_BACK, 0},
* Hijack all outgoing DNS-Traffic but for traffic leaving "our" port.
*/
static void
-hijack (void *cls
- GNUNET_UNUSED, const struct GNUNET_SCHEDULER_TaskContext *tc)
+hijack (void *cls GNUNET_UNUSED, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
if (0 != (tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN))
return;
}
static void *
-new_tunnel (void *cls
- GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
- const struct GNUNET_PeerIdentity *initiator
- GNUNET_UNUSED, const struct GNUNET_ATS_Information *ats
- GNUNET_UNUSED)
+new_tunnel (void *cls GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
+ const struct GNUNET_PeerIdentity *initiator GNUNET_UNUSED,
+ const struct GNUNET_ATS_Information *ats GNUNET_UNUSED)
{
struct tunnel_state *s = GNUNET_malloc (sizeof *s);
}
static void
-clean_tunnel (void *cls
- GNUNET_UNUSED, const struct GNUNET_MESH_Tunnel *tunnel,
+clean_tunnel (void *cls GNUNET_UNUSED, const struct GNUNET_MESH_Tunnel *tunnel,
void *tunnel_ctx)
{
GNUNET_free (tunnel_ctx);
void
mesh_connect (void *cls, const struct GNUNET_PeerIdentity *peer,
- const struct GNUNET_ATS_Information *atsi
- GNUNET_UNUSED)
+ const struct GNUNET_ATS_Information *atsi GNUNET_UNUSED)
{
if (NULL == peer)
return;
}
static int
-receive_mesh_query (void *cls
- GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
- void **ctx
- GNUNET_UNUSED,
- const struct GNUNET_PeerIdentity *sender
- GNUNET_UNUSED,
+receive_mesh_query (void *cls GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
+ void **ctx GNUNET_UNUSED,
+ const struct GNUNET_PeerIdentity *sender GNUNET_UNUSED,
const struct GNUNET_MessageHeader *message,
- const struct GNUNET_ATS_Information *atsi
- GNUNET_UNUSED)
+ const struct GNUNET_ATS_Information *atsi GNUNET_UNUSED)
{
struct dns_pkt *dns = (struct dns_pkt *) (message + 1);
}
static int
-receive_mesh_answer (void *cls
- GNUNET_UNUSED,
- struct GNUNET_MESH_Tunnel *tunnel, void **ctx
- GNUNET_UNUSED,
+receive_mesh_answer (void *cls GNUNET_UNUSED, struct GNUNET_MESH_Tunnel *tunnel,
+ void **ctx GNUNET_UNUSED,
const struct GNUNET_PeerIdentity *sender,
const struct GNUNET_MessageHeader *message,
- const struct GNUNET_ATS_Information *atsi
- GNUNET_UNUSED)
+ const struct GNUNET_ATS_Information *atsi GNUNET_UNUSED)
{
/* TODo: size check */
struct dns_pkt *dns = (struct dns_pkt *) (message + 1);
* Receive a block from the dht.
*/
static void
-receive_dht (void *cls, struct GNUNET_TIME_Absolute exp
- GNUNET_UNUSED, const GNUNET_HashCode * key
- GNUNET_UNUSED,
- const struct GNUNET_PeerIdentity *get_path
- GNUNET_UNUSED, unsigned int get_path_length
- GNUNET_UNUSED,
- const struct GNUNET_PeerIdentity *put_path
- GNUNET_UNUSED, unsigned int put_path_length
- GNUNET_UNUSED, enum GNUNET_BLOCK_Type type, size_t size,
- const void *data)
+receive_dht (void *cls, struct GNUNET_TIME_Absolute exp GNUNET_UNUSED,
+ const GNUNET_HashCode * key GNUNET_UNUSED,
+ const struct GNUNET_PeerIdentity *get_path GNUNET_UNUSED,
+ unsigned int get_path_length GNUNET_UNUSED,
+ const struct GNUNET_PeerIdentity *put_path GNUNET_UNUSED,
+ unsigned int put_path_length GNUNET_UNUSED,
+ enum GNUNET_BLOCK_Type type, size_t size, const void *data)
{
unsigned short id = ((struct receive_dht_cls *) cls)->id;
* This receives a GNUNET_MESSAGE_TYPE_REHIJACK and rehijacks the DNS
*/
static void
-rehijack (void *cls
- GNUNET_UNUSED, struct GNUNET_SERVER_Client *client,
+rehijack (void *cls GNUNET_UNUSED, struct GNUNET_SERVER_Client *client,
const struct GNUNET_MessageHeader *message GNUNET_UNUSED)
{
unhijack (dnsoutport);
* This receives the dns-payload from the daemon-vpn and sends it on over the udp-socket
*/
static void
-receive_query (void *cls
- GNUNET_UNUSED, struct GNUNET_SERVER_Client *client,
+receive_query (void *cls GNUNET_UNUSED, struct GNUNET_SERVER_Client *client,
const struct GNUNET_MessageHeader *message)
{
struct query_packet *pkt = (struct query_packet *) message;
* Read a response-packet of the UDP-Socket
*/
static void
-read_response6 (void *cls
- GNUNET_UNUSED,
+read_response6 (void *cls GNUNET_UNUSED,
const struct GNUNET_SCHEDULER_TaskContext *tc)
{
struct sockaddr_in6 addr;
* Read a response-packet of the UDP-Socket
*/
static void
-read_response (void *cls
- GNUNET_UNUSED,
+read_response (void *cls GNUNET_UNUSED,
const struct GNUNET_SCHEDULER_TaskContext *tc)
{
struct sockaddr_in addr;
* @param tc unused
*/
static void
-cleanup_task (void *cls
- GNUNET_UNUSED,
+cleanup_task (void *cls GNUNET_UNUSED,
const struct GNUNET_SCHEDULER_TaskContext *tc)
{
GNUNET_assert (0 != (tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN));
* Publish a DNS-record in the DHT.
*/
static void
-publish_names (void *cls
- GNUNET_UNUSED,
+publish_names (void *cls GNUNET_UNUSED,
const struct GNUNET_SCHEDULER_TaskContext *tc)
{
if (0 != (tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN))