gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-donau] branch master updated: [donau/secmod] Work on /keys, secmo


From: gnunet
Subject: [taler-donau] branch master updated: [donau/secmod] Work on /keys, secmod now syncing when used with test_donau_api.conf file
Date: Wed, 17 Jan 2024 15:46:02 +0100

This is an automated email from the git hooks/post-receive script.

pius-loosli pushed a commit to branch master
in repository donau.

The following commit(s) were added to refs/heads/master by this push:
     new a43c752  [donau/secmod] Work on /keys, secmod now syncing when used 
with test_donau_api.conf file
a43c752 is described below

commit a43c752cdd68cb33e673f99cb393f958739d55d4
Author: Pius Loosli <loosp2@bfh.ch>
AuthorDate: Wed Jan 17 15:44:37 2024 +0100

    [donau/secmod] Work on /keys, secmod now syncing when used with 
test_donau_api.conf file
---
 src/donau/donau-httpd_keys.c    | 46 ++++++++++++++++++++---------------------
 src/testing/test_donau_api.conf | 21 ++++++++++++++++---
 2 files changed, 40 insertions(+), 27 deletions(-)

diff --git a/src/donau/donau-httpd_keys.c b/src/donau/donau-httpd_keys.c
index a3ec9fc..35d7abf 100644
--- a/src/donau/donau-httpd_keys.c
+++ b/src/donau/donau-httpd_keys.c
@@ -427,17 +427,17 @@ struct HelperState
   /**
    * Handle for the esign/EdDSA helper.
    */
-  struct DONAU_CRYPTO_DonauSignHelper *esh;
+  struct TALER_CRYPTO_ExchangeSignHelper *esh;
 
   /**
    * Handle for the donation_unit/RSA helper.
    */
-  struct DONAU_CRYPTO_RsaDonationUnitHelper *rsadh;
+  struct TALER_CRYPTO_RsaDenominationHelper*rsadh;
 
   /**
    * Handle for the donation_unit/CS helper.
    */
-  struct DONAU_CRYPTO_CsDonationUnitHelper *csdh;
+  struct TALER_CRYPTO_CsDenominationHelper*csdh;
 
   /**
    * Map from H(donation_unit_pub) to `struct HelperDonationUnit` entries.
@@ -732,9 +732,9 @@ clear_response_cache (struct DH_KeyStateHandle *ksh)
 static void
 sync_key_helpers (struct HelperState *hs)
 {
-  DONAU_CRYPTO_helper_rsa_poll (hs->rsadh);
-  DONAU_CRYPTO_helper_cs_poll (hs->csdh);
-//     DONAU_CRYPTO_helper_esign_poll (hs->esh);
+  TALER_CRYPTO_helper_rsa_poll (hs->rsadh);
+  TALER_CRYPTO_helper_cs_poll (hs->csdh);
+  TALER_CRYPTO_helper_esign_poll (hs->esh);
 }
 
 
@@ -905,17 +905,17 @@ destroy_key_helpers (struct HelperState *hs)
   hs->esign_keys = NULL;
   if (NULL != hs->rsadh)
   {
-    DONAU_CRYPTO_helper_rsa_disconnect (hs->rsadh);
+    TALER_CRYPTO_helper_rsa_disconnect (hs->rsadh);
     hs->rsadh = NULL;
   }
   if (NULL != hs->csdh)
   {
-    DONAU_CRYPTO_helper_cs_disconnect (hs->csdh);
+    TALER_CRYPTO_helper_cs_disconnect (hs->csdh);
     hs->csdh = NULL;
   }
   if (NULL != hs->esh)
   {
-    DONAU_CRYPTO_helper_esign_disconnect (hs->esh);
+    TALER_CRYPTO_helper_esign_disconnect (hs->esh);
     hs->esh = NULL;
   }
 }
@@ -1138,7 +1138,7 @@ helper_esign_cb (
   void *cls,
   struct GNUNET_TIME_Timestamp start_time,
   struct GNUNET_TIME_Relative validity_duration,
-  const struct DONAU_DonauPublicKeyP *donau_pub,
+  const struct TALER_ExchangePublicKeyP *donau_pub,
   const struct TALER_SecurityModulePublicKeyP *sm_pub,
   const struct TALER_SecurityModuleSignatureP *sm_sig)
 {
@@ -1167,7 +1167,11 @@ helper_esign_cb (
   hsk = GNUNET_new (struct HelperSignkey);
 //  hsk->start_time = start_time;
 //  hsk->validity_duration = validity_duration;
-  hsk->donau_pub = *donau_pub;
+
+  // need to cast because secmod works with TALER_ExchangePublicKeyP
+  struct DONAU_DonauPublicKeyP donau_pubkey = {.eddsa_pub =
+                                                 donau_pub->eddsa_pub};
+  hsk->donau_pub = donau_pubkey;
   GNUNET_assert (
     GNUNET_OK ==
     GNUNET_CONTAINER_multipeermap_put (
@@ -1217,7 +1221,7 @@ setup_key_helpers (struct HelperState *hs)
     destroy_key_helpers (hs);
     return GNUNET_SYSERR;
   }
-  hs->esh = DONAU_CRYPTO_helper_esign_connect (DH_cfg,
+  hs->esh = TALER_CRYPTO_helper_esign_connect (DH_cfg,
                                                "donau",
                                                &helper_esign_cb,
                                                hs);
@@ -1270,14 +1274,7 @@ build_key_state (struct HelperState *hs)
   /* NOTE: fetches master-signed signkeys, but ALSO those that were revoked! */
   GNUNET_break (GNUNET_OK ==
                 DH_plugin->preflight (DH_plugin->cls));
-  if (qs < 0)
-  {
-    GNUNET_break (GNUNET_DB_STATUS_SOFT_ERROR != qs);
-    GNUNET_break (GNUNET_DB_STATUS_HARD_ERROR != qs);
-    destroy_key_state (ksh,
-                       true);
-    return NULL;
-  }
+
 //      qs = DH_plugin->iterate_donation_units (DH_plugin->cls,
 //                                            &donation_unit_info_cb,
 //                                            ksh);
@@ -1331,15 +1328,15 @@ DH_keys_update_states ()
 
 
 static struct DH_KeyStateHandle*
-DH_keys_get_state (/*bool management_only*/)
+DH_keys_get_state ()
 {
   struct DH_KeyStateHandle *old_ksh;
   struct DH_KeyStateHandle *ksh;
+
   old_ksh = key_state;
   if (NULL == old_ksh)
   {
-    ksh = build_key_state (NULL /*, management_only*/);
-    ksh = NULL;
+    ksh = build_key_state (NULL);
     if (NULL == ksh)
       return NULL;
     key_state = ksh;
@@ -1492,11 +1489,12 @@ DH_handler_keys (struct DH_RequestContext *rc,
   // connection is always initialised
   struct MHD_Connection *connection = rc->connection;
 
-  ksh = DH_keys_get_state (true);
+  ksh = DH_keys_get_state ();
   if (NULL == ksh)
   {
     return TALER_MHD_reply_with_error (connection,
                                        MHD_HTTP_SERVICE_UNAVAILABLE,
+//                                                                             
                                                                         
TALER_EC_DONAU_GENERIC_KEYS_MISSING,
                                        TALER_EC_EXCHANGE_GENERIC_KEYS_MISSING,
                                        "no key state");
   }
diff --git a/src/testing/test_donau_api.conf b/src/testing/test_donau_api.conf
index dbb2ffe..2889d71 100644
--- a/src/testing/test_donau_api.conf
+++ b/src/testing/test_donau_api.conf
@@ -4,6 +4,8 @@
 
 [PATHS]
 TALER_TEST_HOME = test_donau_api_home/
+DONAU_RUNTIME_DIR = ${TMPDIR:-${TMP:-/tmp}}/donau-system-runtime/
+
 
 [taler]
 CURRENCY = EUR
@@ -25,15 +27,28 @@ CONFIG = "postgres:///donaucheck"
 [donaudb]
 # IDLE_RESERVE_EXPIRATION_TIME = 0 s
 
-[donau-exchange-secmod-cs]
+# see src/util/donau-secmod-cs.conf for details
+[donau-secmod-cs]
 LOOKAHEAD_SIGN = "24 days"
 KEY_DIR = ${PWD}/test_donau_api_home/exchange-secmod-cs/keys
+OVERLAP_DURATION = 0
+SM_PRIV_KEY = ${DONAU_RUNTIME_DIR}donau-secmod-cs/secmod-private-key
+UNIXPATH = ${DONAU_RUNTIME_DIR}donau-secmod-cs/server.sock
 
-[donau-exchange-secmod-rsa]
+# see src/util/donau-secmod-rsa.conf for details
+[donau-secmod-rsa]
 LOOKAHEAD_SIGN = "24 days"
 KEY_DIR = ${PWD}/test_donau_api_home/exchange-secmod-rsa/keys
+OVERLAP_DURATION = 0
+SM_PRIV_KEY = ${DONAU_RUNTIME_DIR}donau-secmod-rsa/secmod-private-key
+UNIXPATH = ${DONAU_RUNTIME_DIR}donau-secmod-rsa/server.sock
 
-[donau-exchange-secmod-eddsa]
+# see src/util/donau-secmod-eddsa.conf for details
+[donau-secmod-eddsa]
 LOOKAHEAD_SIGN = "24 days"
 DURATION = "14 days"
 KEY_DIR = ${PWD}/test_donau_api_home/exchange-secmod-eddsa/keys
+OVERLAP_DURATION = 0
+SM_PRIV_KEY = ${DONAU_RUNTIME_DIR}donau-secmod-eddsa/secmod-private-key
+UNIXPATH = ${DONAU_RUNTIME_DIR}donau-secmod-eddsa/server.sock
+

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]