diff options
author | Christian Grothoff <christian@grothoff.org> | 2020-04-11 21:43:28 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2020-04-11 21:43:34 +0200 |
commit | 90ff9edfa9c5fcfa3a36d1653ff105e89b888e21 (patch) | |
tree | 780a2071f5072c8e8e044db741eb295c3f3ea2a7 /src/transport | |
parent | 3bcfe59f1ce533246bda271f00b3ee957cae304d (diff) | |
download | gnunet-90ff9edfa9c5fcfa3a36d1653ff105e89b888e21.tar.gz gnunet-90ff9edfa9c5fcfa3a36d1653ff105e89b888e21.zip |
fixing #6149
Diffstat (limited to 'src/transport')
-rw-r--r-- | src/transport/gnunet-communicator-tcp.c | 6 | ||||
-rw-r--r-- | src/transport/gnunet-communicator-udp.c | 2 | ||||
-rw-r--r-- | src/transport/gnunet-service-tng.c | 3 | ||||
-rw-r--r-- | src/transport/gnunet-service-transport.c | 27 | ||||
-rw-r--r-- | src/transport/gnunet-service-transport.h | 2 | ||||
-rw-r--r-- | src/transport/gnunet-service-transport_neighbours.c | 2 | ||||
-rw-r--r-- | src/transport/gnunet-service-transport_validation.c | 2 |
7 files changed, 20 insertions, 24 deletions
diff --git a/src/transport/gnunet-communicator-tcp.c b/src/transport/gnunet-communicator-tcp.c index 2786ba184..82ee309a5 100644 --- a/src/transport/gnunet-communicator-tcp.c +++ b/src/transport/gnunet-communicator-tcp.c | |||
@@ -1270,8 +1270,7 @@ inject_rekey (struct Queue *queue) | |||
1270 | 1270 | ||
1271 | GNUNET_assert (0 == queue->pwrite_off); | 1271 | GNUNET_assert (0 == queue->pwrite_off); |
1272 | memset (&rekey, 0, sizeof(rekey)); | 1272 | memset (&rekey, 0, sizeof(rekey)); |
1273 | GNUNET_assert (GNUNET_OK == | 1273 | GNUNET_CRYPTO_ecdhe_key_create (&queue->ephemeral); |
1274 | GNUNET_CRYPTO_ecdhe_key_create2 (&queue->ephemeral)); | ||
1275 | rekey.header.type = ntohs (GNUNET_MESSAGE_TYPE_COMMUNICATOR_TCP_REKEY); | 1274 | rekey.header.type = ntohs (GNUNET_MESSAGE_TYPE_COMMUNICATOR_TCP_REKEY); |
1276 | rekey.header.size = ntohs (sizeof(rekey)); | 1275 | rekey.header.size = ntohs (sizeof(rekey)); |
1277 | GNUNET_CRYPTO_ecdhe_key_get_public (&queue->ephemeral, &rekey.ephemeral); | 1276 | GNUNET_CRYPTO_ecdhe_key_get_public (&queue->ephemeral, &rekey.ephemeral); |
@@ -1610,8 +1609,7 @@ start_initial_kx_out (struct Queue *queue) | |||
1610 | { | 1609 | { |
1611 | struct GNUNET_CRYPTO_EcdhePublicKey epub; | 1610 | struct GNUNET_CRYPTO_EcdhePublicKey epub; |
1612 | 1611 | ||
1613 | GNUNET_assert (GNUNET_OK == | 1612 | GNUNET_CRYPTO_ecdhe_key_create (&queue->ephemeral); |
1614 | GNUNET_CRYPTO_ecdhe_key_create2 (&queue->ephemeral)); | ||
1615 | GNUNET_CRYPTO_ecdhe_key_get_public (&queue->ephemeral, &epub); | 1613 | GNUNET_CRYPTO_ecdhe_key_get_public (&queue->ephemeral, &epub); |
1616 | setup_out_cipher (queue); | 1614 | setup_out_cipher (queue); |
1617 | transmit_kx (queue, &epub); | 1615 | transmit_kx (queue, &epub); |
diff --git a/src/transport/gnunet-communicator-udp.c b/src/transport/gnunet-communicator-udp.c index 1542a7702..e0b14f669 100644 --- a/src/transport/gnunet-communicator-udp.c +++ b/src/transport/gnunet-communicator-udp.c | |||
@@ -1918,7 +1918,7 @@ mq_send (struct GNUNET_MQ_Handle *mq, | |||
1918 | struct SharedSecret *ss; | 1918 | struct SharedSecret *ss; |
1919 | 1919 | ||
1920 | /* setup key material */ | 1920 | /* setup key material */ |
1921 | GNUNET_assert (GNUNET_OK == GNUNET_CRYPTO_ecdhe_key_create2 (&epriv)); | 1921 | GNUNET_CRYPTO_ecdhe_key_create (&epriv); |
1922 | 1922 | ||
1923 | ss = setup_shared_secret_enc (&epriv, receiver); | 1923 | ss = setup_shared_secret_enc (&epriv, receiver); |
1924 | setup_cipher (&ss->master, 0, &out_cipher); | 1924 | setup_cipher (&ss->master, 0, &out_cipher); |
diff --git a/src/transport/gnunet-service-tng.c b/src/transport/gnunet-service-tng.c index 75763fd9d..5f3178939 100644 --- a/src/transport/gnunet-service-tng.c +++ b/src/transport/gnunet-service-tng.c | |||
@@ -4130,8 +4130,7 @@ update_ephemeral (struct DistanceVector *dv) | |||
4130 | dv->monotime = GNUNET_TIME_absolute_get_monotonic (GST_cfg); | 4130 | dv->monotime = GNUNET_TIME_absolute_get_monotonic (GST_cfg); |
4131 | dv->ephemeral_validity = | 4131 | dv->ephemeral_validity = |
4132 | GNUNET_TIME_absolute_add (dv->monotime, EPHEMERAL_VALIDITY); | 4132 | GNUNET_TIME_absolute_add (dv->monotime, EPHEMERAL_VALIDITY); |
4133 | GNUNET_assert (GNUNET_OK == | 4133 | GNUNET_CRYPTO_ecdhe_key_create (&dv->private_key); |
4134 | GNUNET_CRYPTO_ecdhe_key_create2 (&dv->private_key)); | ||
4135 | GNUNET_CRYPTO_ecdhe_key_get_public (&dv->private_key, &dv->ephemeral_key); | 4134 | GNUNET_CRYPTO_ecdhe_key_get_public (&dv->private_key, &dv->ephemeral_key); |
4136 | ec.purpose.purpose = htonl (GNUNET_SIGNATURE_PURPOSE_TRANSPORT_EPHEMERAL); | 4135 | ec.purpose.purpose = htonl (GNUNET_SIGNATURE_PURPOSE_TRANSPORT_EPHEMERAL); |
4137 | ec.purpose.size = htonl (sizeof(ec)); | 4136 | ec.purpose.size = htonl (sizeof(ec)); |
diff --git a/src/transport/gnunet-service-transport.c b/src/transport/gnunet-service-transport.c index 927a8753c..93fa031f4 100644 --- a/src/transport/gnunet-service-transport.c +++ b/src/transport/gnunet-service-transport.c | |||
@@ -384,7 +384,7 @@ struct GNUNET_PEERINFO_Handle *GST_peerinfo; | |||
384 | /** | 384 | /** |
385 | * Our private key. | 385 | * Our private key. |
386 | */ | 386 | */ |
387 | struct GNUNET_CRYPTO_EddsaPrivateKey *GST_my_private_key; | 387 | struct GNUNET_CRYPTO_EddsaPrivateKey GST_my_private_key; |
388 | 388 | ||
389 | /** | 389 | /** |
390 | * ATS scheduling handle. | 390 | * ATS scheduling handle. |
@@ -2183,11 +2183,6 @@ shutdown_task (void *cls) | |||
2183 | GNUNET_STATISTICS_destroy (GST_stats, GNUNET_NO); | 2183 | GNUNET_STATISTICS_destroy (GST_stats, GNUNET_NO); |
2184 | GST_stats = NULL; | 2184 | GST_stats = NULL; |
2185 | } | 2185 | } |
2186 | if (NULL != GST_my_private_key) | ||
2187 | { | ||
2188 | GNUNET_free (GST_my_private_key); | ||
2189 | GST_my_private_key = NULL; | ||
2190 | } | ||
2191 | } | 2186 | } |
2192 | 2187 | ||
2193 | 2188 | ||
@@ -2611,7 +2606,6 @@ run (void *cls, | |||
2611 | struct GNUNET_SERVICE_Handle *service) | 2606 | struct GNUNET_SERVICE_Handle *service) |
2612 | { | 2607 | { |
2613 | char *keyfile; | 2608 | char *keyfile; |
2614 | struct GNUNET_CRYPTO_EddsaPrivateKey *pk; | ||
2615 | long long unsigned int max_fd_cfg; | 2609 | long long unsigned int max_fd_cfg; |
2616 | int max_fd_rlimit; | 2610 | int max_fd_rlimit; |
2617 | int max_fd; | 2611 | int max_fd; |
@@ -2638,17 +2632,22 @@ run (void *cls, | |||
2638 | { | 2632 | { |
2639 | hello_expiration = GNUNET_CONSTANTS_HELLO_ADDRESS_EXPIRATION; | 2633 | hello_expiration = GNUNET_CONSTANTS_HELLO_ADDRESS_EXPIRATION; |
2640 | } | 2634 | } |
2641 | pk = GNUNET_CRYPTO_eddsa_key_create_from_file (keyfile); | 2635 | if (GNUNET_SYSERR == |
2636 | GNUNET_CRYPTO_eddsa_key_from_file (keyfile, | ||
2637 | GNUNET_YES, | ||
2638 | &GST_my_private_key)) | ||
2639 | { | ||
2640 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, | ||
2641 | "Failed to setup peer's private key\n"); | ||
2642 | GNUNET_SCHEDULER_shutdown (); | ||
2643 | GNUNET_free (keyfile); | ||
2644 | return; | ||
2645 | } | ||
2642 | GNUNET_free (keyfile); | 2646 | GNUNET_free (keyfile); |
2643 | GNUNET_assert (NULL != pk); | ||
2644 | GST_my_private_key = pk; | ||
2645 | |||
2646 | GST_stats = GNUNET_STATISTICS_create ("transport", GST_cfg); | 2647 | GST_stats = GNUNET_STATISTICS_create ("transport", GST_cfg); |
2647 | GST_peerinfo = GNUNET_PEERINFO_connect (GST_cfg); | 2648 | GST_peerinfo = GNUNET_PEERINFO_connect (GST_cfg); |
2648 | GNUNET_CRYPTO_eddsa_key_get_public (GST_my_private_key, | 2649 | GNUNET_CRYPTO_eddsa_key_get_public (&GST_my_private_key, |
2649 | &GST_my_identity.public_key); | 2650 | &GST_my_identity.public_key); |
2650 | GNUNET_assert (NULL != GST_my_private_key); | ||
2651 | |||
2652 | GNUNET_log (GNUNET_ERROR_TYPE_INFO, | 2651 | GNUNET_log (GNUNET_ERROR_TYPE_INFO, |
2653 | "My identity is `%s'\n", | 2652 | "My identity is `%s'\n", |
2654 | GNUNET_i2s_full (&GST_my_identity)); | 2653 | GNUNET_i2s_full (&GST_my_identity)); |
diff --git a/src/transport/gnunet-service-transport.h b/src/transport/gnunet-service-transport.h index acb1de395..ea9e71e4b 100644 --- a/src/transport/gnunet-service-transport.h +++ b/src/transport/gnunet-service-transport.h | |||
@@ -56,7 +56,7 @@ extern struct GNUNET_PEERINFO_Handle *GST_peerinfo; | |||
56 | /** | 56 | /** |
57 | * Our private key. | 57 | * Our private key. |
58 | */ | 58 | */ |
59 | extern struct GNUNET_CRYPTO_EddsaPrivateKey *GST_my_private_key; | 59 | extern struct GNUNET_CRYPTO_EddsaPrivateKey GST_my_private_key; |
60 | 60 | ||
61 | /** | 61 | /** |
62 | * ATS handle. | 62 | * ATS handle. |
diff --git a/src/transport/gnunet-service-transport_neighbours.c b/src/transport/gnunet-service-transport_neighbours.c index ec64ca607..ca1b4d1da 100644 --- a/src/transport/gnunet-service-transport_neighbours.c +++ b/src/transport/gnunet-service-transport_neighbours.c | |||
@@ -1045,7 +1045,7 @@ send_disconnect (struct NeighbourMapEntry *n) | |||
1045 | GNUNET_TIME_absolute_hton (GNUNET_TIME_absolute_get ()); | 1045 | GNUNET_TIME_absolute_hton (GNUNET_TIME_absolute_get ()); |
1046 | disconnect_msg.public_key = GST_my_identity.public_key; | 1046 | disconnect_msg.public_key = GST_my_identity.public_key; |
1047 | GNUNET_assert (GNUNET_OK == | 1047 | GNUNET_assert (GNUNET_OK == |
1048 | GNUNET_CRYPTO_eddsa_sign_ (GST_my_private_key, | 1048 | GNUNET_CRYPTO_eddsa_sign_ (&GST_my_private_key, |
1049 | &disconnect_msg.purpose, | 1049 | &disconnect_msg.purpose, |
1050 | &disconnect_msg.signature)); | 1050 | &disconnect_msg.signature)); |
1051 | 1051 | ||
diff --git a/src/transport/gnunet-service-transport_validation.c b/src/transport/gnunet-service-transport_validation.c index 610c45a21..e5d670889 100644 --- a/src/transport/gnunet-service-transport_validation.c +++ b/src/transport/gnunet-service-transport_validation.c | |||
@@ -1271,7 +1271,7 @@ GST_validation_handle_ping (const struct GNUNET_PeerIdentity *sender, | |||
1271 | *sig_cache_exp = GNUNET_TIME_relative_to_absolute (PONG_SIGNATURE_LIFETIME); | 1271 | *sig_cache_exp = GNUNET_TIME_relative_to_absolute (PONG_SIGNATURE_LIFETIME); |
1272 | pong->expiration = GNUNET_TIME_absolute_hton (*sig_cache_exp); | 1272 | pong->expiration = GNUNET_TIME_absolute_hton (*sig_cache_exp); |
1273 | if (GNUNET_OK != | 1273 | if (GNUNET_OK != |
1274 | GNUNET_CRYPTO_eddsa_sign_ (GST_my_private_key, | 1274 | GNUNET_CRYPTO_eddsa_sign_ (&GST_my_private_key, |
1275 | &pong->purpose, | 1275 | &pong->purpose, |
1276 | sig_cache)) | 1276 | sig_cache)) |
1277 | { | 1277 | { |