donau

Donation authority for GNU Taler (experimental)
Log | Files | Refs | Submodules | README | LICENSE

commit 9e606094c964d708eb754932e3b44b2ce0c685f0
parent 49ef33e206538eb4ca6d59e2cb1d13d95357c049
Author: Matyja Lukas Adam <lukas.matyja@students.bfh.ch>
Date:   Tue, 31 Oct 2023 09:27:22 +0100

[lib] rewrite compare function

Diffstat:
Msrc/lib/donau_api_handle.c | 23++++++++++++-----------
1 file changed, 12 insertions(+), 11 deletions(-)

diff --git a/src/lib/donau_api_handle.c b/src/lib/donau_api_handle.c @@ -265,28 +265,29 @@ EXITIF_exit: /** - * Compare two denomination keys. Ignores revocation data. + * Compare two donation unit keys. * - * @param denom1 first denomination key - * @param denom2 second denomination key + * @param denom1 first donation unit key + * @param denom2 second donation unit key * @return 0 if the two keys are equal (not necessarily * the same object), 1 otherwise. */ static unsigned int -denoms_cmp (const struct TALER_DONAU_DenomPublicKey *denom1, - const struct TALER_DONAU_DenomPublicKey *denom2) +denoms_cmp (const struct TALER_DonationUnitInformation *du1, + const struct TALER_DonationUnitInformation *du2) { struct TALER_DONAU_DenomPublicKey tmp1; struct TALER_DONAU_DenomPublicKey tmp2; if (0 != - TALER_denom_pub_cmp (&denom1->key, - &denom2->key)) + TALER_denom_pub_cmp (&du1->key, + &du2->key)) return 1; - tmp1 = *denom1; - tmp2 = *denom2; - tmp1.revoked = false; - tmp2.revoked = false; + tmp1 = *du1; + tmp2 = *du2; + if (tmp1.year != tmp2.year) + return 1; + memset (&tmp1.key, 0, sizeof (tmp1.key));