From 3e7b2390a6a63f38635108d45d9c293e5a2b25d4 Mon Sep 17 00:00:00 2001 From: "Nathan S. Evans" Date: Mon, 28 Jun 2010 12:45:34 +0000 Subject: hashing random memory to get a peer identity just does not work --- src/transport/gnunet-service-transport.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/transport/gnunet-service-transport.c') diff --git a/src/transport/gnunet-service-transport.c b/src/transport/gnunet-service-transport.c index 4390377a6..3cfb088c1 100644 --- a/src/transport/gnunet-service-transport.c +++ b/src/transport/gnunet-service-transport.c @@ -3995,9 +3995,7 @@ process_hello (struct TransportPlugin *plugin, gettext_noop ("# HELLOs received for validation"), 1, GNUNET_NO); - GNUNET_CRYPTO_hash (&publicKey, - sizeof (struct GNUNET_CRYPTO_RsaPublicKeyBinaryEncoded), - &target.hashPubKey); + /* first, check if load is too high */ if (GNUNET_SCHEDULER_get_load (sched, GNUNET_SCHEDULER_PRIORITY_BACKGROUND) > MAX_HELLO_LOAD) @@ -4026,6 +4024,11 @@ process_hello (struct TransportPlugin *plugin, GNUNET_break_op (0); return GNUNET_SYSERR; } + + GNUNET_CRYPTO_hash (&publicKey, + sizeof (struct GNUNET_CRYPTO_RsaPublicKeyBinaryEncoded), + &target.hashPubKey); + if (0 == memcmp (&my_identity, &target, sizeof (struct GNUNET_PeerIdentity))) -- cgit v1.2.3