Commit Graph

820 Commits

Author SHA1 Message Date
Marcello Stanisci
8ec523afbb
Triggering 409 Conflict for /refresh/reveal 2018-05-16 13:18:23 +02:00
Marcello Stanisci
08824870e6
Triggering doubled /refresh/melt, plus prepare ground for twisting the /refresh/reveal 2018-05-14 22:32:13 +02:00
Marcello Stanisci
40b27a8210
Tests flexibility.
It is now possible to launch the bank from
the testing-lib regardless of it being served
via HTTP or UWSGI.
2018-05-04 15:46:07 +02:00
Christian Grothoff
202827ebda
merging Florian's changes with my wire changes 2018-04-15 12:20:00 +02:00
Florian Dold
1b3bf1a001
disable /keys cherrypicking until #5315 is addressed 2018-04-06 00:58:15 +02:00
Christian Grothoff
aea82d3dcd
allow auditor to operate per-account 2018-04-02 21:12:18 +02:00
Christian Grothoff
cb55c1a3af
Changing configuration structure to enable multiple accounts.
This change enables using multiple wire plugins at the same time.
Also, we now distinguish between the wire plugin (i.e. EBICS or
taler_bank) and the wire method (i.e. SEPA or x-taler-bank) that
the wire plugin is implementing.  The "taler-bank" wire method
was renamed from "test" to "x-taler-bank".

This also changes the format of the /wire response of the exchange,
as we now need to return multiple accounts.  Note that wire fees
are specified per wire method, not per wire account.

taler-exchange-keyup now automatically signs all of the /wire
responses in the location specified by the configuration.

Account identification in wire plugins was changed to use
payto://-URLs instead of method-specific JSON fields.  Signing
and validation of /wire responses was moved from each wire
plugin to a generic validation method in libtalerutil (crypto)
or libtalerjson (for JSON-formatted inputs).
Convenience methods were added to generate JSON for wire accounts
(salting, signing).

Various section and option names were adjusted to streamline the
configuration and make it more consistent overall.  Documentation
was updated as well.
2018-04-02 14:29:44 +02:00
Christian Grothoff
a166ca7fec
fix #5281 for exchange: do preflight check that an old transaction is no longer running by accident 2018-03-12 11:33:10 +01:00
Marcello Stanisci
ed8dfac6db
helpers return exchange base url from config. 2018-02-28 16:15:18 +01:00
Marcello Stanisci
b593d416d6
Bank-lib tests, using the new (libraries-based) style. 2018-02-26 14:12:46 +01:00
Marcello Stanisci
8d5cc9f550
denom pub trait made 'const' 2018-02-21 16:58:18 +01:00
Marcello Stanisci
1e6efdc5f0
no need for a "hash trait" here. Removing code. 2018-02-21 15:13:58 +01:00
Marcello Stanisci
377f35fd7d
adding command to wire transfer to exchange by
reading a merchant instance's (reserve tip) private
key in order to construct the subject.
2018-02-21 12:23:45 +01:00
Marcello Stanisci
b09bd97c3b
test command "fakebank transfer"
takes exchange url in arguments
2018-02-21 09:56:49 +01:00
Marcello Stanisci
6ac3c6cd4d
bank-check test cmd offers exchange url as trait. 2018-02-19 15:38:21 +01:00
Marcello Stanisci
844f39c85e
hash and public key traits. 2018-02-17 15:39:44 +01:00
Marcello Stanisci
7ffc6d0fb9
hash code trait 2018-02-16 11:59:32 +01:00
Marcello Stanisci
513a22c344
offering amount _objects_ as traits (a string version of
it was already implemented).  "Withdraw" command uses it.
2018-02-16 10:57:23 +01:00
Marcello Stanisci
912fd77aa2
fix paste leftover 2018-02-15 16:39:00 +01:00
Marcello Stanisci
d78f66d5e4
adding "order id" trait 2018-02-15 16:36:00 +01:00
Marcello Stanisci
5b1e17617f
offer url trait 2018-02-14 12:46:01 +01:00
Marcello Stanisci
fe6960cce8
Implement new traits-based tests. 2018-02-12 16:12:07 +01:00
Florian Dold
3859a40f24
url construction helpers 2018-01-31 17:47:01 +01:00
Florian Dold
e318edb5e5
use url instead of uri consistently 2018-01-30 01:38:04 +01:00
Christian Grothoff
afe945167a
new error code for #5262 2018-01-22 21:59:14 +01:00
Florian Dold
9f15044d5f
error codes for merchant /check-payment 2018-01-22 13:41:32 +01:00
Christian Grothoff
de092c2c2b
make fakebank_url more robust 2018-01-21 20:10:05 +01:00
Christian Grothoff
652bb0f9c4
finish simplifying main by adding more helpers and macros 2018-01-21 19:57:09 +01:00
Christian Grothoff
3f930c0f6a
more wire transfer variants 2018-01-21 19:21:45 +01:00
Christian Grothoff
a252daa6a1
factor out more helpers 2018-01-21 19:11:27 +01:00
Christian Grothoff
d09beecc8f
integrate sigpipe with ain loop 2018-01-21 18:49:47 +01:00
Christian Grothoff
bba0ec72fa
finish new withdraw command implementation 2018-01-21 16:27:58 +01:00
Christian Grothoff
6ba7747ac3
more traits 2018-01-21 16:01:08 +01:00
Christian Grothoff
82b0eda3ef
new test interpreter architecture, first draft 2018-01-21 15:39:48 +01:00
Christian Grothoff
cd0f9e8f8d
Florian is right, this should be a 409, not 500 2018-01-19 02:29:27 +01:00
Christian Grothoff
5c3d25eb29
implement #5254 2018-01-18 16:55:16 +01:00
Christian Grothoff
c300b88af2
remove dead error code 2018-01-16 11:46:05 +01:00
Christian Grothoff
b31d803c16
add timestamp for /reserve/status deposit events 2018-01-15 15:19:31 +01:00
Florian Dold
acc3a41df8
add pay session signature 2018-01-04 13:47:03 +01:00
Christian Grothoff
5587732f52
fix auditor to properly verify wire fee signatures and more gracefully handle arithmetic amount issue 2018-01-04 00:41:19 +01:00
Christian Grothoff
41b5dde709
implement select_refunds_by_coin in exchangedb plugin 2018-01-02 14:43:15 +01:00
Christian Grothoff
ff0d4bb6eb
add TALER_EXCHANGE_refund2, make sure fee test initializes all amounts; update ChangeLog 2018-01-01 23:28:19 +01:00
Christian Grothoff
4f2ad1051b
change 'f' to 'contribution' in /deposit 2018-01-01 22:28:49 +01:00
Marcello Stanisci
346c351e5f
redefining/adding bank error codes 2017-12-22 21:22:57 +01:00
Marcello Stanisci
8021e7064d
adding more bank's error codes 2017-12-15 16:17:00 +01:00
Christian Grothoff
c182b960f8
remove _admin APIs from libtalerexchange 2017-12-14 13:42:07 +01:00
Christian Grothoff
0f5ef01dd3
nicer error reporting 2017-12-14 13:36:59 +01:00
Christian Grothoff
2d658cef65
need a few more error codes 2017-12-09 23:58:57 +01:00
Christian Grothoff
042616899f
largely fix #5077 2017-12-06 19:24:00 +01:00
Christian Grothoff
5540747ca2
patch to address #5183: always round time before giving it to DB, tolerate DB answering without rounded time 2017-11-30 17:17:37 +01:00
Christian Grothoff
78b77ee8d5
properly document TALER_SIGNATURE_MERCHANT_REFUND_OK 2017-11-30 11:21:51 +01:00
Christian Grothoff
499247a480
fixing #5178 2017-11-29 20:23:08 +01:00
Florian Dold
aa79aca12f
Add error code TIP_QUERY_TIP_ID_UNKNOWN 2017-11-27 15:25:02 +01:00
Christian Grothoff
92d616b076
add last_timestamp to wire auditor progress point; fix confusion in param/result specs between 'auto' and 'absolute time' 2017-11-19 22:12:30 +01:00
Christian Grothoff
8440de1333
work on #5077: reserve_pub vs. wtid issue, add reject functionality to wire plugin API (with stub implementations for now) 2017-11-12 15:46:52 +01:00
Christian Grothoff
c5f9c0ca88
work on making auditor reports nicer (#4962) 2017-11-06 00:03:08 +01:00
Christian Grothoff
b6907bb6bf
clarify soft DB error code - they now could be returned 2017-11-02 14:19:38 +01:00
Christian Grothoff
f3939081d3
define more error codes 2017-11-02 14:03:18 +01:00
Christian Grothoff
0b580d8f68
helps to keep enum values distinct 2017-11-01 12:42:24 +01:00
Christian Grothoff
4f212a11ce
add status code 2017-11-01 12:36:32 +01:00
Christian Grothoff
beeece1d6a
add TALER_EXCHANGE_reserve_withdraw2 function for easy withdrawal of tips 2017-10-31 14:45:15 +01:00
Christian Grothoff
2f2930f1ba
major API refactoring, adding planchet generation and coin extraction APIs to the Taler crypto library, thereby simplifying code in withdraw, refresh, tipping, payback and testcases; slight API incompatibilities to previous versions are introduced 2017-10-31 14:02:54 +01:00
Christian Grothoff
ec8146de92
rename: TALER_setup_planchet -> TALER_planchet_setup_refresh 2017-10-31 12:44:17 +01:00
Christian Grothoff
a491a4709a
rename: TALER_FreshCoinP -> TALER_PlanchetSecretsP, and TALER_setup_fresh_coin -> TALER_setup_planchet 2017-10-31 12:38:14 +01:00
Christian Grothoff
288c7160d7
more error codes for tipping 2017-10-24 00:21:07 +02:00
Christian Grothoff
2cb6c5b9fe
starting with error codes for tipping API 2017-10-22 19:07:07 +02:00
Christian Grothoff
272f1135fc
add exchangedb function for #4961 2017-10-16 17:57:29 +02:00
Christian Grothoff
7a232a0941
add references to Mantis bugs to TODO/FIXME comments in code 2017-10-12 20:56:16 +02:00
Christian Grothoff
cb13afaf54
complete first pass of taler-wre-auditor's wire-out audit logic 2017-10-12 20:46:42 +02:00
Christian Grothoff
332a37292c
handle (most) TEH_KS_acquire errors 2017-10-06 21:54:55 +02:00
Christian Grothoff
6a4f6b1836
also store wire position in auditordb 2017-09-30 20:47:52 +02:00
Christian Grothoff
96e04d33e1
update auditordb API to support logic for taler-wire-auditor 2017-09-30 20:29:19 +02:00
Christian Grothoff
a0d410e01b
fix mapping of auditor sigs to DKs, avoid one hash operation by caching hash value 2017-09-26 15:05:27 +02:00
Christian Grothoff
b46735fbaf
add argument to TALER_EXCHANGE_check_keys_current() to allow forcing the download 2017-09-13 14:08:11 +02:00
Christian Grothoff
6d7645a99b
theoretically finished implementation of #4840 (/keys cherry picking), but by far not done testing 2017-09-13 01:14:31 +02:00
Christian Grothoff
7aa23a39bd
add support for #4840 (/keys cherry picking) to libtalerexchange 2017-09-12 15:34:38 +02:00
Marcello Stanisci
26486e6f21
error code for merchant /pay db transaction 2017-07-25 11:56:15 +02:00
Christian Grothoff
3e111f4263
introducting error code for merchant detecting wire fee inconsistency 2017-07-21 15:18:59 +02:00
Christian Grothoff
1e8d0eb462
implement #5114 2017-07-20 10:00:42 +02:00
Marcello Stanisci
34887e55eb
importing a 'PS' struct from merchant 2017-07-05 14:12:02 +02:00
Marcello Stanisci
932d2b3a25
signature macro to confirm refunds 2017-07-05 09:33:23 +02:00
Christian Grothoff
d77c4160ec
implement logic to check protocol version compatibility (#5035) 2017-07-01 14:15:26 +02:00
Christian Grothoff
f048de9782
preparations for #4840 2017-06-29 20:46:52 +02:00
Christian Grothoff
0ba88250a9
expand set of EC codes to better cover merchant /refund (likely still not perfect) 2017-06-29 14:21:49 +02:00
Christian Grothoff
560051e6b0
migrating auditordb to new API to address #5010 2017-06-24 23:06:44 +02:00
Christian Grothoff
c42d544736
convert rest of exchangedb plugin API to fix #5010-issues 2017-06-24 16:15:42 +02:00
Christian Grothoff
2d662e3f8e
fix #5010 for taler-exchange-aggregator 2017-06-24 12:15:11 +02:00
Christian Grothoff
9aa2e94812
working on #5010 for aggregator 2017-06-24 00:41:41 +02:00
Christian Grothoff
6acb0271d6
address #5010 for wirewatch 2017-06-23 14:37:53 +02:00
Christian Grothoff
ff8633910d
adapt /admin/add/incoming to #5010 2017-06-23 14:13:54 +02:00
Christian Grothoff
d4884c0c60
Fix #5010 for keystate 2017-06-23 13:16:12 +02:00
Christian Grothoff
fbff951e7d
address #5010 for /refresh/melt 2017-06-22 11:49:40 +02:00
Christian Grothoff
87e16541af
incomplete work on fixing #5010 for /refresh/melt 2017-06-20 23:17:57 +02:00
Christian Grothoff
053096475f
fixing #5010 for /refresh/reveal 2017-06-20 22:33:20 +02:00
Christian Grothoff
39db1ae5db
address #5010 for /refresh/link 2017-06-20 13:40:17 +02:00
Christian Grothoff
703c54a279
fix #5010 for /track/transaction 2017-06-19 20:46:24 +02:00
Christian Grothoff
a0c66e7919
fix #5010 for /track/transfer 2017-06-19 20:12:00 +02:00
Christian Grothoff
51ee20102f
address #5010 for /payback 2017-06-19 17:53:42 +02:00
Christian Grothoff
92e6744ac0
address #5010 for /refund 2017-06-19 16:07:34 +02:00
Christian Grothoff
dea0f7c411
fixing #5010 for /reserve/withdraw 2017-06-19 00:17:16 +02:00
Christian Grothoff
2d5b238beb
rework /reserve/history to address #5010 2017-06-19 00:17:15 +02:00
Christian Grothoff
2ec1b055a0
refactoring /deposit towards new transaction style (#5010) 2017-06-19 00:17:15 +02:00
Christian Grothoff
d2c7ef54a7
convert another function for #5010 2017-06-19 00:17:15 +02:00
Christian Grothoff
d66a29e383
convert another function for #5010 2017-06-19 00:17:15 +02:00
Christian Grothoff
0e6c4ba898
work on #5010 2017-06-15 22:10:12 +02:00
Marcello Stanisci
274ec6191f
error code for merchant's /refund 2017-06-14 18:44:44 +02:00
Marcello Stanisci
d7e7cf517a
error code for merchant's /refund 2017-06-14 15:13:13 +02:00
Marcello Stanisci
19633bedbb
error code for merchant's /refund 2017-06-14 11:41:23 +02:00
Marcello Stanisci
5176b25085
error code for merchant's /refund 2017-06-14 11:24:53 +02:00
Christian Grothoff
16b7c26605
modify fakebank API to allow arbitrary subjects, not just well-fromed WTIDs 2017-06-11 15:25:59 +02:00
Christian Grothoff
a57cf67f31
a bit more work on #5010 2017-06-11 02:12:56 +02:00
Christian Grothoff
cad64767d9
match GNUnet API rename, work on #5010 2017-06-11 01:59:09 +02:00
Christian Grothoff
4694810d9d
free auditor data on shutdown (#5050) 2017-06-04 12:13:30 +02:00
Christian Grothoff
1e30d60a25
fixing misc doxygen issues 2017-06-04 11:30:43 +02:00
Christian Grothoff
b217058821
add version to keydata returned by libtalerexchange (#5035) 2017-06-01 23:00:06 +02:00
Florian Dold
85350ced32
rename proposal_data to contract_terms (see #4879) 2017-05-29 01:15:41 +02:00
Christian Grothoff
a5873d0222
more work on #5010 2017-05-25 19:38:34 +02:00
Christian Grothoff
6029ed7db1
starting some initial work on #5010, very incomplete 2017-05-25 02:06:03 +02:00
Christian Grothoff
7c28823caf
handle base32-wire transfer subject being followed by space+exchange base url in wire plugin and fakebank 2017-05-16 11:05:00 +02:00
Christian Grothoff
e6d09d2568
handle error code returned by TALER_amount_subtract in new error case TALER_EC_PAYBACK_COIN_BALANCE_NEGATIVE 2017-05-09 13:33:26 +02:00
Christian Grothoff
8f854fb04c
add 'get_latest_reserve_in_reference' to exchangedb API 2017-05-08 13:31:28 +02:00
Christian Grothoff
20aad54c3e
remove dead transfer details field from reserves_in (API, exchangedb, etc.) 2017-05-08 13:18:36 +02:00
Christian Grothoff
2dcaffe451
move responsibility of converting to wire subject to reserve_pub into wire plugin 2017-05-08 12:57:00 +02:00
Christian Grothoff
5e36e520a5
updates to distinguish clearly between wtid and json transfer details 2017-05-08 12:44:40 +02:00
Christian Grothoff
18a020dd02
implement fakebank support (incl. tests) for #5005/#4964/4959 2017-05-07 21:11:56 +02:00
Christian Grothoff
76545519c6
updating DB schema for new wire history operations and future auditor checks of wire transfers 2017-05-05 13:41:32 +02:00
Christian Grothoff
2c05a4b278
more work on wirewatch 2017-05-05 12:17:48 +02:00
Christian Grothoff
da75b30a25
starting to implement taler-exchange-wirewatch 2017-05-05 11:11:03 +02:00
Christian Grothoff
f4df63e448
adding support for transaction history to wire plugin API (#4959) 2017-05-04 18:35:53 +02:00
Christian Grothoff
234dbcc7b7
switch bank api to new authentication method API 2017-05-04 15:18:43 +02:00
Christian Grothoff
405859d068
implement #4993 2017-05-04 11:19:00 +02:00
Christian Grothoff
27c921c7c4
finished implementing #4956 in principle, but not yet tested 2017-04-20 21:38:02 +02:00
Christian Grothoff
487237381d
fix misc doxygen issues 2017-04-20 07:49:56 +02:00
Christian Grothoff
4bf5236959
implement plugin function for auditor to check reserve closures 2017-04-19 21:28:47 +02:00
Christian Grothoff
13a153616e
implementing database functions towards addressing #4956 2017-04-19 18:44:14 +02:00
Christian Grothoff
c15ff78f0c
implementing #4956-support in libtalerexchange 2017-04-19 14:15:48 +02:00
Christian Grothoff
5e8ef38680
fixing #4980 2017-04-18 21:05:27 +02:00
Christian Grothoff
164c125528
introducing closing fee 2017-04-17 14:01:55 +02:00
Christian Grothoff
62afe341b7
fix #4984 2017-04-16 17:21:26 +02:00
Christian Grothoff
4d4ac495a4
test case of /payback done twice, handle 403-case in /payback handler, thereby also testing coin-with-payback history case in test logic (fixes #3887) 2017-04-16 02:39:11 +02:00
Christian Grothoff
70517233c9
improve test case coverage for exchangedb 2017-04-09 21:28:45 +02:00
Christian Grothoff
11b8710a5c
implement checking of denomination revocation status in auditor 2017-04-08 22:52:32 +02:00
Christian Grothoff
8e9d6c6fd1
extend exchangedb API to allow storing DK revocation information 2017-04-08 22:01:13 +02:00
Christian Grothoff
209076ebd3
implement denomination key revocation logic in exchangedb and taler-exchange-keyup (part of #3887) 2017-04-07 22:37:00 +02:00
Christian Grothoff
4b5efa4e81
towards supporting #3887 in the auditor 2017-04-04 16:27:27 +02:00
Christian Grothoff
4b82a591c5
handle /payback in auditor when checking reserves 2017-04-04 15:38:58 +02:00
Christian Grothoff
cc3aa31732
implement #3887-handling in exchange-lib 2017-04-03 22:45:48 +02:00
Christian Grothoff
29a2f9b345
implement rest of exchange logic for #3887 (return payback information in reserve and coin histories) 2017-04-03 16:40:31 +02:00
Christian Grothoff
b988eb92fc
implement tests for extended DB API 2017-04-02 22:34:45 +02:00
Christian Grothoff
d8542d729a
implement returning /paybacks as part of reserve history (#3887) 2017-04-02 18:02:07 +02:00
Christian Grothoff
94dddbbe82
implementing insertion of payback information in postgres plugin (part of #3887) 2017-04-02 00:05:20 +02:00
Christian Grothoff
b293bda4ac
implement DB plugin function to obtain reserve information, migrate logic to simplified API spec (#3887); use plugin API in /payback DB implementation 2017-04-01 23:43:55 +02:00
Christian Grothoff
21d2613287
first sketch at db module implementation for #3887 2017-03-29 16:42:38 +02:00
Christian Grothoff
722577835f
implement /payback-functions in libtalerexchange.so 2017-03-29 15:44:59 +02:00
Christian Grothoff
b38134ea4a
implement /payback parsing and signature verification 2017-03-29 14:43:54 +02:00
Christian Grothoff
73321daf5a
deal with persisting wire/aggregation fee data in auditor 2017-03-20 04:17:06 +01:00
Christian Grothoff
3fde028650
fix auditor progress point issue 2017-03-20 02:45:33 +01:00
Christian Grothoff
a38fa32484
fixing misc auditor issues 2017-03-20 02:29:33 +01:00
Christian Grothoff
45d96d8168
minor auditor bugfixes 2017-03-19 13:53:50 +01:00
Christian Grothoff
21ae4cc212
add exchangedb API (but no implementation/tests) for /payback handling 2017-03-19 08:38:48 +01:00
Christian Grothoff
a3bb69fb1e
add structs and message types for future implementation of #3887 2017-03-19 07:50:16 +01:00
Christian Grothoff
9b4d0634e1
simplify analysis by returning denom_pub with rest of coin transaction data instead of bothering fetching with coin history 2017-03-19 01:55:37 +01:00
Christian Grothoff
c75ac3b612
revise exchangedb structure eliminating duplicated wire transfer date from aggregations, instead joining it from wire_out when needed 2017-03-19 01:36:15 +01:00
Christian Grothoff
b42ce7e80a
alpha-renaming to better describe what functions/tables do 2017-03-19 01:09:00 +01:00
Christian Grothoff
e4a4a7e193
finish sync_denomination() implementation 2017-03-18 23:03:00 +01:00
Christian Grothoff
0f5ce284c4
deal with some minor FIXMEs in auditor 2017-03-18 22:38:31 +01:00
Christian Grothoff
69ac028a13
add required separate risk balance per denomination to auditordb 2017-03-18 22:20:48 +01:00
Christian Grothoff
a9f9161c3a
simplify auditordb API to match actual requirements better 2017-03-18 22:06:27 +01:00
Christian Grothoff
9cfe47493c
more work on auditor 2017-03-18 17:47:44 +01:00
Christian Grothoff
6a98b07ff2
add wire_out tracking to exchangedb, including deferred constraint, and to aggregator 2017-03-18 03:44:59 +01:00
Christian Grothoff
5a9d7ac835
adjust exchangedb plugin to provide wire_out tracking API 2017-03-18 02:40:27 +01:00
Christian Grothoff
382e3dfedb
implement more audit checks for refunds 2017-03-17 17:49:55 +01:00
Christian Grothoff
8ea9b0dad7
more work on coin/denomination audit 2017-03-17 17:17:07 +01:00
Christian Grothoff
06c2327558
verify deposit signature during audit 2017-03-17 14:09:58 +01:00
Christian Grothoff
6b5bfc57b5
more work on auditor, towards coin/denomination key checks 2017-03-15 19:28:05 +01:00
Christian Grothoff
36195e85ea
skeleton logic for analyze_coins() 2017-03-15 14:19:57 +01:00
Christian Grothoff
54b3a9e930
add required rowid for diagnostics 2017-03-15 13:36:47 +01:00
Christian Grothoff
a3db0d4a8c
introduce 'struct TALER_AUDITORDB_ProgressPoint' 2017-03-15 13:12:45 +01:00
Christian Grothoff
ae3e850c94
update getopt config parsing style to match 'getopt' GNUnet branch API change 2017-03-15 12:01:06 +01:00
Christian Grothoff
296f919ce4
more work on auditor, listing open TODOs 2017-03-14 18:00:17 +01:00
Marcello Stanisci
b06e314dbb
Adding new error code. 2017-03-10 17:43:27 +01:00
Christian Grothoff
0214e426a6
add amount division API and test case 2017-03-06 16:35:30 +01:00
Christian Grothoff
326f3b2a43
add EC codes for merchant 2017-03-05 18:51:47 +01:00
Christian Grothoff
65457396b3
fix use of uninit value 2017-03-05 17:36:58 +01:00
Christian Grothoff
0e15a99504
implement #4937: allow extraction of fees 2017-03-04 18:45:25 +01:00
Christian Grothoff
1c84b3d4af
implementing #4932 2017-03-04 18:09:39 +01:00
Christian Grothoff
6ab67a3a76
implementing #4929 2017-03-04 16:49:33 +01:00
Christian Grothoff
f406f96129
implement #4929: add wire transfer fee to /wire (but not yet charged by aggregator) 2017-03-03 20:31:29 +01:00
Christian Grothoff
4d2faa5ec9
changing wire plugin specification from [exchange]WIREFORMAT to [exchange-wire-PLUGIN]enable=YES/NO 2017-03-03 19:24:08 +01:00
Christian Grothoff
397c718809
implementing #4921: add base URL to wire transfers 2017-03-02 06:26:12 +01:00
Marcello Stanisci
1c08e3dcb1
error code for instance unknown 2017-02-27 11:55:37 +01:00
Florian Dold
92246c3e88
remove transaction_id, only one payment per proposal allowed 2017-02-07 15:09:10 +01:00
Florian Dold
8c820b6916
contract terminology renaming (#4877) 2017-02-06 15:43:06 +01:00
Marcello Stanisci
26d5e08816
h_proposal_data -> hash 2017-02-06 13:54:17 +01:00
Marcello Stanisci
3ead839e3c
h_contract->h_proposal_data 2017-02-04 11:07:15 +01:00
Marcello Stanisci
74fdd928c7
typo 2017-02-03 18:32:03 +01:00
Marcello Stanisci
a60c5e9c97
Renaming's first steps. 2017-02-03 18:26:47 +01:00
Florian Dold
d2302da332
remove redundant fields from ContractPS (#4859) 2017-01-13 16:47:09 +01:00
Florian Dold
c631ae1b60
elaborate on ContractPS 2017-01-12 15:40:43 +01:00
Florian Dold
0589d265ec
comment 2017-01-12 14:58:39 +01:00
Christian Grothoff
a580ac1c42
disable MHD deprecation warnings as we want to be compatible to older releases that simply have not the new symbols (fixing #4845) 2017-01-03 18:41:19 +01:00
Marcello Stanisci
21df5cb161
Error codes for /map/out 2016-12-12 15:05:05 +01:00
Marcello Stanisci
67fdaaef84
db error code for /map/in 2016-12-09 14:55:36 +01:00
Marcello Stanisci
b536d82f90
Syntax error 2016-12-09 14:40:24 +01:00
Marcello Stanisci
c328d745a3
Error code for /map/in (imported by merchant backend) 2016-12-09 14:39:06 +01:00
Christian Grothoff
7d6b8d53d5
addressing #4803: nicer error messages for invalid wire formats 2016-11-18 18:29:18 +01:00
Florian Dold
a80d94ea07 change fractional base to 1e8 2016-11-18 14:58:16 +01:00
Christian Grothoff
7fd6be5cef
add idempotency checks for /refresh/reveal, fixing #4793 2016-11-17 16:37:40 +01:00
Christian Grothoff
bb7c58921e
if reserve history computation reveals database inconsistency, do not abort but return proper error code 2016-11-17 15:33:31 +01:00
Christian Grothoff
e3ec645b0d
change rowid type to uint64_t everywhere; start with reserve-analysis in auditor 2016-11-17 14:31:44 +01:00
tg(x)
247b8e33b3 auditordb postgres plugin: auditor_progress implementation + tests 2016-11-06 14:24:17 +01:00
Christian Grothoff
02d28bc81c
add missing functions to deal with auditor_progress to the auditordb API 2016-11-06 13:39:22 +01:00
Marcello Stanisci
4f304b2745 typo 2016-11-04 14:23:44 +01:00
Marcello Stanisci
7177c5c015 Merge branch 'master' of taler.net:exchange 2016-11-04 14:20:50 +01:00
Marcello Stanisci
1244bcf3a6 Adding error code for conflicting /track/transfer 2016-11-04 14:20:42 +01:00
tg(x)
59fa9d8255 auditordb postgres plugin: sql fixes, callback return value 2016-11-04 00:34:09 +01:00
tg(x)
20a8a569ad auditordb postgres plugin 2016-11-03 13:01:36 +01:00
Marcello Stanisci
88df33632f typo 2016-10-27 11:07:29 +02:00
Christian Grothoff
19f4c50dab
rename and move TALER_EXCHANGE_json_get_error_code to TALER_JSON_get_error_code 2016-10-20 21:19:01 +02:00
Christian Grothoff
63c5706b64
remove redundant exchange_api_common.h header 2016-10-20 21:11:20 +02:00
Christian Grothoff
7341b21fa3
return taler-specific error codes from C API as well
(#4497/4705)
2016-10-20 21:00:40 +02:00
Christian Grothoff
e7875fb261
introducing error codes for the merchant backend 2016-10-20 15:11:12 +02:00
Christian Grothoff
c40a098a91 Merge branch 'master' of ssh://taler.net/exchange 2016-10-20 15:07:56 +02:00
Christian Grothoff
0f4160d4a4
introducing error codes for the merchant backend 2016-10-20 15:07:42 +02:00
Marcello Stanisci
9d5d092dc3 Reverting #4521, pay_deadline strictly regards merchant's policy. 2016-10-20 11:48:47 +02:00
Marcello Stanisci
0830751534 Merge branch 'master' of taler.net:exchange 2016-10-19 23:07:17 +02:00
Marcello Stanisci
9b6717ae3a addressing #4521 2016-10-19 23:07:07 +02:00
Christian Grothoff
70462f0b94
implement #4497/#4705 -- addition of unique numeric error codes -- for the server-side of the exchange 2016-10-18 23:05:29 +02:00
Christian Grothoff
808dc10bf4 add skeletons for new DB API functions 2016-10-09 01:17:37 +02:00
Christian Grothoff
6621ec8fb7 expanding exchange DB API to meet auditor requirements (not implemented, just adding the function signatures) 2016-10-09 00:57:31 +02:00
Christian Grothoff
8bbcf86678 more work on auditordb plugin API 2016-10-08 23:37:55 +02:00
Marcello Stanisci
f03c1175df typo 2016-10-07 18:21:12 +02:00
Christian Grothoff
56efe31c40 Merge branch 'master' of ssh://taler.net:/var/git/exchange 2016-10-07 02:52:39 +02:00
Christian Grothoff
b68adb93c6 adding skeleton code for auditor 2016-10-06 15:17:10 +02:00
Marcello Stanisci
a42155d552 Adding struct to be signed over related to #4702 2016-10-03 14:08:14 +02:00
Marcello Stanisci
9cea8197b5 defining merchant's signature for successful payments 2016-10-03 10:32:17 +02:00
Marcello Stanisci
0b8081fe22 Adding receiver in TALER_ContractPS (#4651) 2016-09-26 16:55:10 +02:00
Christian Grothoff
77f11bcfac include execution time in signed message for /track/transfer (#4578) 2016-09-26 15:08:00 +02:00
Christian Grothoff
df8c011b95 return execution time also from exchange C API (#4578) 2016-09-26 14:58:44 +02:00
Christian Grothoff
302a08b701 implement that /track/transaction returns execution time (#4578) 2016-09-26 14:50:49 +02:00
Christian Grothoff
5a6a3da8e4 updating DB schema to profit from new KDF-based refresh variant 2016-08-11 23:28:33 +02:00
Christian Grothoff
0fd6cf19af mostly working migration of the DH-seeded refresh variant 2016-08-07 23:21:49 +02:00
Christian Grothoff
745719dbc1 first half of changing refresh protocol to derive all key data from DH 2016-08-05 16:08:19 +02:00
Marcello Stanisci
59c6856284 fixing #4594 2016-07-07 17:55:25 +02:00
Christian Grothoff
389c18c18c add file for error codes 2016-06-14 09:50:59 +02:00
Christian Grothoff
6cd71bebbf implement #4569 2016-06-13 16:36:10 +02:00
Christian Grothoff
3672005350 rename source files to match API URIs 2016-06-09 21:43:10 +02:00
Christian Grothoff
bb511560fe move TALER_TrackTransferDetails to taler_crypto_lib.h as it is not exchange-specific 2016-06-09 21:03:07 +02:00
Christian Grothoff
75c04b8af2 rename /deposit/wtid and /wire/deposits to /track/{transaction,transfer} for improved consistency 2016-06-09 19:18:13 +02:00
Christian Grothoff
a7379930d2 turn libfakebank into libtalerfakebank so we can use it for testcases in the merchant 2016-06-08 11:35:28 +02:00
Christian Grothoff
166352e87e add exchange_pub to callbacks 2016-06-07 15:14:44 +02:00
Christian Grothoff
ce3d7c360b add support for /keys cache control (#4036) 2016-05-31 14:32:06 +02:00
Christian Grothoff
eb1fdc105c implement GC logic (#3485) 2016-05-31 09:34:45 +02:00
Christian Grothoff
94e1679955 adding a few more uniqueness constraints to DB 2016-05-31 09:13:03 +02:00
Marcello Stanisci
925097c86d adding --pool-size option to benchmark,
correcting comments
2016-05-30 17:16:01 +02:00
Christian Grothoff
e68d07fc25 making DB scheme nice 2016-05-27 15:34:24 +02:00
Christian Grothoff
c0451f0982 fix #4533 for exchange (breaks interaction with bank for /admin/add/incoming) 2016-05-26 16:38:59 +02:00
Christian Grothoff
951ce5ef32 fix #4537 2016-05-25 19:12:44 +02:00
Christian Grothoff
32bb3b14bf fix #4483 2016-05-24 20:13:31 +02:00
Florian Dold
8c3ffbf2a3 allow access to raw /keys response 2016-05-24 02:28:15 +02:00
Christian Grothoff
93aaf1d172 extending interpreter to cover refund (but not used yet) 2016-05-20 17:15:50 +02:00
Christian Grothoff
e39beff272 fix init before use in new refund logic 2016-05-20 15:52:40 +02:00
Christian Grothoff
43cfa77248 enforce wire deadline >= refund_deadline in API 2016-05-20 15:36:08 +02:00
Christian Grothoff
9391ed529c export function to free commit coin data 2016-05-19 18:37:31 +02:00
Christian Grothoff
763c8ab512 rename GNUNET_CRYPTO_rsa_BlindingKey to GNUNET_CRYPTO_RsaBlindingKey following GNUnet API change 2016-05-19 15:11:05 +02:00
Christian Grothoff
8ff8c7b8c7 fix table dropping logic to ensure testcases run in fresh environment 2016-05-18 17:19:32 +02:00
Christian Grothoff
c8b9370413 fixing #3814 by removing ability to melt multiple oldcoins at the same time 2016-05-16 11:55:47 +02:00
Christian Grothoff
d55b2cd59d more work on test, noting what is left to do 2016-05-06 23:51:15 +02:00
Christian Grothoff
95d338f6cc adding test for auditors API 2016-05-06 19:39:31 +02:00
Christian Grothoff
3526c44a38 refactor code to write signing keys in same module where we read them 2016-05-06 18:33:02 +02:00
Christian Grothoff
0c959e75d1 working on #3641: more on /refund implementation 2016-05-05 22:57:55 +02:00
Christian Grothoff
6b1f4904ef export transaction history check function 2016-05-05 14:43:13 +02:00
Christian Grothoff
4a031a692b implementing /refund API (#3848) 2016-05-04 09:42:52 +02:00
Christian Grothoff
79c316f0d5 enable multiple wire methods to be used with aggregator, add command to run aggregator in testcase 2016-05-03 07:57:49 +02:00
Christian Grothoff
1cbba4bec1 fixing #4462: avoid temporary schemata altogether 2016-05-02 06:36:58 +02:00
Christian Grothoff
53e7547aaf removing broken and redundant testcase 2016-05-02 05:17:42 +02:00
Christian Grothoff
b98a204562 fix #4184 2016-05-02 05:10:40 +02:00
Christian Grothoff
21188ca703 Merge branch 'master' of ssh://taler.net:/var/git/exchange 2016-04-21 20:00:40 +02:00
Christian Grothoff
77e9e3a7f6 sketching out refund API implementation 2016-04-20 03:05:16 +02:00
Christian Grothoff
edd31c7415 implementing parsing of /refund requests 2016-04-20 02:50:52 +02:00
Christian Grothoff
f693e25793 introduce refund fee 2016-04-20 01:50:26 +02:00
Florian Dold
37be942f48 do not include gnunet's platform header in our public headers 2016-04-19 13:54:59 +02:00
Christian Grothoff
7496a03978 replace bank_api_context with libgnunetcurl 2016-04-17 18:03:01 +02:00
Christian Grothoff
1ed567a14b replace exchange_api_context with libgnunetcurl 2016-04-17 17:45:15 +02:00
Christian Grothoff
3abb3bc372 use user_config_file as well 2016-04-16 13:10:29 +02:00
Christian Grothoff
ecc5b6791f fix taler-exchange-keyup way of loading configuration 2016-04-16 12:37:37 +02:00
Christian Grothoff
ce9dd3365d implement signing of /wire/deposit replies (#4135) 2016-04-11 19:54:54 +02:00
Christian Grothoff
30d66bcebc fixing #4386: use more sane configuration and data file structure 2016-04-10 17:10:20 +02:00
Christian Grothoff
df893df505 fix make dist rules 2016-04-09 01:56:24 +02:00
Christian Grothoff
e00370d4f5 removing duplication of --help logic 2016-04-07 22:52:23 +02:00
Christian Grothoff
ad8351c912 fix iterate_matching_deposits(), LIMIT does not work with variables in Postgres (#4360) 2016-04-06 10:22:09 +02:00
Christian Grothoff
f3819ae60d undef dead symbol 2016-04-05 23:45:05 +02:00
Christian Grothoff
0ff76b5abb fix test to ensure DB invariants are met 2016-04-04 16:47:11 +02:00
Christian Grothoff
daae3d3ddf change taler-exchange-sepa to a more generic taler-exchange-wire tool using the wire plugins (#4237) 2016-04-02 20:58:22 +02:00
Christian Grothoff
de3e26303e implementing #4356, tests still failing, but main logic should now be updated 2016-04-01 16:15:35 +02:00
Christian Grothoff
b4c4f0b078 towards a testcase for aggregation logic 2016-03-30 22:56:17 +02:00
Christian Grothoff
17b2c7e011 fix indent, fix some comments 2016-03-26 18:18:57 +01:00
Christian Grothoff
ac950fbe61 switch to wid to comply with spec 2016-03-23 11:34:24 +01:00
Christian Grothoff
6a80c0bfa2 Merge branch 'master' of git+ssh://git.taler.net/var/git/exchange 2016-03-21 14:40:59 +01:00
Christian Grothoff
3cb188e8a7 rename to match GNUnet symbol change 2016-03-21 14:40:57 +01:00
Christian Grothoff
6f8fa678c1 implementing #3987 2016-03-21 01:45:53 +01:00
Christian Grothoff
737e3f4bf6 refactor to eliminate duplicated JSON parsing logic (#4150) 2016-03-19 19:16:35 +01:00
Christian Grothoff
0d1eced630 first refactoring of JSON logic to address #4150 and #4237 2016-03-19 15:23:11 +01:00
Christian Grothoff
17ff4f5e97 fixing #4230 in bank-lib 2016-03-02 21:07:27 +01:00
Christian Grothoff
531272a92a towards fixing #4230 2016-03-02 21:02:46 +01:00
Christian Grothoff
b5cba32510 renaming mint->exchange 2016-03-01 15:35:04 +01:00
Christian Grothoff
d67011e2b5 making mintdb tests pass again after API refactoring to remove total amount 2016-02-07 15:02:49 +01:00
Christian Grothoff
2b5a7c8748 move to new libgnunetpq library, simplifying libtalerpq 2016-02-06 17:39:18 +01:00
Christian Grothoff
67bc16d9eb update bank-lib to reflect API discussions 2016-01-29 11:39:45 +01:00
Christian Grothoff
46d9cc367b finishing core logic for #4141, but untested 2016-01-28 03:58:21 +01:00
Christian Grothoff
649879b0b6 implementing prepare data postgres functions for #4141 2016-01-27 18:28:52 +01:00
Christian Grothoff
b7215299d8 adding SQL for prewire data storage 2016-01-27 17:09:08 +01:00
Christian Grothoff
9a45742fe4 adding stubs for wire prepare data functions 2016-01-27 16:46:51 +01:00
Christian Grothoff
48c2edc28d working on mintdb for #4141 2016-01-27 16:42:24 +01:00
Christian Grothoff
0554fa7691 fix syntax issues in Makefile.am 2016-01-27 15:05:39 +01:00
Christian Grothoff
f5fea55e1c -missing file 2016-01-27 15:03:10 +01:00
Christian Grothoff
0ba855ae92 more mintdb API design for #4141 2016-01-25 15:18:31 +01:00
Christian Grothoff
bd3700e608 getting aggregator structure laid out for #4141 2016-01-25 15:08:29 +01:00
Christian Grothoff
57c1d2318f getting aggregator structure laid out for #4141 2016-01-25 14:57:32 +01:00
Christian Grothoff
891b533a21 finish serialization/deserialization logic for test wire transfers 2016-01-25 11:21:55 +01:00
Christian Grothoff
ccb4ac92a3 more work on wire plugin 2016-01-25 11:08:19 +01:00
Christian Grothoff
941cb8182f adding first version of thebank-lib 2016-01-25 10:20:40 +01:00
Christian Grothoff
5c58c43609 more work on wire plugins 2016-01-24 16:52:39 +01:00
Christian Grothoff
9aa323ca7b adding skeletons for plugins 2016-01-24 16:44:57 +01:00
Christian Grothoff
b407565351 defining wire plugin API 2016-01-24 16:26:54 +01:00
Christian Grothoff
d63447baf6 adding mint-lib logic to execute /wire/deposits requests 2016-01-21 15:18:55 +01:00
Christian Grothoff
ce199e6e95 adding API code for /deposit/wtid requests 2016-01-21 14:46:17 +01:00
Christian Grothoff
c097b11052 defined tracking API (not implemented) 2016-01-21 13:53:34 +01:00
Christian Grothoff
c12a899f32 finish implementation of DB tracing functions 2016-01-21 12:09:17 +01:00
Christian Grothoff
9ccba0e77f implementing insert function into aggregation table 2016-01-21 11:24:18 +01:00
Christian Grothoff
8f071e2200 adding aggregation_tracking table to postgres plugin 2016-01-21 08:44:45 +01:00
Christian Grothoff
43e04f2ad1 work on #3888 2016-01-20 18:50:19 +01:00
Christian Grothoff
d291788976 spelling out what information mint should sign for TALER_SIGNATURE_MINT_CONFIRM_WIRE 2016-01-20 18:03:44 +01:00
Christian Grothoff
80f6c4240e -fix (C) notices 2016-01-19 14:39:00 +01:00
Christian Grothoff
0bdae896e7 remark on TODO 2016-01-17 18:21:32 +01:00
Christian Grothoff
c1f28638c9 working on #3888 2016-01-17 18:19:09 +01:00
Florian Dold
24bfedf04e Merge branch 'master' of ssh://taler.net/var/git/mint 2015-12-22 11:26:10 +01:00
Christian Grothoff
c20f955ae4 towards /deposit/wtid handling (more skeleton work) 2015-12-09 15:36:34 +01:00
Christian Grothoff
c5204d3a21 add contract structure from Merchant 2015-11-25 13:37:38 +01:00
Florian Dold
57affb94fe Fix wrong comment 2015-11-24 14:42:01 +01:00
Christian Grothoff
5a12cbac29 skeleton for the logic for #3888 (mint-side) 2015-11-11 18:21:29 +01:00
Christian Grothoff
d97cd0c98d define signature formats for #3888 2015-11-11 18:09:19 +01:00
Christian Grothoff
9bbfca568f updating code to match simplified specification (#4039) 2015-11-11 14:44:08 +01:00
Marcello Stanisci
34405ec956 minor change to comments 2015-11-03 16:49:14 +01:00
Christian Grothoff
c2a40aa839 fix #4032: move wire deadline form wire details to advisory field in /deposit request 2015-10-28 21:06:23 +01:00
Christian Grothoff
93a84d5e5a retry transactions on serialization/dead-lock failures (#3990) 2015-09-21 14:36:18 +02:00
Christian Grothoff
a6f8fa98b0 implement #3972: support multiple wire formats concurrently 2015-09-20 13:48:15 +02:00
Christian Grothoff
1eadd66ae0 renaming /withdraw to /reserve (#3968) 2015-09-19 22:08:49 +02:00
Christian Grothoff
cc47c5c701 implement #3838 (as required for wire transfers) 2015-09-19 20:28:37 +02:00
Christian Grothoff
f8a730a0ab fixing #3816: adding 'id' field to uniquely identify each deposit 2015-09-19 20:02:21 +02:00