diff options
author | Christian Grothoff <christian@grothoff.org> | 2019-06-10 06:50:19 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2019-06-10 06:50:19 +0200 |
commit | 0263818b1ec7ef1115196002f9ba70e5cb766bf4 (patch) | |
tree | 55fe9c04e28ee92d297ee67c3b78cff715f4c14a /src/namestore/gnunet-namestore.c | |
parent | 378e6561f3c706ef0b71e09574af26940a9be3fa (diff) | |
download | gnunet-0263818b1ec7ef1115196002f9ba70e5cb766bf4.tar.gz gnunet-0263818b1ec7ef1115196002f9ba70e5cb766bf4.zip |
add option to pass private key via environment variable
Diffstat (limited to 'src/namestore/gnunet-namestore.c')
-rw-r--r-- | src/namestore/gnunet-namestore.c | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/namestore/gnunet-namestore.c b/src/namestore/gnunet-namestore.c index b678086df..26b5a704b 100644 --- a/src/namestore/gnunet-namestore.c +++ b/src/namestore/gnunet-namestore.c | |||
@@ -1356,6 +1356,8 @@ run (void *cls, | |||
1356 | const char *cfgfile, | 1356 | const char *cfgfile, |
1357 | const struct GNUNET_CONFIGURATION_Handle *cfg) | 1357 | const struct GNUNET_CONFIGURATION_Handle *cfg) |
1358 | { | 1358 | { |
1359 | const char *pkey_str; | ||
1360 | |||
1359 | (void) cls; | 1361 | (void) cls; |
1360 | (void) args; | 1362 | (void) args; |
1361 | (void) cfgfile; | 1363 | (void) cfgfile; |
@@ -1368,7 +1370,25 @@ run (void *cls, | |||
1368 | uri = GNUNET_strdup (args[0]); | 1370 | uri = GNUNET_strdup (args[0]); |
1369 | 1371 | ||
1370 | GNUNET_SCHEDULER_add_shutdown (&do_shutdown, (void *) cfg); | 1372 | GNUNET_SCHEDULER_add_shutdown (&do_shutdown, (void *) cfg); |
1371 | 1373 | pkey_str = getenv ("GNUNET_NAMESTORE_EGO_PRIVATE_KEY"); | |
1374 | if (NULL != pkey_str) | ||
1375 | { | ||
1376 | if (GNUNET_OK != GNUNET_STRINGS_string_to_data (pkey_str, | ||
1377 | strlen (pkey_str), | ||
1378 | &zone_pkey, | ||
1379 | sizeof (zone_pkey))) | ||
1380 | { | ||
1381 | fprintf (stderr, | ||
1382 | "Malformed private key `%s' in $%s\n", | ||
1383 | pkey_str, | ||
1384 | "GNUNET_NAMESTORE_EGO_PRIVATE_KEY"); | ||
1385 | ret = 1; | ||
1386 | GNUNET_SCHEDULER_shutdown (); | ||
1387 | return; | ||
1388 | } | ||
1389 | run_with_zone_pkey (cfg); | ||
1390 | return; | ||
1391 | } | ||
1372 | if (NULL == ego_name) | 1392 | if (NULL == ego_name) |
1373 | { | 1393 | { |
1374 | idh = GNUNET_IDENTITY_connect (cfg, &id_connect_cb, (void *) cfg); | 1394 | idh = GNUNET_IDENTITY_connect (cfg, &id_connect_cb, (void *) cfg); |