aboutsummaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorNic Eigel <nic@eigel.ch>2024-01-16 22:37:31 +0100
committerNic Eigel <nic@eigel.ch>2024-01-16 22:37:31 +0100
commitb5de0afa73c0b8f7bcf988e2bc00f07f4f6cf42e (patch)
treed0f7e4f65205a31db3de0b12b42e98991aefa079 /src/include
parent45b110edb2b4fd39c56f433c5c0a7f93cd29d4da (diff)
parentec522a445a2a00e9000c937e61940c7ac9c4b79d (diff)
downloadexchange-b5de0afa73c0b8f7bcf988e2bc00f07f4f6cf42e.tar.xz
Merge branch 'master' of git+ssh://git.taler.net/exchange
Diffstat (limited to 'src/include')
-rw-r--r--src/include/taler_crypto_lib.h30
-rw-r--r--src/include/taler_exchange_service.h11
-rw-r--r--src/include/taler_pq_lib.h4
-rw-r--r--src/include/taler_util.h5
4 files changed, 30 insertions, 20 deletions
diff --git a/src/include/taler_crypto_lib.h b/src/include/taler_crypto_lib.h
index 9e074a0c4..b872af08d 100644
--- a/src/include/taler_crypto_lib.h
+++ b/src/include/taler_crypto_lib.h
@@ -1363,7 +1363,7 @@ TALER_denom_ewv_rsa_singleton (void);
* @param bi_src blinding input values to copy
*/
void
-TALER_denom_ewv_deep_copy (
+TALER_denom_ewv_copy (
struct TALER_ExchangeWithdrawValues *bi_dst,
const struct TALER_ExchangeWithdrawValues *bi_src);
@@ -1559,8 +1559,8 @@ TALER_denom_pub_hash (const struct TALER_DenominationPublicKey *denom_pub,
* @param denom_src public key to copy
*/
void
-TALER_denom_pub_deep_copy (struct TALER_DenominationPublicKey *denom_dst,
- const struct TALER_DenominationPublicKey *denom_src);
+TALER_denom_pub_copy (struct TALER_DenominationPublicKey *denom_dst,
+ const struct TALER_DenominationPublicKey *denom_src);
/**
@@ -1571,8 +1571,8 @@ TALER_denom_pub_deep_copy (struct TALER_DenominationPublicKey *denom_dst,
* @param denom_src public key to copy
*/
void
-TALER_denom_sig_deep_copy (struct TALER_DenominationSignature *denom_dst,
- const struct TALER_DenominationSignature *denom_src);
+TALER_denom_sig_copy (struct TALER_DenominationSignature *denom_dst,
+ const struct TALER_DenominationSignature *denom_src);
/**
@@ -1583,7 +1583,7 @@ TALER_denom_sig_deep_copy (struct TALER_DenominationSignature *denom_dst,
* @param denom_src public key to copy
*/
void
-TALER_blinded_denom_sig_deep_copy (
+TALER_blinded_denom_sig_copy (
struct TALER_BlindedDenominationSignature *denom_dst,
const struct TALER_BlindedDenominationSignature *denom_src);
@@ -2804,15 +2804,15 @@ TALER_CRYPTO_helper_esign_sign_ (
* @return the error code (or #TALER_EC_NONE on success)
*/
#define TALER_CRYPTO_helper_esign_sign(esh,ps,epub,esig) ( \
- /* check size is set correctly */ \
- GNUNET_assert (ntohl ((ps)->purpose.size) == sizeof (*ps)), \
- /* check 'ps' begins with the purpose */ \
- GNUNET_static_assert (((void*) (ps)) == \
- ((void*) &(ps)->purpose)), \
- TALER_CRYPTO_helper_esign_sign_ (esh, \
- &(ps)->purpose, \
- epub, \
- esig) )
+ /* check size is set correctly */ \
+ GNUNET_assert (ntohl ((ps)->purpose.size) == sizeof (*ps)), \
+ /* check 'ps' begins with the purpose */ \
+ GNUNET_static_assert (((void*) (ps)) == \
+ ((void*) &(ps)->purpose)), \
+ TALER_CRYPTO_helper_esign_sign_ (esh, \
+ &(ps)->purpose, \
+ epub, \
+ esig) )
/**
diff --git a/src/include/taler_exchange_service.h b/src/include/taler_exchange_service.h
index b2e513341..8a59f157f 100644
--- a/src/include/taler_exchange_service.h
+++ b/src/include/taler_exchange_service.h
@@ -1,6 +1,6 @@
/*
This file is part of TALER
- Copyright (C) 2014-2023 Taler Systems SA
+ Copyright (C) 2014-2024 Taler Systems SA
TALER is free software; you can redistribute it and/or modify it under the
terms of the GNU Affero General Public License as published by the Free Software
@@ -2591,7 +2591,8 @@ typedef void
/**
* Withdraw multiple coins from the exchange using a /reserves/$RESERVE_PUB/batch-withdraw
* request. This API is typically used by a wallet to withdraw many coins from a
- * reserve.
+ * reserve. The blind signatures are unblinded and verified before being returned
+ * to the caller at @a res_cb.
*
* Note that to ensure that no money is lost in case of hardware
* failures, the caller must have committed (most of) the arguments to
@@ -2688,7 +2689,11 @@ struct TALER_EXCHANGE_Withdraw2Handle;
/**
* Withdraw a coin from the exchange using a /reserves/$RESERVE_PUB/withdraw
* request. This API is typically used by a merchant to withdraw a tip
- * where the blinding factor is unknown to the merchant.
+ * where the blinding factor is unknown to the merchant. Note that unlike
+ * the #TALER_EXCHANGE_withdraw() API, this API neither unblinds the signatures
+ * nor can it verify that the exchange signatures are valid, so these tasks
+ * are left to the caller. Wallets probably should use #TALER_EXCHANGE_withdraw()
+ * which integrates these steps.
*
* Note that to ensure that no money is lost in case of hardware
* failures, the caller must have committed (most of) the arguments to
diff --git a/src/include/taler_pq_lib.h b/src/include/taler_pq_lib.h
index cf9f7c02f..6fae8562a 100644
--- a/src/include/taler_pq_lib.h
+++ b/src/include/taler_pq_lib.h
@@ -30,6 +30,10 @@
#include <gnunet/gnunet_pq_lib.h>
#include "taler_util.h"
+/**
+ * API version. Bump on every change.
+ */
+#define TALER_PQ_VERSION 0x09040000
/**
* Generate query parameter (as record tuple) for an amount, consisting
diff --git a/src/include/taler_util.h b/src/include/taler_util.h
index 7d5542a1b..e895c3445 100644
--- a/src/include/taler_util.h
+++ b/src/include/taler_util.h
@@ -1,6 +1,6 @@
/*
This file is part of TALER
- Copyright (C) 2014-2023 Taler Systems SA
+ Copyright (C) 2014-2024 Taler Systems SA
TALER is free software; you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
@@ -17,6 +17,7 @@
* @file include/taler_util.h
* @brief Interface for common utility functions
* @author Sree Harsha Totakura <sreeharsha@totakura.in>
+ * @author Christian Grothoff
*/
#ifndef TALER_UTIL_H
#define TALER_UTIL_H
@@ -33,7 +34,7 @@
* Version of the Taler API, in hex.
* Thus 0.8.4-1 = 0x00080401.
*/
-#define TALER_API_VERSION 0x00090200
+#define TALER_API_VERSION 0x00090400
/**
* Stringify operator.