aboutsummaryrefslogtreecommitdiff
path: root/src/dhtu/plugin_dhtu_ip.c
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2022-01-10 14:57:20 +0100
committerChristian Grothoff <christian@grothoff.org>2022-01-10 14:57:20 +0100
commitbfd4daf8ae1a3c6229ee3a8ca944adb2ef7e8677 (patch)
tree25aba3b09bbd0f1fdbc8f9295f49e2caffdb950c /src/dhtu/plugin_dhtu_ip.c
parent98edb2e5e83bafe96bb312262fcd9e992589b1d3 (diff)
downloadgnunet-bfd4daf8ae1a3c6229ee3a8ca944adb2ef7e8677.tar.gz
gnunet-bfd4daf8ae1a3c6229ee3a8ca944adb2ef7e8677.zip
-remove signing from DHTU API: no longer needed
Diffstat (limited to 'src/dhtu/plugin_dhtu_ip.c')
-rw-r--r--src/dhtu/plugin_dhtu_ip.c78
1 files changed, 15 insertions, 63 deletions
diff --git a/src/dhtu/plugin_dhtu_ip.c b/src/dhtu/plugin_dhtu_ip.c
index ae35adb37..8eec6294b 100644
--- a/src/dhtu/plugin_dhtu_ip.c
+++ b/src/dhtu/plugin_dhtu_ip.c
@@ -56,6 +56,11 @@ struct GNUNET_DHTU_Source
56 struct GNUNET_DHTU_Source *prev; 56 struct GNUNET_DHTU_Source *prev;
57 57
58 /** 58 /**
59 * Position of this peer in the DHT.
60 */
61 struct GNUNET_DHTU_HashKey id;
62
63 /**
59 * Application context for this source. 64 * Application context for this source.
60 */ 65 */
61 void *app_ctx; 66 void *app_ctx;
@@ -66,11 +71,6 @@ struct GNUNET_DHTU_Source
66 char *address; 71 char *address;
67 72
68 /** 73 /**
69 * Hash of the IP address.
70 */
71 struct GNUNET_DHTU_Hash id;
72
73 /**
74 * My actual address. 74 * My actual address.
75 */ 75 */
76 struct sockaddr_storage addr; 76 struct sockaddr_storage addr;
@@ -111,11 +111,6 @@ struct GNUNET_DHTU_Target
111 void *app_ctx; 111 void *app_ctx;
112 112
113 /** 113 /**
114 * Hash of the IP address.
115 */
116 struct GNUNET_DHTU_Hash id;
117
118 /**
119 * Head of preferences expressed for this target. 114 * Head of preferences expressed for this target.
120 */ 115 */
121 struct GNUNET_DHTU_PreferenceHandle *ph_head; 116 struct GNUNET_DHTU_PreferenceHandle *ph_head;
@@ -126,6 +121,11 @@ struct GNUNET_DHTU_Target
126 struct GNUNET_DHTU_PreferenceHandle *ph_tail; 121 struct GNUNET_DHTU_PreferenceHandle *ph_tail;
127 122
128 /** 123 /**
124 * Position of this peer in the DHT.
125 */
126 struct GNUNET_DHTU_HashKey id;
127
128 /**
129 * Target IP address. 129 * Target IP address.
130 */ 130 */
131 struct sockaddr_storage addr; 131 struct sockaddr_storage addr;
@@ -229,48 +229,6 @@ struct Plugin
229 229
230 230
231/** 231/**
232 * Use our private key to sign a message.
233 *
234 * @param cls closure
235 * @param pk our private key to sign with
236 * @param purpose what to sign
237 * @param[out] signature, allocated on heap and returned
238 * @return -1 on error, otherwise number of bytes in @a sig
239 */
240static ssize_t
241ip_sign (void *cls,
242 const struct GNUNET_DHTU_PrivateKey *pk,
243 const struct GNUNET_CRYPTO_EccSignaturePurpose *purpose,
244 void **sig)
245{
246 return 0;
247}
248
249
250/**
251 * Verify signature in @a sig over @a purpose.
252 *
253 * @param cls closure
254 * @param pk public key to verify signature of
255 * @param purpose what was being signed
256 * @param sig signature data
257 * @param sig_size number of bytes in @a sig
258 * @return #GNUNET_OK if signature is valid
259 * #GNUNET_NO if signatures are not supported
260 * #GNUNET_SYSERR if signature is invalid
261 */
262static enum GNUNET_GenericReturnValue
263ip_verify (void *cls,
264 const struct GNUNET_DHTU_PublicKey *pk,
265 const struct GNUNET_CRYPTO_EccSignaturePurpose *purpose,
266 const void *sig,
267 size_t sig_size)
268{
269 return GNUNET_NO;
270}
271
272
273/**
274 * Create a target to which we may send traffic. 232 * Create a target to which we may send traffic.
275 * 233 *
276 * @param plugin our plugin 234 * @param plugin our plugin
@@ -283,7 +241,6 @@ create_target (struct Plugin *plugin,
283 const struct sockaddr *addr, 241 const struct sockaddr *addr,
284 socklen_t addrlen) 242 socklen_t addrlen)
285{ 243{
286 static struct GNUNET_DHTU_PublicKey pk;
287 struct GNUNET_DHTU_Target *dst; 244 struct GNUNET_DHTU_Target *dst;
288 245
289 if (MAX_DESTS > 246 if (MAX_DESTS >
@@ -316,7 +273,6 @@ create_target (struct Plugin *plugin,
316 GNUNET_assert (NULL == dst->ph_head); 273 GNUNET_assert (NULL == dst->ph_head);
317 GNUNET_free (dst); 274 GNUNET_free (dst);
318 } 275 }
319 pk.size = htons (sizeof (pk));
320 dst = GNUNET_new (struct GNUNET_DHTU_Target); 276 dst = GNUNET_new (struct GNUNET_DHTU_Target);
321 dst->addrlen = addrlen; 277 dst->addrlen = addrlen;
322 memcpy (&dst->addr, 278 memcpy (&dst->addr,
@@ -331,7 +287,7 @@ create_target (struct Plugin *plugin,
331 GNUNET_assert (sizeof (struct sockaddr_in) == addrlen); 287 GNUNET_assert (sizeof (struct sockaddr_in) == addrlen);
332 GNUNET_CRYPTO_hash (&s4->sin_addr, 288 GNUNET_CRYPTO_hash (&s4->sin_addr,
333 sizeof (struct in_addr), 289 sizeof (struct in_addr),
334 &dst->id.hc); 290 &dst->id.sha512);
335 } 291 }
336 break; 292 break;
337 case AF_INET6: 293 case AF_INET6:
@@ -341,7 +297,7 @@ create_target (struct Plugin *plugin,
341 GNUNET_assert (sizeof (struct sockaddr_in6) == addrlen); 297 GNUNET_assert (sizeof (struct sockaddr_in6) == addrlen);
342 GNUNET_CRYPTO_hash (&s6->sin6_addr, 298 GNUNET_CRYPTO_hash (&s6->sin6_addr,
343 sizeof (struct in6_addr), 299 sizeof (struct in6_addr),
344 &dst->id.hc); 300 &dst->id.sha512);
345 } 301 }
346 break; 302 break;
347 default: 303 default:
@@ -353,9 +309,8 @@ create_target (struct Plugin *plugin,
353 plugin->dst_tail, 309 plugin->dst_tail,
354 dst); 310 dst);
355 plugin->env->connect_cb (plugin->env->cls, 311 plugin->env->connect_cb (plugin->env->cls,
356 &pk,
357 &dst->id,
358 dst, 312 dst,
313 &dst->id,
359 &dst->app_ctx); 314 &dst->app_ctx);
360 return dst; 315 return dst;
361} 316}
@@ -585,7 +540,7 @@ create_source (struct Plugin *plugin,
585 GNUNET_assert (sizeof (struct sockaddr_in) == addrlen); 540 GNUNET_assert (sizeof (struct sockaddr_in) == addrlen);
586 GNUNET_CRYPTO_hash (&s4->sin_addr, 541 GNUNET_CRYPTO_hash (&s4->sin_addr,
587 sizeof (struct in_addr), 542 sizeof (struct in_addr),
588 &src->id.hc); 543 &src->id.sha512);
589 GNUNET_asprintf (&src->address, 544 GNUNET_asprintf (&src->address,
590 "ip+udp://%s:%u", 545 "ip+udp://%s:%u",
591 inet_ntop (AF_INET, 546 inet_ntop (AF_INET,
@@ -603,7 +558,7 @@ create_source (struct Plugin *plugin,
603 GNUNET_assert (sizeof (struct sockaddr_in6) == addrlen); 558 GNUNET_assert (sizeof (struct sockaddr_in6) == addrlen);
604 GNUNET_CRYPTO_hash (&s6->sin6_addr, 559 GNUNET_CRYPTO_hash (&s6->sin6_addr,
605 sizeof (struct in6_addr), 560 sizeof (struct in6_addr),
606 &src->id.hc); 561 &src->id.sha512);
607 GNUNET_asprintf (&src->address, 562 GNUNET_asprintf (&src->address,
608 "ip+udp://[%s]:%u", 563 "ip+udp://[%s]:%u",
609 inet_ntop (AF_INET6, 564 inet_ntop (AF_INET6,
@@ -623,7 +578,6 @@ create_source (struct Plugin *plugin,
623 src); 578 src);
624 plugin->env->address_add_cb (plugin->env->cls, 579 plugin->env->address_add_cb (plugin->env->cls,
625 &src->id, 580 &src->id,
626 NULL, /* no key */
627 src->address, 581 src->address,
628 src, 582 src,
629 &src->app_ctx); 583 &src->app_ctx);
@@ -1023,8 +977,6 @@ libgnunet_plugin_dhtu_ip_init (void *cls)
1023 plugin); 977 plugin);
1024 api = GNUNET_new (struct GNUNET_DHTU_PluginFunctions); 978 api = GNUNET_new (struct GNUNET_DHTU_PluginFunctions);
1025 api->cls = plugin; 979 api->cls = plugin;
1026 api->sign = &ip_sign;
1027 api->verify = &ip_verify;
1028 api->try_connect = &ip_try_connect; 980 api->try_connect = &ip_try_connect;
1029 api->hold = &ip_hold; 981 api->hold = &ip_hold;
1030 api->drop = &ip_drop; 982 api->drop = &ip_drop;