Commit Graph

39 Commits

Author SHA1 Message Date
Christian Grothoff
eccf37e450
-more DB prep work towards reserve auditing with p2p payments 2022-06-15 20:49:39 +02:00
Christian Grothoff
83be3173d4
-preparatory steps to expand auditor to know about purse and history fees 2022-06-14 23:04:43 +02:00
Christian Grothoff
568d27abe5
-include purse deposits in aggregation coin value analysis; note issues discovered with deposit fee waiver logic 2022-06-14 22:43:38 +02:00
Christian Grothoff
747ae5ef09
privatize more signature structs, simplify code 2022-03-31 12:37:39 +02:00
Christian Grothoff
7ff58c3d8f
refactor /wire to include logic to return the wad fee (for W2W payments) 2022-03-05 14:36:55 +01:00
Christian Grothoff
544ba42f44
-big renaming of structs for consistent naming with P suffix 2022-02-21 00:23:23 +01:00
Christian Grothoff
a351bfc4b4
-fix CS nonce reuse check logic 2022-02-17 15:18:09 +01:00
Christian Grothoff
94a5359494
-address misc. fixmes 2022-02-12 00:52:19 +01:00
Christian Grothoff
e7aeec04f4
The current recoup API is broken. I guess this is another example where "trivial" API changes turn out to have (multiple!) unexpected consequences.
The current "/recoup" API does not have clear idempotency semantics, as we've discussed on the phone.  This is already bad by itself, as it makes it hard to write down what the API does other than "whatever the implementation does".

However, it actually breaks correctness in this (admittedly kinda contrived, but not impossible) case:

Say that we have a coin A obtained via withdrawal and a coin B obtained via refreshing coin A. Now the denominations of A gets revoked..

The wallet does a recoup of A for EUR:1.

Now the denomination of B also gets revoked.  The wallet recoups B (incidentally also for EUR:1) and now A can be recouped again for EUR:1.  But now the exchange is in a state where it will refuse a legitimate recoup request for A because the detection for an idempotent request kicks in.

This is IMHO bad API design, and the exchange should simply always recoup the maximum amount.

Furthermore, we usually follow the principle of "API calls that take up DB space are paid".  With the current recoup API, I can do many tiny recoup requests which the exchange then has to store, right?

I guess it would not be a big change to remove the "amount" value from the recoup/recoup-refresh request bodies, right?

- Florian
2022-01-11 12:47:35 +01:00
Christian Grothoff
1acc851deb
-fix recoup ugliness 2021-12-16 20:18:44 +01:00
Christian Grothoff
1a1fafbd43
introducing GNUNET_TIME_Timestamp, recoup now with amounts 2021-12-14 16:04:40 +01:00
Christian Grothoff
ba627bf84c
-fixes 2021-11-05 22:22:47 +01:00
Christian Grothoff
7ac57acb18
fix auditor FTBFS 2021-10-27 09:23:14 +02:00
Christian Grothoff
ca12adced4
-basic logic for withdraw KYC checks 2021-10-14 21:06:47 +02:00
Christian Grothoff
01e06eb715
-remove sessions also from auditor 2021-08-23 08:24:59 +02:00
Christian Grothoff
c559b1c935
complete implementation of long-polling for reserve status; remove support for multi-threaded exchange httpd 2021-08-23 00:00:32 +02:00
Christian Grothoff
33a28efef7
-more json_pack fixes 2021-07-31 21:48:36 +02:00
Christian Grothoff
fde9dc80f6
-more json_pack cleaning 2021-07-31 21:40:48 +02:00
Christian Grothoff
306a08a71c
-rename TALER_amount_get_zero to TALER_amount_set_zero 2021-07-23 13:02:04 +02:00
Christian Grothoff
6ccda0b02e
make reserve balance check used in internal_auditor mode only 2021-01-07 21:25:52 +01:00
Christian Grothoff
9473ef4d86
fix remaining #6679 issues in exchange 2021-01-07 20:52:11 +01:00
Christian Grothoff
40551fa08e
add -i option to taler-auditor 2021-01-06 22:51:55 +01:00
Christian Grothoff
6cceb617af
centralize (most) offline signing/verifying operations into offline_signatures.c 2020-12-04 20:29:18 +01:00
Christian Grothoff
581a39b5b5
improve reporting, also use auditor fee calculation when computing reserve balance updates in case of disagreement on coin value/fee 2020-08-28 20:02:08 +02:00
Christian Grothoff
8f0a4b6095
fix #6133: enable nice shutdown of auditor helpers with CTRL-C 2020-07-15 21:22:44 +02:00
Christian Grothoff
ed5b98a2c2
GNUNET_free_non_null is gone, use GNUNET_free 2020-07-05 16:58:43 +02:00
Christian Grothoff
5ac448738d
fix status code 2020-07-05 16:34:59 +02:00
Christian Grothoff
84a40be0bc
fix #6170 and rest of #6164 2020-04-08 23:52:01 +02:00
Christian Grothoff
1554cc310d
rename a_balance (#6170) 2020-04-08 18:23:21 +02:00
Christian Grothoff
50bc862a68
adapt to new GNUnet sign API (#6164) 2020-04-08 18:18:20 +02:00
Christian Grothoff
4abb38a36e
address FIXME 2020-03-28 22:05:54 +01:00
Christian Grothoff
dff81f4577
more testing for auditor logic 2020-03-24 17:35:18 +01:00
Christian Grothoff
3480146a66
first pass at auditor-coins, also reviewing checks around amount arithmetic, can and should be made harsher 2020-03-22 23:32:06 +01:00
Christian Grothoff
488f759a2d
clean up auditor-reserves logic 2020-03-22 22:39:48 +01:00
Christian Grothoff
bad9c719f8
stylefixes 2020-03-21 19:46:21 +01:00
Christian Grothoff
c277dc2a18
style fixes 2020-03-21 19:39:46 +01:00
Christian Grothoff
88fd81e5da
completing auditor split 2020-03-21 16:09:22 +01:00
Christian Grothoff
a8b8258e12
steps towards new split-auditor logic 2020-03-21 12:56:16 +01:00
Christian Grothoff
2ace9969b7
rename fest on refactored auditor logic 2020-03-21 11:05:51 +01:00