-misc fixes
This commit is contained in:
parent
63879d9d20
commit
12809b28ec
@ -1 +1 @@
|
||||
1646042841
|
||||
1647487322
|
||||
|
@ -1,5 +1,5 @@
|
||||
[arm]
|
||||
CONFIG = /research/taler/exchange/src/auditor/auditor-basedb.conf
|
||||
CONFIG = /home/grothoff/research/exchange/src/auditor/auditor-basedb.conf
|
||||
|
||||
[benchmark]
|
||||
MERCHANT_DETAILS = merchant_details.json
|
||||
@ -113,7 +113,7 @@ currency = TESTKUDOS
|
||||
[merchant-exchange-default]
|
||||
CURRENCY = TESTKUDOS
|
||||
EXCHANGE_BASE_URL = http://localhost:8081/
|
||||
MASTER_KEY = TMQ09D9G18Z8TFEABD833SDJ6JQWRYKFHPTWT6DMPQS54ZC66RDG
|
||||
MASTER_KEY = MDNEGQ7SEENF1NW2CH1ZVZX2MGN6HG9BX4V3G1MJFK7V99NR1AQG
|
||||
|
||||
[merchant-account-merchant]
|
||||
ACTIVE_default = YES
|
||||
@ -131,6 +131,16 @@ enable_credit = yes
|
||||
enable_debit = yes
|
||||
PAYTO_URI = payto://x-taler-bank/localhost/Exchange
|
||||
|
||||
[bank]
|
||||
SERVE = http
|
||||
ALLOW_REGISTRATIONS = YES
|
||||
SUGGESTED_EXCHANGE_PAYTO = payto://x-taler-bank/localhost/2
|
||||
SUGGESTED_EXCHANGE = http://localhost:8081/
|
||||
HTTP_PORT = 8082
|
||||
MAX_DEBT_BANK = TESTKUDOS:100000.0
|
||||
MAX_DEBT = TESTKUDOS:50.0
|
||||
DATABASE = postgres:///auditor-basedb
|
||||
|
||||
[instance-default]
|
||||
NAME = Merchant Inc.
|
||||
KEYFILE = ${TALER_DATA_HOME}/merchant/default.priv
|
||||
@ -157,25 +167,15 @@ CONFIG = postgres:///auditor-basedb
|
||||
[exchange]
|
||||
LOOKAHEAD_SIGN = 32 weeks 1 day
|
||||
SIGNKEY_DURATION = 4 weeks
|
||||
MASTER_PUBLIC_KEY = TMQ09D9G18Z8TFEABD833SDJ6JQWRYKFHPTWT6DMPQS54ZC66RDG
|
||||
MASTER_PUBLIC_KEY = MDNEGQ7SEENF1NW2CH1ZVZX2MGN6HG9BX4V3G1MJFK7V99NR1AQG
|
||||
SIGNKEY_LEGAL_DURATION = 4 weeks
|
||||
UNIXPATH = ${TALER_RUNTIME_DIR}/exchange.http
|
||||
|
||||
[bank]
|
||||
SERVE = http
|
||||
ALLOW_REGISTRATIONS = YES
|
||||
SUGGESTED_EXCHANGE_PAYTO = payto://x-taler-bank/localhost/2
|
||||
SUGGESTED_EXCHANGE = http://localhost:8081/
|
||||
HTTP_PORT = 8082
|
||||
MAX_DEBT_BANK = TESTKUDOS:100000.0
|
||||
MAX_DEBT = TESTKUDOS:50.0
|
||||
DATABASE = postgres:///taler-auditor-basedb
|
||||
|
||||
[auditordb-postgres]
|
||||
CONFIG = postgres:///taler-auditor-basedb
|
||||
CONFIG = postgres:///auditor-basedb
|
||||
|
||||
[auditor]
|
||||
PUBLIC_KEY = 95FVPHMW4110HTPVSGMT2YMDE2BSGXZEV5WSV0TD1DXMF2RQ5HN0
|
||||
PUBLIC_KEY = 5QA9WH735ECJMAJ84536KTHGDQ7TQMDJVSCVP3ZNVFZXJW609DKG
|
||||
TINY_AMOUNT = TESTKUDOS:0.01
|
||||
BASE_URL = http://localhost:8083/
|
||||
|
||||
@ -184,3 +184,4 @@ TALER_CACHE_HOME = $TALER_HOME/.cache/taler/
|
||||
TALER_CONFIG_HOME = $TALER_HOME/.config/taler/
|
||||
TALER_DATA_HOME = $TALER_HOME/.local/share/taler/
|
||||
TALER_HOME = ${PWD}/generate_auditordb_home/
|
||||
|
||||
|
@ -1 +1 @@
|
||||
TMQ09D9G18Z8TFEABD833SDJ6JQWRYKFHPTWT6DMPQS54ZC66RDG
|
||||
MDNEGQ7SEENF1NW2CH1ZVZX2MGN6HG9BX4V3G1MJFK7V99NR1AQG
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -41,7 +41,7 @@ BASEDB=${1:-"auditor-basedb"}
|
||||
# Name of the Postgres database we will use for the script.
|
||||
# Will be dropped, do NOT use anything that might be used
|
||||
# elsewhere
|
||||
export TARGET_DB=${BASEDB}
|
||||
export TARGET_DB=`basename ${BASEDB}`
|
||||
|
||||
export WALLET_DB=${BASEDB:-"wallet"}.wdb
|
||||
|
||||
@ -52,7 +52,7 @@ rm -f $WALLET_DB
|
||||
# Configuration file will be edited, so we create one
|
||||
# from the template.
|
||||
CONF=${BASEDB}.conf
|
||||
cp generate-auditor-basedb-template.conf $CONF
|
||||
cp generate-auditor-basedb.conf $CONF
|
||||
|
||||
|
||||
echo -n "Testing for taler-bank-manage"
|
||||
@ -66,7 +66,7 @@ curl --help >/dev/null </dev/null || exit_skip " MISSING"
|
||||
echo " FOUND"
|
||||
|
||||
|
||||
|
||||
pwd
|
||||
# Clean up
|
||||
|
||||
DATA_DIR=`taler-config -f -c $CONF -s PATHS -o TALER_HOME`
|
||||
|
@ -32,7 +32,7 @@ export BASEDB=${1:-"revoke-basedb"}
|
||||
# Name of the Postgres database we will use for the script.
|
||||
# Will be dropped, do NOT use anything that might be used
|
||||
# elsewhere
|
||||
export TARGET_DB=${BASEDB}
|
||||
export TARGET_DB=`basename ${BASEDB}`
|
||||
TMP_DIR=`mktemp -d revocation-tmp-XXXXXX`
|
||||
export WALLET_DB=wallet-revocation.json
|
||||
rm -f $WALLET_DB
|
||||
@ -40,7 +40,7 @@ rm -f $WALLET_DB
|
||||
# Configuration file will be edited, so we create one
|
||||
# from the template.
|
||||
export CONF=generate-auditor-basedb-revocation.conf
|
||||
cp generate-auditor-basedb-template.conf $CONF
|
||||
cp generate-auditor-basedb.conf $CONF
|
||||
|
||||
|
||||
echo -n "Testing for taler-bank-manage"
|
||||
@ -136,7 +136,7 @@ done
|
||||
|
||||
if [ 1 != $OK ]
|
||||
then
|
||||
exit_skip "Failed to launch services"
|
||||
exit_skip "Failed to launch Bank services"
|
||||
fi
|
||||
|
||||
# Wait for all other services to be available
|
||||
@ -158,7 +158,7 @@ done
|
||||
if [ 1 != $OK ]
|
||||
then
|
||||
cleanup
|
||||
exit_skip "Failed to launch services"
|
||||
exit_skip "Failed to launch Taler services"
|
||||
fi
|
||||
echo " DONE"
|
||||
|
||||
|
@ -1 +1 @@
|
||||
1647346120
|
||||
1647492342
|
||||
|
@ -1 +1 @@
|
||||
W5FGQBGXD28NPXR14ZVRYBQGAKF96BQTBEM4QS6KF0WCVTBM1GSG
|
||||
FGRF6J6HM8AQNGF12MBXCK6ZWSVVBAR4HPGST36WBVQKXMRTVJ2G
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -2039,7 +2039,7 @@ check_recoup (struct CoinContext *cc,
|
||||
* @param coin_blind blinding factor used to blind the coin
|
||||
* @return #GNUNET_OK to continue to iterate, #GNUNET_SYSERR to stop
|
||||
*/
|
||||
static int
|
||||
static enum GNUNET_GenericReturnValue
|
||||
recoup_cb (void *cls,
|
||||
uint64_t rowid,
|
||||
struct GNUNET_TIME_Timestamp timestamp,
|
||||
|
@ -6,7 +6,7 @@
|
||||
#
|
||||
# Requires 'jq' tool and Postgres superuser rights!
|
||||
set -eu
|
||||
set -x
|
||||
#set -x
|
||||
|
||||
# Set of numbers for all the testcases.
|
||||
# When adding new tests, increase the last number:
|
||||
@ -472,11 +472,9 @@ function test_4() {
|
||||
echo "===========4: deposit wire target wrong================="
|
||||
# Original target bank account was 43, changing to 44
|
||||
SERIAL=`echo "SELECT deposit_serial_id FROM deposits WHERE amount_with_fee_val=3 AND amount_with_fee_frac=0 ORDER BY deposit_serial_id LIMIT 1" | psql $DB -Aqt`
|
||||
OLD_WIRE_ID=`echo "SELECT w.wire_target_serial_id FROM deposits d, wire_targets w WHERE d.wire_target_serial_id = w.wire_target_serial_id AND deposit_serial_id=${SERIAL};" | psql $DB -Aqt`
|
||||
NEW_WIRE_ID=`echo "INSERT INTO wire_targets (wire_target_serial_id, payto_uri, h_payto, kyc_ok) VALUES (DEFAULT, 'payto://x-taler-bank/localhost/testuser-xxlargtp', '\xe67a8933f7521572236301d7ff63e217245f777ed4b4d7e8df1b989900743658f4c10042ff9e5ce517bff4e5387b27877780673d85393f289aea5ee1946021c3', false) RETURNING wire_target_serial_id;" | psql $DB -Aqt`
|
||||
echo OLD_WIRE_ID=$OLD_WIRE_ID
|
||||
echo NEW_WIRE_ID=$NEW_WIRE_ID
|
||||
echo "UPDATE deposits SET wire_target_serial_id=$NEW_WIRE_ID WHERE deposit_serial_id=${SERIAL}" | psql -Aqt $DB
|
||||
OLD_WIRE_ID=`echo "SELECT wire_target_h_payto FROM deposits WHERE deposit_serial_id=${SERIAL};" | psql $DB -Aqt`
|
||||
NEW_WIRE_ID=`echo "INSERT INTO wire_targets (payto_uri, wire_target_h_payto, kyc_ok) VALUES ('payto://x-taler-bank/localhost/testuser-xxlargtp', '\x1e8f31936b3cee8f8afd3aac9e38b5db42d45b721ffc4eb1e5b9ddaf1565660b', false);" | psql $DB -Aqt`
|
||||
echo "UPDATE deposits SET wire_target_h_payto='\x1e8f31936b3cee8f8afd3aac9e38b5db42d45b721ffc4eb1e5b9ddaf1565660b' WHERE deposit_serial_id=${SERIAL}" | psql -Aqt $DB
|
||||
|
||||
run_audit
|
||||
|
||||
@ -510,7 +508,7 @@ fi
|
||||
|
||||
echo PASS
|
||||
# Undo:
|
||||
echo "UPDATE deposits SET wire_target_serial_id=$OLD_WIRE_ID WHERE deposit_serial_id=${SERIAL}" | psql -Aqt $DB
|
||||
echo "UPDATE deposits SET wire_target_h_payto='$OLD_WIRE_ID' WHERE deposit_serial_id=${SERIAL}" | psql -Aqt $DB
|
||||
|
||||
}
|
||||
|
||||
@ -867,7 +865,7 @@ function test_13() {
|
||||
echo "===========13: wrong melt signature ==========="
|
||||
# Modify denom_sig, so it is wrong
|
||||
COIN_PUB=`echo "SELECT old_coin_pub FROM refresh_commitments LIMIT 1;" | psql $DB -Aqt`
|
||||
OLD_SIG=`echo "SELECT old_coin_sig FROM refresh_commitments WHERE old_known_pub='$COIN_PUB';" | psql $DB -Aqt`
|
||||
OLD_SIG=`echo "SELECT old_coin_sig FROM refresh_commitments WHERE old_coin_pub='$COIN_PUB';" | psql $DB -Aqt`
|
||||
NEW_SIG="\xba588af7c13c477dca1ac458f65cc484db8fba53b969b873f4353ecbd815e6b4c03f42c0cb63a2b609c2d726e612fd8e0c084906a41f409b6a23a08a83c89a02"
|
||||
echo "UPDATE refresh_commitments SET old_coin_sig='$NEW_SIG' WHERE old_coin_pub='$COIN_PUB'" | psql -Aqt $DB
|
||||
|
||||
@ -1487,11 +1485,11 @@ function test_26() {
|
||||
echo "===========26: deposit wire target malformed ================="
|
||||
# Expects 'payto_uri', not 'url' (also breaks signature, but we cannot even check that).
|
||||
SERIAL=`echo "SELECT deposit_serial_id FROM deposits WHERE amount_with_fee_val=3 AND amount_with_fee_frac=0 ORDER BY deposit_serial_id LIMIT 1" | psql $DB -Aqt`
|
||||
OLD_WIRE_ID=`echo "SELECT w.wire_target_serial_id FROM deposits d, wire_targets w WHERE d.wire_target_serial_id = w.wire_target_serial_id AND deposit_serial_id=${SERIAL};" | psql $DB -Aqt`
|
||||
NEW_WIRE_ID=`echo "INSERT INTO wire_targets (wire_target_serial_id, payto_uri, h_payto, kyc_ok) VALUES (DEFAULT, 'payto://x-taler-bank/localhost/testuser-xxlargtp', '\xe67a8933f7521572236301d7ff63e217245f777ed4b4d7e8df1b989900743658f4c10042ff9e5ce517bff4e5387b27877780673d85393f289aea5ee1946021c3', false) RETURNING wire_target_serial_id;" | psql $DB -Aqt`
|
||||
OLD_WIRE_ID=`echo "SELECT wire_target_h_payto FROM deposits WHERE deposit_serial_id=${SERIAL};" | psql $DB -Aqt`
|
||||
NEW_WIRE_ID=`echo "INSERT INTO wire_targets (payto_uri, wire_target_h_payto, kyc_ok) VALUES ('payto://x-taler-bank/localhost/testuser-xxlargtp', '\x1e8f31936b3cee8f8afd3aac9e38b5db42d45b721ffc4eb1e5b9ddaf1565660b', false);" | psql $DB -Aqt`
|
||||
echo OLD_WIRE_ID=$OLD_WIRE_ID
|
||||
echo NEW_WIRE_ID=$NEW_WIRE_ID
|
||||
echo "UPDATE deposits SET wire_target_serial_id=$NEW_WIRE_ID WHERE deposit_serial_id=${SERIAL}" | psql -Aqt $DB
|
||||
echo "UPDATE deposits SET wire_target_h_payto='\x1e8f31936b3cee8f8afd3aac9e38b5db42d45b721ffc4eb1e5b9ddaf1565660b' WHERE deposit_serial_id=${SERIAL}" | psql -Aqt $DB
|
||||
|
||||
run_audit
|
||||
|
||||
@ -1525,7 +1523,7 @@ fi
|
||||
|
||||
echo PASS
|
||||
# Undo:
|
||||
echo "UPDATE deposits SET wire_target_serial_id=$OLD_WIRE_ID WHERE deposit_serial_id=${SERIAL}" | psql -Aqt $DB
|
||||
echo "UPDATE deposits SET wire_target_h_payto='$OLD_WIRE_ID' WHERE deposit_serial_id=${SERIAL}" | psql -Aqt $DB
|
||||
|
||||
}
|
||||
|
||||
@ -1891,6 +1889,7 @@ else
|
||||
then
|
||||
MYDIR=`mktemp -d /tmp/taler-auditor-basedbXXXXXX`
|
||||
echo " FOUND. Generating fresh database at $MYDIR"
|
||||
pwd
|
||||
if ./generate-auditor-basedb.sh $MYDIR/basedb
|
||||
then
|
||||
check_with_database $MYDIR/basedb
|
||||
|
@ -149,6 +149,7 @@ TEH_DB_run_transaction (struct MHD_Connection *connection,
|
||||
return GNUNET_OK;
|
||||
TEH_METRICS_num_conflict[mt]++;
|
||||
}
|
||||
TEH_plugin->rollback (TEH_plugin->cls);
|
||||
TALER_LOG_ERROR ("Transaction `%s' commit failed %u times\n",
|
||||
name,
|
||||
MAX_TRANSACTION_COMMIT_RETRIES);
|
||||
|
@ -27,8 +27,8 @@ BEGIN;
|
||||
SELECT _v.unregister_patch('exchange-0001');
|
||||
|
||||
-- Drops for exchange-0001.sql
|
||||
DROP TRIGGER IF EXISTS reserves_out_on_insert ON reserves_out_default;
|
||||
DROP TRIGGER IF EXISTS reserves_out_on_delete ON reserves_out_default;
|
||||
DROP TRIGGER IF EXISTS reserves_out_on_insert ON reserves_out;
|
||||
DROP TRIGGER IF EXISTS reserves_out_on_delete ON reserves_out;
|
||||
DROP TABLE IF EXISTS revolving_work_shards CASCADE;
|
||||
DROP TABLE IF EXISTS extensions CASCADE;
|
||||
DROP TABLE IF EXISTS auditors CASCADE;
|
||||
|
@ -455,7 +455,7 @@ COMMENT ON COLUMN refresh_commitments.rc
|
||||
COMMENT ON COLUMN refresh_commitments.old_coin_pub
|
||||
IS 'Coin being melted in the refresh process.';
|
||||
COMMENT ON COLUMN refresh_commitments.h_age_commitment
|
||||
IS 'The (optional) age commitment that was involved in the minting process of the coin, may be NULL.';
|
||||
IS 'The (optional) age commitment that was involved in the minting process of the coin, may be NULL. -- FIXME: Oec: this is in known_coins, why replicated here!??!';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS refresh_commitments_default
|
||||
PARTITION OF refresh_commitments
|
||||
|
@ -868,7 +868,7 @@ prepare_statements (struct PostgresClosure *pg)
|
||||
",denoms.fee_refresh_frac"
|
||||
",old_coin_pub"
|
||||
",old_coin_sig"
|
||||
",h_age_commitment"
|
||||
",kc.age_commitment_hash"
|
||||
",amount_with_fee_val"
|
||||
",amount_with_fee_frac"
|
||||
",noreveal_index"
|
||||
@ -887,7 +887,7 @@ prepare_statements (struct PostgresClosure *pg)
|
||||
"SELECT"
|
||||
" denom.denom_pub"
|
||||
",kc.coin_pub AS old_coin_pub"
|
||||
",h_age_commitment"
|
||||
",kc.age_commitment_hash"
|
||||
",old_coin_sig"
|
||||
",amount_with_fee_val"
|
||||
",amount_with_fee_frac"
|
||||
@ -913,7 +913,7 @@ prepare_statements (struct PostgresClosure *pg)
|
||||
",denoms.denom_pub_hash"
|
||||
",denoms.fee_refresh_val"
|
||||
",denoms.fee_refresh_frac"
|
||||
",h_age_commitment"
|
||||
",kc.age_commitment_hash"
|
||||
",melt_serial_id"
|
||||
" FROM refresh_commitments"
|
||||
" JOIN known_coins kc"
|
||||
@ -1558,6 +1558,7 @@ prepare_statements (struct PostgresClosure *pg)
|
||||
",ro.h_blind_ev"
|
||||
",denoms.denom_pub_hash"
|
||||
",coins.denom_sig"
|
||||
",coins.age_commitment_hash"
|
||||
",denoms.denom_pub"
|
||||
",amount_val"
|
||||
",amount_frac"
|
||||
@ -1581,6 +1582,7 @@ prepare_statements (struct PostgresClosure *pg)
|
||||
" recoup_refresh_uuid"
|
||||
",recoup_timestamp"
|
||||
",old_coins.coin_pub AS old_coin_pub"
|
||||
",old_coins.age_commitment_hash"
|
||||
",old_denoms.denom_pub_hash AS old_denom_pub_hash"
|
||||
",new_coins.coin_pub As coin_pub"
|
||||
",coin_sig"
|
||||
@ -6344,7 +6346,7 @@ postgres_get_melt (void *cls,
|
||||
GNUNET_PQ_result_spec_auto_from_type ("old_coin_sig",
|
||||
&melt->session.coin_sig),
|
||||
GNUNET_PQ_result_spec_allow_null (
|
||||
GNUNET_PQ_result_spec_auto_from_type ("h_age_commitment",
|
||||
GNUNET_PQ_result_spec_auto_from_type ("age_commitment_hash",
|
||||
&melt->session.coin.h_age_commitment),
|
||||
&h_age_commitment_is_null),
|
||||
TALER_PQ_RESULT_SPEC_AMOUNT ("amount_with_fee",
|
||||
@ -6964,7 +6966,7 @@ add_coin_melt (void *cls,
|
||||
TALER_PQ_RESULT_SPEC_AMOUNT ("fee_refresh",
|
||||
&melt->melt_fee),
|
||||
GNUNET_PQ_result_spec_allow_null (
|
||||
GNUNET_PQ_result_spec_auto_from_type ("h_age_commitment",
|
||||
GNUNET_PQ_result_spec_auto_from_type ("age_commitment_hash",
|
||||
&melt->h_age_commitment),
|
||||
&melt->no_age_commitment),
|
||||
GNUNET_PQ_result_spec_uint64 ("melt_serial_id",
|
||||
@ -8742,7 +8744,7 @@ refreshs_serial_helper_cb (void *cls,
|
||||
TALER_PQ_result_spec_denom_pub ("denom_pub",
|
||||
&denom_pub),
|
||||
GNUNET_PQ_result_spec_allow_null (
|
||||
GNUNET_PQ_result_spec_auto_from_type ("h_age_commitment",
|
||||
GNUNET_PQ_result_spec_auto_from_type ("age_commitment_hash",
|
||||
&h_age_commitment),
|
||||
&ac_isnull),
|
||||
GNUNET_PQ_result_spec_auto_from_type ("old_coin_pub",
|
||||
@ -9525,6 +9527,10 @@ recoup_serial_helper_cb (void *cls,
|
||||
&h_blind_ev),
|
||||
GNUNET_PQ_result_spec_auto_from_type ("denom_pub_hash",
|
||||
&coin.denom_pub_hash),
|
||||
GNUNET_PQ_result_spec_allow_null (
|
||||
GNUNET_PQ_result_spec_auto_from_type ("age_commitment_hash",
|
||||
&coin.h_age_commitment),
|
||||
&coin.no_age_commitment),
|
||||
TALER_PQ_result_spec_denom_sig ("denom_sig",
|
||||
&coin.denom_sig),
|
||||
TALER_PQ_RESULT_SPEC_AMOUNT ("amount",
|
||||
@ -9676,6 +9682,10 @@ recoup_refresh_serial_helper_cb (void *cls,
|
||||
&h_blind_ev),
|
||||
GNUNET_PQ_result_spec_auto_from_type ("denom_pub_hash",
|
||||
&coin.denom_pub_hash),
|
||||
GNUNET_PQ_result_spec_allow_null (
|
||||
GNUNET_PQ_result_spec_auto_from_type ("age_commitment_hash",
|
||||
&coin.h_age_commitment),
|
||||
&coin.no_age_commitment),
|
||||
TALER_PQ_result_spec_denom_sig ("denom_sig",
|
||||
&coin.denom_sig),
|
||||
TALER_PQ_RESULT_SPEC_AMOUNT ("amount",
|
||||
|
@ -1087,8 +1087,7 @@ TALER_TESTING_cmd_deposit_confirmation (const char *label,
|
||||
*/
|
||||
struct TALER_TESTING_Command
|
||||
TALER_TESTING_cmd_deposit_confirmation_with_retry (
|
||||
struct TALER_TESTING_Command
|
||||
cmd);
|
||||
struct TALER_TESTING_Command cmd);
|
||||
|
||||
|
||||
/**
|
||||
|
@ -850,7 +850,7 @@ run (void *cls,
|
||||
* Run transfers. This will do the transfer as refund deadline
|
||||
* was 0, except of course because the refund succeeded, the
|
||||
* transfer should no longer be done.
|
||||
*///
|
||||
*/
|
||||
CMD_EXEC_AGGREGATOR ("run-aggregator-3b"),
|
||||
/* check that aggregator didn't do anything, as expected */
|
||||
TALER_TESTING_cmd_check_bank_empty ("check-refund-fast-not-run"),
|
||||
|
Loading…
Reference in New Issue
Block a user