From bbe279c1183a26f486bd43c1b6ad3243de983774 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 1 Apr 2012 07:53:22 +0000 Subject: [PATCH] -code cleanup --- src/core/gnunet-core-list-connections.c | 140 +++--------------------- 1 file changed, 16 insertions(+), 124 deletions(-) diff --git a/src/core/gnunet-core-list-connections.c b/src/core/gnunet-core-list-connections.c index fcd076564..4fe0a4f86 100644 --- a/src/core/gnunet-core-list-connections.c +++ b/src/core/gnunet-core-list-connections.c @@ -1,6 +1,6 @@ /* This file is part of GNUnet. - (C) 2011 Christian Grothoff (and other contributing authors) + (C) 2011, 2012 Christian Grothoff (and other contributing authors) GNUnet is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published @@ -19,7 +19,7 @@ */ /** - * @file core/gnunet-core-list-connections.c + * @file core/gnunet-core.c * @brief Print information about other known _connected_ peers. * @author Nathan Evans */ @@ -32,127 +32,26 @@ #include "gnunet_core_service.h" #include "gnunet_program_lib.h" -#define VERBOSE 0 -static int no_resolve; - -#if VERBOSE -static unsigned int peer_count; -#endif - -static const struct GNUNET_CONFIGURATION_Handle *cfg; - -struct AddressStringList -{ - /** - * Pointer to previous element. - */ - struct AddressStringList *prev; - - /** - * Pointer to next element. - */ - struct AddressStringList *next; - - /** - * Address as string. - */ - char *address_string; -}; - -struct PrintContext -{ - struct GNUNET_PeerIdentity peer; - struct AddressStringList *address_list_head; - struct AddressStringList *address_list_tail; -}; - - -static void -dump_pc (struct PrintContext *pc) -{ - struct GNUNET_CRYPTO_HashAsciiEncoded enc; - struct AddressStringList *address; - - GNUNET_CRYPTO_hash_to_enc (&pc->peer.hashPubKey, &enc); - printf (_("Peer `%s'\n"), (const char *) &enc); - while (NULL != (address = pc->address_list_head)) - { - printf ("\t%s\n", address->address_string); - GNUNET_free (address->address_string); - GNUNET_CONTAINER_DLL_remove (pc->address_list_head, pc->address_list_tail, - address); - GNUNET_free (address); - } - - printf ("\n"); - - GNUNET_free (pc); -} - - -/** - * Function to call with a human-readable format of an address - * - * @param cls closure - * @param peer peer this update is about - * @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) -{ - struct PrintContext *pc = cls; - -// struct AddressStringList *new_address; - - if (address == NULL) - { - dump_pc (pc); - return; - } - - /* 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); - */ -} - /** * Callback for retrieving a list of connected peers. + * + * @param cls closure (unused) + * @param peer peer identity this notification is about + * @param atsi performance data for the connection + * @param atsi_count number of records in 'atsi' */ static void connected_peer_callback (void *cls, const struct GNUNET_PeerIdentity *peer, const struct GNUNET_ATS_Information *atsi, unsigned int atsi_count) { - struct PrintContext *pc; + struct GNUNET_CRYPTO_HashAsciiEncoded enc; - if (peer != NULL) /* Not yet finished */ - { -#if VERBOSE - FPRINTF (stderr, "Learned about peer %s\n", GNUNET_i2s (peer)); - peer_count++; -#endif - pc = GNUNET_malloc (sizeof (struct PrintContext)); - pc->peer = *peer; - GNUNET_TRANSPORT_peer_get_active_addresses (cfg, peer, GNUNET_YES, - GNUNET_TIME_UNIT_MINUTES, - &process_resolved_address, pc); - } -#if VERBOSE - else - { - FPRINTF (stderr, "Counted %u total connected peers.\n", peer_count); - } -#endif + if (NULL == peer) + return; + GNUNET_CRYPTO_hash_to_enc (&peer->hashPubKey, &enc); + printf (_("Peer `%s'\n"), (const char *) &enc); } @@ -162,22 +61,18 @@ connected_peer_callback (void *cls, const struct GNUNET_PeerIdentity *peer, * @param cls closure * @param args remaining command-line arguments * @param cfgfile name of the configuration file used (for saving, can be NULL!) - * @param c configuration + * @param cfg configuration */ static void run (void *cls, char *const *args, const char *cfgfile, - const struct GNUNET_CONFIGURATION_Handle *c) + const struct GNUNET_CONFIGURATION_Handle *cfg) { - - cfg = c; if (args[0] != NULL) { FPRINTF (stderr, _("Invalid command line argument `%s'\n"), args[0]); return; } - GNUNET_CORE_iterate_peers (cfg, &connected_peer_callback, NULL); - } @@ -192,16 +87,13 @@ int main (int argc, char *const *argv) { static const struct GNUNET_GETOPT_CommandLineOption options[] = { - {'n', "numeric", NULL, - gettext_noop ("don't resolve host names"), - 0, &GNUNET_GETOPT_set_one, &no_resolve}, GNUNET_GETOPT_OPTION_END }; return (GNUNET_OK == - GNUNET_PROGRAM_run (argc, argv, "gnunet-list-connections", + GNUNET_PROGRAM_run (argc, argv, "gnunet-core", gettext_noop ("Print information about connected peers."), options, &run, NULL)) ? 0 : 1; } -/* end of gnunet-core-list-connections.c */ +/* end of gnunet-core.c */ -- 2.25.1