aboutsummaryrefslogtreecommitdiff
path: root/src/fs
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2020-04-11 21:43:28 +0200
committerChristian Grothoff <christian@grothoff.org>2020-04-11 21:43:34 +0200
commit90ff9edfa9c5fcfa3a36d1653ff105e89b888e21 (patch)
tree780a2071f5072c8e8e044db741eb295c3f3ea2a7 /src/fs
parent3bcfe59f1ce533246bda271f00b3ee957cae304d (diff)
downloadgnunet-90ff9edfa9c5fcfa3a36d1653ff105e89b888e21.tar.gz
gnunet-90ff9edfa9c5fcfa3a36d1653ff105e89b888e21.zip
fixing #6149
Diffstat (limited to 'src/fs')
-rw-r--r--src/fs/gnunet-service-fs.c19
-rw-r--r--src/fs/test_fs_namespace.c16
-rw-r--r--src/fs/test_fs_namespace_list_updateable.c21
-rw-r--r--src/fs/test_fs_uri.c14
4 files changed, 38 insertions, 32 deletions
diff --git a/src/fs/gnunet-service-fs.c b/src/fs/gnunet-service-fs.c
index 29e6de9d5..cf9069918 100644
--- a/src/fs/gnunet-service-fs.c
+++ b/src/fs/gnunet-service-fs.c
@@ -315,7 +315,7 @@ static struct GNUNET_CONFIGURATION_Handle *block_cfg;
315/** 315/**
316 * Private key of this peer. Used to sign LOC URI requests. 316 * Private key of this peer. Used to sign LOC URI requests.
317 */ 317 */
318static struct GNUNET_CRYPTO_EddsaPrivateKey *pk; 318static struct GNUNET_CRYPTO_EddsaPrivateKey pk;
319 319
320/** 320/**
321 * ID of our task that we use to age the cover counters. 321 * ID of our task that we use to age the cover counters.
@@ -939,7 +939,7 @@ handle_client_loc_sign (void *cls,
939 base.data.chk.chk = msg->chk; 939 base.data.chk.chk = msg->chk;
940 base.data.chk.file_length = GNUNET_ntohll (msg->file_length); 940 base.data.chk.file_length = GNUNET_ntohll (msg->file_length);
941 loc = GNUNET_FS_uri_loc_create (&base, 941 loc = GNUNET_FS_uri_loc_create (&base,
942 pk, 942 &pk,
943 GNUNET_TIME_absolute_ntoh ( 943 GNUNET_TIME_absolute_ntoh (
944 msg->expiration_time)); 944 msg->expiration_time));
945 env = GNUNET_MQ_msg (resp, 945 env = GNUNET_MQ_msg (resp,
@@ -1283,10 +1283,19 @@ main_init (const struct GNUNET_CONFIGURATION_Handle *c)
1283 GNUNET_SCHEDULER_shutdown (); 1283 GNUNET_SCHEDULER_shutdown ();
1284 return GNUNET_SYSERR; 1284 return GNUNET_SYSERR;
1285 } 1285 }
1286 pk = GNUNET_CRYPTO_eddsa_key_create_from_file (keyfile); 1286 if (GNUNET_SYSERR ==
1287 GNUNET_CRYPTO_eddsa_key_from_file (keyfile,
1288 GNUNET_YES,
1289 &pk))
1290 {
1291 GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
1292 "Failed to setup peer's private key\n");
1293 GNUNET_SCHEDULER_shutdown ();
1294 GNUNET_free (keyfile);
1295 return GNUNET_SYSERR;
1296 }
1287 GNUNET_free (keyfile); 1297 GNUNET_free (keyfile);
1288 GNUNET_assert (NULL != pk); 1298 GNUNET_CRYPTO_eddsa_key_get_public (&pk,
1289 GNUNET_CRYPTO_eddsa_key_get_public (pk,
1290 &GSF_my_id.public_key); 1299 &GSF_my_id.public_key);
1291 1300
1292 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 1301 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
diff --git a/src/fs/test_fs_namespace.c b/src/fs/test_fs_namespace.c
index cdcb4d8fd..484884243 100644
--- a/src/fs/test_fs_namespace.c
+++ b/src/fs/test_fs_namespace.c
@@ -239,7 +239,7 @@ static void
239adv_cont (void *cls, const struct GNUNET_FS_Uri *uri, const char *emsg) 239adv_cont (void *cls, const struct GNUNET_FS_Uri *uri, const char *emsg)
240{ 240{
241 struct GNUNET_CONTAINER_MetaData *meta; 241 struct GNUNET_CONTAINER_MetaData *meta;
242 struct GNUNET_CRYPTO_EcdsaPrivateKey *ns; 242 struct GNUNET_CRYPTO_EcdsaPrivateKey ns;
243 struct GNUNET_FS_BlockOptions bo; 243 struct GNUNET_FS_BlockOptions bo;
244 244
245 if (NULL != emsg) 245 if (NULL != emsg)
@@ -249,7 +249,7 @@ adv_cont (void *cls, const struct GNUNET_FS_Uri *uri, const char *emsg)
249 GNUNET_FS_stop (fs); 249 GNUNET_FS_stop (fs);
250 return; 250 return;
251 } 251 }
252 ns = GNUNET_CRYPTO_ecdsa_key_create (); 252 GNUNET_CRYPTO_ecdsa_key_create (&ns);
253 meta = GNUNET_CONTAINER_meta_data_create (); 253 meta = GNUNET_CONTAINER_meta_data_create ();
254 sks_expect_uri = GNUNET_FS_uri_dup (uri); 254 sks_expect_uri = GNUNET_FS_uri_dup (uri);
255 bo.content_priority = 1; 255 bo.content_priority = 1;
@@ -257,24 +257,23 @@ adv_cont (void *cls, const struct GNUNET_FS_Uri *uri, const char *emsg)
257 bo.replication_level = 0; 257 bo.replication_level = 0;
258 bo.expiration_time = 258 bo.expiration_time =
259 GNUNET_TIME_relative_to_absolute (GNUNET_TIME_UNIT_MINUTES); 259 GNUNET_TIME_relative_to_absolute (GNUNET_TIME_UNIT_MINUTES);
260 GNUNET_CRYPTO_ecdsa_key_get_public (ns, &nsid); 260 GNUNET_CRYPTO_ecdsa_key_get_public (&ns,
261 GNUNET_FS_publish_sks (fs, ns, "this", "next", meta, uri, 261 &nsid);
262 GNUNET_FS_publish_sks (fs,
263 &ns, "this", "next", meta, uri,
262 &bo, GNUNET_FS_PUBLISH_OPTION_NONE, &sks_cont, NULL); 264 &bo, GNUNET_FS_PUBLISH_OPTION_NONE, &sks_cont, NULL);
263 GNUNET_CONTAINER_meta_data_destroy (meta); 265 GNUNET_CONTAINER_meta_data_destroy (meta);
264 GNUNET_free (ns);
265} 266}
266 267
267 268
268static void 269static void
269testNamespace () 270testNamespace (void)
270{ 271{
271 struct GNUNET_CRYPTO_EcdsaPrivateKey *ns;
272 struct GNUNET_FS_BlockOptions bo; 272 struct GNUNET_FS_BlockOptions bo;
273 struct GNUNET_CONTAINER_MetaData *meta; 273 struct GNUNET_CONTAINER_MetaData *meta;
274 struct GNUNET_FS_Uri *ksk_uri; 274 struct GNUNET_FS_Uri *ksk_uri;
275 struct GNUNET_FS_Uri *sks_uri; 275 struct GNUNET_FS_Uri *sks_uri;
276 276
277 ns = GNUNET_CRYPTO_ecdsa_key_create ();
278 meta = GNUNET_CONTAINER_meta_data_create (); 277 meta = GNUNET_CONTAINER_meta_data_create ();
279 ksk_uri = GNUNET_FS_uri_parse ("gnunet://fs/ksk/testnsa", NULL); 278 ksk_uri = GNUNET_FS_uri_parse ("gnunet://fs/ksk/testnsa", NULL);
280 bo.content_priority = 1; 279 bo.content_priority = 1;
@@ -293,7 +292,6 @@ testNamespace ()
293 NULL); 292 NULL);
294 GNUNET_FS_uri_destroy (ksk_uri); 293 GNUNET_FS_uri_destroy (ksk_uri);
295 GNUNET_CONTAINER_meta_data_destroy (meta); 294 GNUNET_CONTAINER_meta_data_destroy (meta);
296 GNUNET_free (ns);
297} 295}
298 296
299 297
diff --git a/src/fs/test_fs_namespace_list_updateable.c b/src/fs/test_fs_namespace_list_updateable.c
index 4311f0110..2132220fb 100644
--- a/src/fs/test_fs_namespace_list_updateable.c
+++ b/src/fs/test_fs_namespace_list_updateable.c
@@ -33,7 +33,7 @@ static struct GNUNET_FS_Handle *fs;
33 33
34static int err; 34static int err;
35 35
36static struct GNUNET_CRYPTO_EcdsaPrivateKey *ns; 36static struct GNUNET_CRYPTO_EcdsaPrivateKey ns;
37 37
38static struct GNUNET_CONTAINER_MetaData *meta; 38static struct GNUNET_CONTAINER_MetaData *meta;
39 39
@@ -58,8 +58,6 @@ do_shutdown ()
58 GNUNET_FS_uri_destroy (uri_this); 58 GNUNET_FS_uri_destroy (uri_this);
59 if (uri_next != NULL) 59 if (uri_next != NULL)
60 GNUNET_FS_uri_destroy (uri_next); 60 GNUNET_FS_uri_destroy (uri_next);
61 if (ns != NULL)
62 GNUNET_free (ns);
63 if (meta != NULL) 61 if (meta != NULL)
64 GNUNET_CONTAINER_meta_data_destroy (meta); 62 GNUNET_CONTAINER_meta_data_destroy (meta);
65} 63}
@@ -87,7 +85,7 @@ check_this_next (void *cls, const char *last_id,
87 GNUNET_break (0 == strcmp (next_id, "next")); 85 GNUNET_break (0 == strcmp (next_id, "next"));
88 err -= 2; 86 err -= 2;
89 err += 4; 87 err += 4;
90 GNUNET_FS_namespace_list_updateable (fs, ns, next_id, &check_next, NULL); 88 GNUNET_FS_namespace_list_updateable (fs, &ns, next_id, &check_next, NULL);
91} 89}
92 90
93 91
@@ -96,7 +94,7 @@ sks_cont_next (void *cls, const struct GNUNET_FS_Uri *uri, const char *emsg)
96{ 94{
97 GNUNET_assert (NULL == emsg); 95 GNUNET_assert (NULL == emsg);
98 err += 2; 96 err += 2;
99 GNUNET_FS_namespace_list_updateable (fs, ns, NULL, &check_this_next, NULL); 97 GNUNET_FS_namespace_list_updateable (fs, &ns, NULL, &check_this_next, NULL);
100} 98}
101 99
102 100
@@ -117,17 +115,17 @@ sks_cont_this (void *cls, const struct GNUNET_FS_Uri *uri, const char *emsg)
117{ 115{
118 GNUNET_assert (NULL == emsg); 116 GNUNET_assert (NULL == emsg);
119 err = 1; 117 err = 1;
120 GNUNET_FS_namespace_list_updateable (fs, ns, NULL, &check_this, NULL); 118 GNUNET_FS_namespace_list_updateable (fs, &ns, NULL, &check_this, NULL);
121 GNUNET_FS_publish_sks (fs, ns, "next", "future", meta, uri_next, &bo, 119 GNUNET_FS_publish_sks (fs,
120 &ns, "next", "future", meta, uri_next, &bo,
122 GNUNET_FS_PUBLISH_OPTION_NONE, &sks_cont_next, NULL); 121 GNUNET_FS_PUBLISH_OPTION_NONE, &sks_cont_next, NULL);
123} 122}
124 123
125 124
126static void 125static void
127testNamespace () 126testNamespace (void)
128{ 127{
129 ns = GNUNET_CRYPTO_ecdsa_key_create (); 128 GNUNET_CRYPTO_ecdsa_key_create (&ns);
130 GNUNET_assert (NULL != ns);
131 bo.content_priority = 1; 129 bo.content_priority = 1;
132 bo.anonymity_level = 1; 130 bo.anonymity_level = 1;
133 bo.replication_level = 0; 131 bo.replication_level = 0;
@@ -145,7 +143,8 @@ testNamespace ()
145 ( 143 (
146 "gnunet://fs/chk/C282GG70GKK41O4551011DO413KFBVTVMQG1OG30I0K4045N0G41HAPB82G680A02JRVVFO8URVRU2F159011DO41000000022RG820.RNVVVVOOLCLK065B5D04HTNVNSIB2AI022RG8200HSLK1CO1000ATQ98824DMA2032LIMG50CG0K057NVUVG200000H000004400000.43", 144 "gnunet://fs/chk/C282GG70GKK41O4551011DO413KFBVTVMQG1OG30I0K4045N0G41HAPB82G680A02JRVVFO8URVRU2F159011DO41000000022RG820.RNVVVVOOLCLK065B5D04HTNVNSIB2AI022RG8200HSLK1CO1000ATQ98824DMA2032LIMG50CG0K057NVUVG200000H000004400000.43",
147 NULL); 145 NULL);
148 GNUNET_FS_publish_sks (fs, ns, "this", "next", meta, uri_this, &bo, 146 GNUNET_FS_publish_sks (fs,
147 &ns, "this", "next", meta, uri_this, &bo,
149 GNUNET_FS_PUBLISH_OPTION_NONE, &sks_cont_this, NULL); 148 GNUNET_FS_PUBLISH_OPTION_NONE, &sks_cont_this, NULL);
150} 149}
151 150
diff --git a/src/fs/test_fs_uri.c b/src/fs/test_fs_uri.c
index 2a324af9a..30eafab9a 100644
--- a/src/fs/test_fs_uri.c
+++ b/src/fs/test_fs_uri.c
@@ -81,7 +81,7 @@ testLocation ()
81 struct GNUNET_FS_Uri *uri2; 81 struct GNUNET_FS_Uri *uri2;
82 struct GNUNET_FS_Uri *baseURI; 82 struct GNUNET_FS_Uri *baseURI;
83 char *emsg; 83 char *emsg;
84 struct GNUNET_CRYPTO_EddsaPrivateKey *pk; 84 struct GNUNET_CRYPTO_EddsaPrivateKey pk;
85 85
86 baseURI = 86 baseURI =
87 GNUNET_FS_uri_parse 87 GNUNET_FS_uri_parse
@@ -90,11 +90,10 @@ testLocation ()
90 &emsg); 90 &emsg);
91 GNUNET_assert (baseURI != NULL); 91 GNUNET_assert (baseURI != NULL);
92 GNUNET_assert (emsg == NULL); 92 GNUNET_assert (emsg == NULL);
93 pk = GNUNET_CRYPTO_eddsa_key_create (); 93 GNUNET_CRYPTO_eddsa_key_create (&pk);
94 uri = GNUNET_FS_uri_loc_create (baseURI, 94 uri = GNUNET_FS_uri_loc_create (baseURI,
95 pk, 95 &pk,
96 GNUNET_TIME_absolute_get ()); 96 GNUNET_TIME_absolute_get ());
97 GNUNET_free (pk);
98 if (NULL == uri) 97 if (NULL == uri)
99 { 98 {
100 GNUNET_break (0); 99 GNUNET_break (0);
@@ -154,7 +153,7 @@ testNamespace (int i)
154 char *uri; 153 char *uri;
155 struct GNUNET_FS_Uri *ret; 154 struct GNUNET_FS_Uri *ret;
156 char *emsg; 155 char *emsg;
157 struct GNUNET_CRYPTO_EcdsaPrivateKey *ph; 156 struct GNUNET_CRYPTO_EcdsaPrivateKey ph;
158 struct GNUNET_CRYPTO_EcdsaPublicKey id; 157 struct GNUNET_CRYPTO_EcdsaPublicKey id;
159 char buf[1024]; 158 char buf[1024];
160 char ubuf[1024]; 159 char ubuf[1024];
@@ -187,8 +186,9 @@ testNamespace (int i)
187 GNUNET_assert (0); 186 GNUNET_assert (0);
188 } 187 }
189 GNUNET_free (emsg); 188 GNUNET_free (emsg);
190 ph = GNUNET_CRYPTO_ecdsa_key_create (); 189 GNUNET_CRYPTO_ecdsa_key_create (&ph);
191 GNUNET_CRYPTO_ecdsa_key_get_public (ph, &id); 190 GNUNET_CRYPTO_ecdsa_key_get_public (&ph,
191 &id);
192 sret = GNUNET_STRINGS_data_to_string (&id, sizeof(id), 192 sret = GNUNET_STRINGS_data_to_string (&id, sizeof(id),
193 ubuf, sizeof(ubuf) - 1); 193 ubuf, sizeof(ubuf) - 1);
194 GNUNET_assert (NULL != sret); 194 GNUNET_assert (NULL != sret);