summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/exchange-lib/exchange_api_handle.c4
-rw-r--r--src/exchange-lib/test_exchange_api_keys_cherry_picking.c4
-rw-r--r--src/exchange-lib/test_exchange_api_keys_cherry_picking_new.c7
-rw-r--r--src/include/taler_exchange_service.h7
4 files changed, 19 insertions, 3 deletions
diff --git a/src/exchange-lib/exchange_api_handle.c b/src/exchange-lib/exchange_api_handle.c
index e3f8314f4..026fa87aa 100644
--- a/src/exchange-lib/exchange_api_handle.c
+++ b/src/exchange-lib/exchange_api_handle.c
@@ -867,7 +867,7 @@ keys_completed_cb (void *cls,
{
/* offsets will map 1:1 */
unsigned int off = aold->denom_keys[j] - kd_old.denom_keys;
-
+ /* FIXME(#5315): this should not be an assert! */
GNUNET_assert (off < kd_old.num_denom_keys);
anew->denom_keys[j] = &kd.denom_keys[off];
}
@@ -1127,7 +1127,7 @@ request_keys (struct TALER_EXCHANGE_Handle *exchange)
GNUNET_assert (NULL == exchange->kr);
kr = GNUNET_new (struct KeysRequest);
kr->exchange = exchange;
- if (GNUNET_YES == MAH_handle_is_ready (exchange))
+ if (GNUNET_YES == MAH_handle_is_ready (exchange) && !TALER_EXCHANGE_API_DISABLE_CHERRYPICKING)
{
char *arg;
diff --git a/src/exchange-lib/test_exchange_api_keys_cherry_picking.c b/src/exchange-lib/test_exchange_api_keys_cherry_picking.c
index 0fbf1729a..e5fd22a1a 100644
--- a/src/exchange-lib/test_exchange_api_keys_cherry_picking.c
+++ b/src/exchange-lib/test_exchange_api_keys_cherry_picking.c
@@ -579,7 +579,11 @@ run (void *cls)
/* Re-download and check /keys */
{ .oc = OC_CHECK_KEYS,
.details.check_keys.generation = 2,
+#if TALER_EXCHANGE_API_DISABLE_CHERRYPICKING
+ .details.check_keys.num_denom_keys = 12
+#else
.details.check_keys.num_denom_keys = 8
+#endif
},
{ .oc = OC_END }
};
diff --git a/src/exchange-lib/test_exchange_api_keys_cherry_picking_new.c b/src/exchange-lib/test_exchange_api_keys_cherry_picking_new.c
index 41d5dac84..aa711436a 100644
--- a/src/exchange-lib/test_exchange_api_keys_cherry_picking_new.c
+++ b/src/exchange-lib/test_exchange_api_keys_cherry_picking_new.c
@@ -84,7 +84,12 @@ run (void *cls,
SIGUSR1),
TALER_TESTING_cmd_check_keys ("check-keys-2",
- 2, 8,
+ 2,
+#if TALER_EXCHANGE_API_DISABLE_CHERRYPICKING
+ 12,
+#else
+ 8,
+#endif
is->exchange),
diff --git a/src/include/taler_exchange_service.h b/src/include/taler_exchange_service.h
index 30ea4ce66..54188e36b 100644
--- a/src/include/taler_exchange_service.h
+++ b/src/include/taler_exchange_service.h
@@ -32,6 +32,13 @@
/**
+ * Temporarily disable cherrypicking until it's fixed.
+ * See #5315.
+ */
+#define TALER_EXCHANGE_API_DISABLE_CHERRYPICKING 1
+
+
+/**
* List of possible options to be passed to
* #TALER_EXCHANGE_connect().
*/