#include "gnunet-service-transport_neighbours.h"
#include "gnunet-service-transport_plugins.h"
#include "gnunet-service-transport_validation.h"
+#include "gnunet-service-transport_manipulation.h"
#include "transport.h"
/* globals */
/**
* Hostkey generation context
*/
-struct GNUNET_CRYPTO_RsaKeyGenerationContext *GST_keygen;
+struct GNUNET_CRYPTO_EccKeyGenerationContext *GST_keygen;
/**
* Handle to our service's server.
/**
* Our public key.
*/
-struct GNUNET_CRYPTO_RsaPublicKeyBinaryEncoded GST_my_public_key;
+struct GNUNET_CRYPTO_EccPublicKeyBinaryEncoded GST_my_public_key;
/**
* Our private key.
*/
-struct GNUNET_CRYPTO_RsaPrivateKey *GST_my_private_key;
+struct GNUNET_CRYPTO_EccPrivateKey *GST_my_private_key;
/**
* ATS handle.
* @return how long the plugin should wait until receiving more data
* (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,
+struct GNUNET_TIME_Relative
+GST_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 (NULL != GST_keygen)
{
- GNUNET_CRYPTO_rsa_key_create_stop (GST_keygen);
+ GNUNET_CRYPTO_ecc_key_create_stop (GST_keygen);
GST_keygen = NULL;
}
GST_neighbours_stop ();
GST_clients_stop ();
GST_blacklist_stop ();
GST_hello_stop ();
+ GST_manipulation_stop ();
if (NULL != GST_peerinfo)
{
}
if (NULL != GST_my_private_key)
{
- GNUNET_CRYPTO_rsa_key_free (GST_my_private_key);
+ GNUNET_CRYPTO_ecc_key_free (GST_my_private_key);
GST_my_private_key = NULL;
}
GST_server = NULL;
*/
static void
key_generation_cb (void *cls,
- struct GNUNET_CRYPTO_RsaPrivateKey *pk,
+ struct GNUNET_CRYPTO_EccPrivateKey *pk,
const char *emsg)
{
- struct GNUNET_CRYPTO_RsaPublicKeyBinaryEncoded tmp;
long long unsigned int max_fd_cfg;
int max_fd_rlimit;
int max_fd;
GST_my_private_key = pk;
GST_stats = GNUNET_STATISTICS_create ("transport", GST_cfg);
- if (NULL == GST_stats)
- {
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- _("Could not access STATISTICS service. Exiting.\n"));
- GNUNET_SCHEDULER_shutdown ();
- return;
- }
GST_peerinfo = GNUNET_PEERINFO_connect (GST_cfg);
- memset (&GST_my_public_key, '\0', sizeof (GST_my_public_key));
- memset (&tmp, '\0', sizeof (tmp));
- GNUNET_CRYPTO_rsa_key_get_public (GST_my_private_key, &GST_my_public_key);
+ GNUNET_CRYPTO_ecc_key_get_public (GST_my_private_key, &GST_my_public_key);
GNUNET_CRYPTO_hash (&GST_my_public_key, sizeof (GST_my_public_key),
&GST_my_identity.hashPubKey);
-
GNUNET_assert (NULL != GST_my_private_key);
- GNUNET_assert (0 != memcmp (&GST_my_public_key, &tmp, sizeof (GST_my_public_key)));
GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_FOREVER_REL, &shutdown_task,
NULL);
GST_blacklist_start (GST_server);
GST_ats =
GNUNET_ATS_scheduling_init (GST_cfg, &ats_request_address_change, NULL);
- GST_plugins_load (&plugin_env_receive_callback,
+ GST_manipulation_init ();
+ GST_plugins_load (&GST_manipulation_recv,
&plugin_env_address_change_notification,
&plugin_env_session_end,
&plugin_env_address_to_type);
/* setup globals */
GST_cfg = c;
if (GNUNET_OK !=
- GNUNET_CONFIGURATION_get_value_filename (c, "GNUNETD", "HOSTKEY",
+ GNUNET_CONFIGURATION_get_value_filename (c, "PEER", "PRIVATE_KEY",
&keyfile))
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
}
GST_server = server;
GNUNET_SERVER_suspend (server);
- GST_keygen = GNUNET_CRYPTO_rsa_key_create_start (keyfile, &key_generation_cb, NULL);
+ GST_keygen = GNUNET_CRYPTO_ecc_key_create_start (keyfile, &key_generation_cb, NULL);
GNUNET_free (keyfile);
if (NULL == GST_keygen)
{