From 036d4cb71ac1abe1990c936ee1f3b2cbf15d14c1 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Thu, 29 Jul 2021 13:04:55 +0200 Subject: secmod: services create their own client dirs with correct permissions --- src/util/crypto_helper_esign.c | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) (limited to 'src/util/crypto_helper_esign.c') diff --git a/src/util/crypto_helper_esign.c b/src/util/crypto_helper_esign.c index a1fb9319d..d5baa9348 100644 --- a/src/util/crypto_helper_esign.c +++ b/src/util/crypto_helper_esign.c @@ -229,26 +229,33 @@ TALER_CRYPTO_helper_esign_connect ( if (GNUNET_OK != GNUNET_CONFIGURATION_get_value_filename (cfg, - "PATHS", - "TALER_RUNTIME_DIR", + "taler-exchange-secmod-eddsa", + "CLIENT_DIR", &tmpdir)) { - GNUNET_log_config_missing (GNUNET_ERROR_TYPE_WARNING, - "PATHS", - "TALER_RUNTIME_DIR"); - tmpdir = GNUNET_strdup ("/tmp"); + GNUNET_log_config_missing (GNUNET_ERROR_TYPE_ERROR, + "taler-exchange-secmod-eddsa", + "CLIENT_DIR"); + GNUNET_free (esh); + return NULL; } GNUNET_asprintf (&template, - "%s/crypto-eddsa-client/cli", + "%s/cli", tmpdir); - GNUNET_free (tmpdir); + /* We expect the service to create the client directory */ if (GNUNET_OK != - GNUNET_DISK_directory_create_for_file (template)) + GNUNET_DISK_directory_test (tmpdir, + GNUNET_YES)) { + GNUNET_log (GNUNET_ERROR_TYPE_ERROR, + "Unable to read secmod client directory (%s)\n", + tmpdir); GNUNET_free (esh); GNUNET_free (template); + GNUNET_free (tmpdir); return NULL; } + GNUNET_free (tmpdir); esh->template = template; if (strlen (template) >= sizeof (esh->sa.sun_path)) { -- cgit v1.2.3