summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2021-01-29 19:24:50 +0100
committerChristian Grothoff <christian@grothoff.org>2021-01-29 19:24:50 +0100
commita1c7705cc2a8654bdf6e04cd1e4248121f64133b (patch)
tree3d5e916a2fd3f4e868e03af9fe95135fcb81a333
parent43f5f0baa0a40fa9e5c32dd76bd46b0637850f67 (diff)
parentabc791d4e96f1da3c1874caa78aee1ee87847feb (diff)
downloadtaler-util-a1c7705cc2a8654bdf6e04cd1e4248121f64133b.tar.gz
taler-util-a1c7705cc2a8654bdf6e04cd1e4248121f64133b.tar.bz2
taler-util-a1c7705cc2a8654bdf6e04cd1e4248121f64133b.zip
move PaytoParse logic into taler-util (#6650)
-rw-r--r--.gitignore1
-rw-r--r--.gitmodules3
-rw-r--r--Makefile22
-rw-r--r--README16
-rw-r--r--build-system/configure.py (renamed from configure.py)0
m---------gana0
-rw-r--r--setup.py5
-rw-r--r--taler/util/errorcodes.py4137
-rw-r--r--taler/util/gen_errcodes_c.py92
-rw-r--r--taler/util/talerconfig.py15
10 files changed, 42 insertions, 4249 deletions
diff --git a/.gitignore b/.gitignore
index 5acaa23..fdfbe0f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,3 +10,4 @@ __pycache__
.style.yapf
configure
config.mk
+taler/util/taler_error_codes.py
diff --git a/.gitmodules b/.gitmodules
index 46f6b8a..b963c9d 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,6 @@
[submodule "build-system/taler-build-scripts"]
path = build-system/taler-build-scripts
url = https://git.taler.net/build-common.git
+[submodule "gana"]
+ path = gana
+ url = git://git.gnunet.org/gana.git
diff --git a/Makefile b/Makefile
index 8101927..ee71b1f 100644
--- a/Makefile
+++ b/Makefile
@@ -1,21 +1,26 @@
-include config.mk
+include build-system/config.mk
.SILENT: all
all: dist
$(echo) "This is a python project, no compilation at this step required."
$(echo) "Run make install to install global."
$(echo) "Run make install-user to install for the current user."
- $(echo) ""
- $(echo) "If you want to update your installation, use make update."
# you need SOURCE_DATE_EPOCH at least at the 1980s when
-# your default SOURCE_DATE_EPOCH in env is 1.
+# your default SOURCE_DATE_EPOCH in env is 1. More information
+# is found here: https://reproducible-builds.org/docs/source-date-epoch/
+#
.PHONY: dist
-dist:
+dist: gana
$(env) SOURCE_DATE_EPOCH=315532800 $(python) setup.py sdist bdist_wheel
-install: all
- (cd dist; $(env) SOURCE_DATE_EPOCH=315532800 $(python) -m pip install taler-util)
+.PHONY: gana
+gana:
+ cd gana/gnu-taler-error-codes/; make; cp taler_error_codes.py ../../taler/util/; cd ../..
+
+install: gana all
+ (cd dist; $(env) SOURCE_DATE_EPOCH=315532800 $(python) -m pip install --upgrade --no-index --find-links=. taler-util)
+
uninstall:
(cd dist; $(env) SOURCE_DATE_EPOCH=315532800 $(python) -m pip uninstall taler-util)
@@ -26,9 +31,6 @@ install-user:
uninstall-user:
(cd dist; $(env) SOURCE_DATE_EPOCH=315532800 $(python) -m pip uninstall taler-util)
-update:
- (cd dist; $(env) SOURCE_DATE_EPOCH=315532800 $(python) -m pip install --upgrade --no-index --find-links=. taler-util)
-
pypi: dist
$(env) SOURCE_DATE_EPOCH=315532800 $(python) -m twine upload dist/*
diff --git a/README b/README
index 6cf55b4..c32166e 100644
--- a/README
+++ b/README
@@ -40,6 +40,22 @@ build-systems:
1. a small GNU guidelines following wrapper around python's pip
2. python's default build-facility used via setup
+How to upload to pypi.org
+-------------------------
+
+1) From top-level directory:
+
+$ make dist
+
+2) Install Twine, if it's not installed yet:
+
+$ pip3 install twine
+
+3) Upload the files to PyPI (interactively providing the credentials):
+
+$ twine upload dist/*
+
+
License
-------
diff --git a/configure.py b/build-system/configure.py
index 08e6704..08e6704 100644
--- a/configure.py
+++ b/build-system/configure.py
diff --git a/gana b/gana
new file mode 160000
+Subproject 912dc84dc52a1291b635e19da32c7c824719f8d
diff --git a/setup.py b/setup.py
index c49b972..fb1333b 100644
--- a/setup.py
+++ b/setup.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2019 GNUnet e.V.
+# Copyright (C) 2019, 2020 Taler Systems SA
#
# This code is derived from code contributed to GNUnet e.V.
# by ng0 <ng0@n0.is>
@@ -25,7 +25,7 @@ with open('README', 'r') as f:
setup(
name='taler-util',
- version='0.6.5',
+ version='0.8.2',
license='LGPL3+',
platforms='any',
author='Taler Systems SA',
@@ -38,6 +38,7 @@ setup(
'Programming Language :: Python :: 3 :: Only',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.7',
+ 'Programming Language :: Python :: 3.8',
'License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)',
'Operating System :: OS Independent',
],
diff --git a/taler/util/errorcodes.py b/taler/util/errorcodes.py
deleted file mode 100644
index 9c43ed0..0000000
--- a/taler/util/errorcodes.py
+++ /dev/null
@@ -1,4137 +0,0 @@
-# This file is part of GNU Taler
-# (C) 2020 Taler Systems SA
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 3 of the License, or (at your option) any later
-# version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free
-# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-# Boston, MA 02110-1301 USA
-#
-# @author Florian Dold
-# @repository https://git.taler.net/taler-util.git/
-
-from dataclasses import dataclass
-import textwrap
-
-@dataclass
-class ErrorCode:
- name: str
- code: int
- description: str
-
-
-class ErrorCodeRegistry:
- def __init__(self):
- self.last_numcode = -1
- self._ec_name_memo = {}
- self._ec_numcode_memo = {}
- self._codes = []
-
- def _add_ec(self, name, numcode, description):
- if numcode <= self.last_numcode:
- raise Exception(
- f"Error code for {name} must be larger than last error code {self.last_numcode}"
- )
- if self._ec_name_memo.get(name) is not None:
- raise Exception(f"Duplicate error code name {name}")
- self._ec_name_memo[name] = True
- if self._ec_numcode_memo.get(numcode) is not None:
- raise Exception(f"Duplicate error code number {numcode}")
- self._ec_numcode_memo[numcode] = True
- self.last_numcode = numcode
- desc = textwrap.dedent(description).strip()
- self._codes.append(ErrorCode(name, numcode, desc))
-
-
-ec = ErrorCodeRegistry()
-
-__all__ = ["ec"]
-
-ec._add_ec(
- "NONE",
- 0,
- """
- Special code to indicate no error (or no "code" present).
- """,
-)
-
-ec._add_ec(
- "INVALID",
- 1,
- """
- Special code to indicate that a non-integer error code was returned in the
- JSON response.
- """,
-)
-
-ec._add_ec(
- "INVALID_RESPONSE",
- 2,
- """
- The response we got from the server was not even in JSON format.
- """,
-)
-
-ec._add_ec(
- "NOT_IMPLEMENTED",
- 3,
- """
- Generic implementation error: this function was not yet implemented.
- """,
-)
-
-ec._add_ec(
- "EXCHANGE_BAD_CONFIGURATION",
- 4,
- """
- Exchange is badly configured and thus cannot operate.
- """,
-)
-
-ec._add_ec(
- "INTERNAL_INVARIANT_FAILURE",
- 5,
- """
- Internal assertion error.
- """,
-)
-
-ec._add_ec(
- "TIMEOUT",
- 6,
- """
- Operation timed out.
- """,
-)
-
-ec._add_ec(
- "JSON_ALLOCATION_FAILURE",
- 7,
- """
- Exchange failed to allocate memory for building JSON reply.
- """,
-)
-
-ec._add_ec(
- "METHOD_INVALID",
- 8,
- """
- HTTP method invalid for this URL.
- """,
-)
-
-ec._add_ec(
- "OPERATION_INVALID",
- 9,
- """
- Operation specified invalid for this URL (resulting in a "NOT
- FOUND" for the overall response).
- """,
-)
-
-ec._add_ec(
- "ENDPOINT_UNKNOWN",
- 10,
- """
- There is no endpoint defined for the URL provided by the client
- (returned together with a #MHD_HTTP_NOT_FOUND status code).
- """,
-)
-
-ec._add_ec(
- "URI_TOO_LONG",
- 11,
- """
- The URI is longer than the longest URI the HTTP server is willing
- to parse. Returned together with an HTTP status code of
- #MHD_HTTP_URI_TOO_LONG.
- """,
-)
-
-ec._add_ec(
- "WRONG_NUMBER_OF_SEGMENTS",
- 12,
- """
- The number of segments included in the URI does not match the
- number of segments expected by the endpoint. (returned together
- with a #MHD_HTTP_NOT_FOUND status code).
- """,
-)
-
-ec._add_ec(
- "HOLE_IN_WIRE_FEE_STRUCTURE",
- 13,
- """
- The start and end-times in the wire fee structure
- leave a hole. This is not allowed.
- Generated as an error on the client-side.
- """,
-)
-
-ec._add_ec(
- "VERSION_MALFORMED",
- 14,
- """
- The version string given does not follow the
- expected CURRENT:REVISION:AGE Format. Generated as an error
- on the client side.
- """,
-)
-
-ec._add_ec(
- "CLIENT_INTERNAL_FAILURE",
- 15,
- """
- The client-side experienced an internal failure.
- Generated as an error on the client side.
- """,
-)
-
-
-ec._add_ec(
- "DB_SETUP_FAILED",
- 1001,
- """
- The exchange failed to even just initialize its connection to the database.
-
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "DB_START_FAILED",
- 1002,
- """
- The exchange encountered an error event to just start the database
- transaction.
-
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-
-ec._add_ec(
- "DB_COMMIT_FAILED_HARD",
- 1003,
- """
- The exchange encountered an error event to commit
- the database transaction (hard, unrecoverable error).
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "DB_COMMIT_FAILED_ON_RETRY",
- 1004,
- """
- The exchange encountered an error event to commit
- the database transaction, even after repeatedly
- retrying it there was always a conflicting transaction.
- (This indicates a repeated serialization error; should
- only happen if some client maliciously tries to create
- conflicting concurrent transactions.)
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-
-ec._add_ec(
- "PARSER_OUT_OF_MEMORY",
- 1005,
- """
- The exchange had insufficient memory to parse the request. This
- response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-
-ec._add_ec(
- "JSON_INVALID",
- 1006,
- """
- The JSON in the client's request to the exchange was malformed.
- (Generic parse error).
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "JSON_INVALID_WITH_DETAILS",
- 1007,
- """
- The JSON in the client's request to the exchange was malformed.
- Details about the location of the parse error are provided.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "PARAMETER_MISSING",
- 1008,
- """
- A required parameter in the request to the exchange was missing.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "PARAMETER_MALFORMED",
- 1009,
- """
- A parameter in the request to the exchange was malformed.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "COIN_HISTORY_DB_ERROR_INSUFFICIENT_FUNDS",
- 1010,
- """
- The exchange failed to obtain the transaction history of the
- given coin from the database while generating an insufficient
- funds errors. This can happen during /deposit or /recoup requests.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "INTERNAL_LOGIC_ERROR",
- 1011,
- """
- Internal logic error. Some server-side function
- failed that really should not.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PAYTO_WRONG_METHOD",
- 1012,
- """
- The method specified in a payto:// URI is not one we expected.
- """,
-)
-
-ec._add_ec(
- "PAYTO_MALFORMED",
- 1013,
- """
- The payto:// URI is malformed.
- """,
-)
-
-ec._add_ec(
- "DB_COIN_HISTORY_STORE_ERROR",
- 1014,
- """
- We failed to update the database of known coins.
- """,
-)
-
-ec._add_ec(
- "COINS_INVALID_COIN_PUB",
- 1050,
- """
- The public key of given to a /coins/ handler was malformed.
- """,
-)
-
-ec._add_ec(
- "RESERVES_INVALID_RESERVE_PUB",
- 1051,
- """
- The reserve key of given to a /reserves/ handler was malformed.
- """,
-)
-
-ec._add_ec(
- "TRANSFERS_INVALID_WTID",
- 1052,
- """
- The public key of given to a /transfers/ handler was malformed.
- """,
-)
-
-ec._add_ec(
- "DEPOSITS_INVALID_H_WIRE",
- 1053,
- """
- The wire hash of given to a /deposits/ handler was malformed.
- """,
-)
-
-ec._add_ec(
- "DEPOSITS_INVALID_MERCHANT_PUB",
- 1054,
- """
- The merchant key of given to a /deposits/ handler was malformed.
- """,
-)
-
-ec._add_ec(
- "DEPOSITS_INVALID_H_CONTRACT_TERMS",
- 1055,
- """
- The hash of the contract terms given to a /deposits/ handler was malformed.
- """,
-)
-
-ec._add_ec(
- "DEPOSITS_INVALID_COIN_PUB",
- 1056,
- """
- The coin public key of given to a /deposits/ handler was malformed.
- """,
-)
-
-ec._add_ec(
- "DEPOSITS_INVALID_BODY_BY_EXCHANGE",
- 1057,
- """
- The body returned by the exchange for a /deposits/ request was malformed. Error created client-side.
- """,
-)
-
-ec._add_ec(
- "DEPOSITS_INVALID_SIGNATURE_BY_EXCHANGE",
- 1058,
- """
- The signature returned by the exchange in a /deposits/ request was malformed. Error created client-side.
- """,
-)
-
-
-
-ec._add_ec(
- "WITHDRAW_INSUFFICIENT_FUNDS",
- 1100,
- """
- The given reserve does not have sufficient funds to admit the
- requested withdraw operation at this time. The response includes
- the current "balance" of the reserve as well as the transaction
- "history" that lead to this balance. This response is provided
- with HTTP status code #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_RESERVE_UNKNOWN",
- 1101,
- """
- The exchange has no information about the "reserve_pub" that
- was given.
- This response is provided with HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_AMOUNT_FEE_OVERFLOW",
- 1102,
- """
- The amount to withdraw together with the fee exceeds the
- numeric range for Taler amounts. This is not a client
- failure, as the coin value and fees come from the exchange's
- configuration.
- This response is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "AMOUNT_DEPOSITS_OVERFLOW",
- 1103,
- """
- All of the deposited amounts into this reserve total up to a
- value that is too big for the numeric range for Taler amounts.
- This is not a client failure, as the transaction history comes
- from the exchange's configuration. This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_HISTORIC_DENOMINATION_KEY_NOT_FOUND",
- 1104,
- """
- For one of the historic withdrawals from this reserve, the
- exchange could not find the denomination key.
- This is not a client failure, as the transaction history comes
- from the exchange's configuration. This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_AMOUNT_WITHDRAWALS_OVERFLOW",
- 1105,
- """
- All of the withdrawals from reserve total up to a
- value that is too big for the numeric range for Taler amounts.
- This is not a client failure, as the transaction history comes
- from the exchange's configuration. This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_RESERVE_WITHOUT_WIRE_TRANSFER",
- 1106,
- """
- The exchange somehow knows about this reserve, but there seem to
- have been no wire transfers made. This is not a client failure,
- as this is a database consistency issue of the exchange. This
- response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_SIGNATURE_FAILED",
- 1107,
- """
- The exchange failed to create the signature using the
- denomination key. This response is provided with HTTP status
- code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_DB_STORE_ERROR",
- 1108,
- """
- The exchange failed to store the withdraw operation in its
- database. This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_DB_FETCH_ERROR",
- 1109,
- """
- The exchange failed to check against historic withdraw data from
- database (as part of ensuring the idempotency of the operation).
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_DENOMINATION_KEY_NOT_FOUND",
- 1110,
- """
- The exchange is not aware of the denomination key
- the wallet requested for the withdrawal.
- This response is provided
- with HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_RESERVE_SIGNATURE_INVALID",
- 1111,
- """
- The signature of the reserve is not valid. This response is
- provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_HISTORY_DB_ERROR_INSUFFICIENT_FUNDS",
- 1112,
- """
- When computing the reserve history, we ended up with a negative
- overall balance, which should be impossible.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_RESERVE_HISTORY_IMPOSSIBLE",
- 1113,
- """
- When computing the reserve history, we ended up with a negative
- overall balance, which should be impossible.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_VALIDITY_IN_FUTURE",
- 1114,
- """
- Validity period of the coin to be withdrawn
- is in the future. Returned with an HTTP
- status of #MHD_HTTP_PRECONDITION_FAILED.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_VALIDITY_IN_PAST",
- 1115,
- """
- Withdraw period of the coin to be withdrawn
- is in the past. Returned with an HTTP
- status of #MHD_HTTP_GONE.
- """,
-)
-
-ec._add_ec(
- "DENOMINATION_KEY_LOST",
- 1116,
- """
- Withdraw period of the coin to be withdrawn
- is in the past. Returned with an HTTP
- status of #MHD_HTTP_GONE.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_RESERVE_BALANCE_CORRUPT",
- 1117,
- """
- The exchange's database entry with the reserve balance summary
- is inconsistent with its own history of the reserve.
- Returned with an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_REPLY_MALFORMED",
- 1118,
- """
- The exchange responded with a reply that did not satsify the protocol.
- This error is not used in the protocol but created client-side.
- """,
-)
-
-ec._add_ec(
- "WITHDRAW_UNBLIND_FAILURE",
- 1119,
- """
- The client failed to unblind the blind signature.
- This error is not used in the protocol but created client-side.
- """,
-)
-
-
-ec._add_ec(
- "RESERVE_STATUS_DB_ERROR",
- 1150,
- """
- The exchange failed to obtain the transaction history of the
- given reserve from the database.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "RESERVE_STATUS_UNKNOWN",
- 1151,
- """
- The reserve status was requested using a unknown key,
- to be returned with 404 Not Found.
- """,
-)
-
-ec._add_ec(
- "RESERVE_STATUS_REPLY_MALFORMED",
- 1152,
- """
- The exchange responded with a reply that did not satsify the protocol.
- This error is not used in the protocol but created client-side.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_INSUFFICIENT_FUNDS",
- 1200,
- """
- The respective coin did not have sufficient residual value
- for the /deposit operation (i.e. due to double spending).
- The "history" in the respose provides the transaction history
- of the coin proving this fact. This response is provided
- with HTTP status code #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_HISTORY_DB_ERROR",
- 1201,
- """
- The exchange failed to obtain the transaction history of the
- given coin from the database (this does not happen merely because
- the coin is seen by the exchange for the first time).
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_STORE_DB_ERROR",
- 1202,
- """
- The exchange failed to store the /depost information in the
- database. This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_DB_DENOMINATION_KEY_UNKNOWN",
- 1203,
- """
- The exchange database is unaware of the denomination key that
- signed the coin (however, the exchange process is; this is not
- supposed to happen; it can happen if someone decides to purge the
- DB behind the back of the exchange process). Hence the deposit
- is being refused. This response is provided with HTTP status
- code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_DENOMINATION_KEY_UNKNOWN",
- 1204,
- """
- The exchange was trying to lookup the denomination key for
- the purpose of a DEPOSIT operation. However, the denomination
- key is unavailable for that purpose. This can be because
- it is entirely unknown to the exchange or not in the validity
- period for the deposit operation. Hence the deposit
- is being refused. This response is provided with HTTP status
- code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_COIN_SIGNATURE_INVALID",
- 1205,
- """
- The signature made by the coin over the deposit permission is not
- valid. This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_DENOMINATION_SIGNATURE_INVALID",
- 1206,
- """
- The signature of the denomination key over the coin is not valid.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_NEGATIVE_VALUE_AFTER_FEE",
- 1207,
- """
- The stated value of the coin after the deposit fee is subtracted
- would be negative. This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_REFUND_DEADLINE_AFTER_WIRE_DEADLINE",
- 1208,
- """
- The stated refund deadline is after the wire deadline.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_INVALID_WIRE_FORMAT_TYPE",
- 1209,
- """
- The exchange does not recognize the validity of or support the
- given wire format type.
- This response is provided
- with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_INVALID_WIRE_FORMAT_JSON",
- 1210,
- """
- The exchange failed to canonicalize and hash the given wire format.
- For example, the merchant failed to provide the "salt" or
- a valid payto:// URI in the wire details. Note that while the
- exchange will do some basic sanity checking on the wire details,
- it cannot warrant that the banking system will ultimately be able
- to route to the specified address, even if this check passed.
- This response is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_INVALID_WIRE_FORMAT_CONTRACT_HASH_CONFLICT",
- 1211,
- """
- The hash of the given wire address does not match the hash
- specified in the proposal data. This response is provided with
- HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_INVALID_WIRE_FORMAT_ACCOUNT_NUMBER",
- 1213,
- """
- The exchange detected that the given account number is invalid for
- the selected wire format type. This response is provided with HTTP
- status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-
-ec._add_ec(
- "DEPOSIT_INVALID_TIMESTAMP",
- 1218,
- """
- Timestamp included in deposit permission is intolerably far off
- with respect to the clock of the exchange.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_DENOMINATION_VALIDITY_IN_FUTURE",
- 1219,
- """
- Validity period of the denomination key
- is in the future. Returned with an HTTP
- status of #MHD_HTTP_PRECONDITION_FAILED.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_DENOMINATION_EXPIRED",
- 1220,
- """
- Denomination key of the coin is past the
- deposit deadline. Returned with an HTTP
- status of #MHD_HTTP_GONE.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_INVALID_SIGNATURE_BY_EXCHANGE",
- 1221,
- """
- The signature provided by the exchange is not
- valid. Error created client-side.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_CURRENCY_MISMATCH",
- 1222,
- """
- The currency specified for the deposit is different from
- the currency of the coin. This response is provided with HTTP
- status code #MHD_HTTP_PRECONDITION_FAILED.
- """,
-)
-
-
-ec._add_ec(
- "MELT_INSUFFICIENT_FUNDS",
- 1300,
- """
- The respective coin did not have sufficient residual value
- for the /refresh/melt operation. The "history" in this
- response provdes the "residual_value" of the coin, which may
- be less than its "original_value". This response is provided
- with HTTP status code #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "MELT_DENOMINATION_KEY_NOT_FOUND",
- 1301,
- """
- The respective coin did not have sufficient residual value
- for the /refresh/melt operation. The "history" in this
- response provdes the "residual_value" of the coin, which may
- be less than its "original_value". This response is provided
- with HTTP status code #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "MELT_COIN_HISTORY_COMPUTATION_FAILED",
- 1302,
- """
- The exchange had an internal error reconstructing the
- transaction history of the coin that was being melted.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "MELT_DB_FETCH_ERROR",
- 1303,
- """
- The exchange failed to check against historic melt data from
- database (as part of ensuring the idempotency of the operation).
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "MELT_DB_STORE_SESSION_ERROR",
- 1304,
- """
- The exchange failed to store session data in the
- database.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "MELT_FEES_EXCEED_CONTRIBUTION",
- 1305,
- """
- The exchange encountered melt fees exceeding the melted
- coin's contribution. This response is provided
- with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "MELT_DENOMINATION_SIGNATURE_INVALID",
- 1306,
- """
- The denomination key signature on the melted coin is invalid.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "MELT_COIN_SIGNATURE_INVALID",
- 1307,
- """
- The signature made with the coin to be melted is invalid.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "MELT_HISTORY_DB_ERROR_INSUFFICIENT_FUNDS",
- 1308,
- """
- The exchange failed to obtain the transaction history of the
- given coin from the database while generating an insufficient
- funds errors.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "MELT_COIN_EXPIRED_NO_ZOMBIE",
- 1309,
- """
- The denomination of the given coin has past its expiration date and
- it is also not a valid zombie (that is, was not refreshed with the
- fresh coin being subjected to recoup).
- """,
-)
-
-ec._add_ec(
- "MELT_INVALID_SIGNATURE_BY_EXCHANGE",
- 1310,
- """
- The signature returned by the exchange in a melt request was malformed. Error created client-side.
- """,
-)
-
-ec._add_ec(
- "MELT_CURRENCY_MISMATCH",
- 1311,
- """
- The currency specified for the melt amount is different from
- the currency of the coin. This response is provided with HTTP
- status code #MHD_HTTP_PRECONDITION_FAILED.
- """,
-)
-
-ec._add_ec(
- "REFRESH_RECOUP_DENOMINATION_KEY_NOT_FOUND",
- 1351,
- """
- The exchange is unaware of the denomination key that was
- used to sign the melted zombie coin. This response is provided
- with HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "REFRESH_RECOUP_DENOMINATION_VALIDITY_IN_FUTURE",
- 1352,
- """
- Validity period of the denomination key
- is in the future. Returned with an HTTP
- status of #MHD_HTTP_PRECONDITION_FAILED.
- """,
-)
-
-ec._add_ec(
- "REFRESH_RECOUP_DENOMINATION_EXPIRED",
- 1353,
- """
- Denomination key of the coin is past the
- deposit deadline. Returned with an HTTP
- status of #MHD_HTTP_GONE.
- """,
-)
-
-ec._add_ec(
- "REFRESH_ZOMBIE_DENOMINATION_EXPIRED",
- 1354,
- """
- Denomination key of the coin is past the
- deposit deadline. Returned with an HTTP
- status of #MHD_HTTP_GONE.
- """,
-)
-
-ec._add_ec(
- "REVEAL_COMMITMENT_VIOLATION",
- 1370,
- """
- The provided transfer keys do not match up with the
- original commitment. Information about the original
- commitment is included in the response. This response is
- provided with HTTP status code #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "REVEAL_SIGNING_ERROR",
- 1371,
- """
- Failed to produce the blinded signatures over the coins
- to be returned.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "REVEAL_SESSION_UNKNOWN",
- 1372,
- """
- The exchange is unaware of the refresh session specified in
- the request.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "REVEAL_DB_FETCH_SESSION_ERROR",
- 1373,
- """
- The exchange failed to retrieve valid session data from the
- database.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "REVEAL_DB_FETCH_REVEAL_ERROR",
- 1374,
- """
- The exchange failed to retrieve previously revealed data from the
- database. This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "REVEAL_DB_COMMIT_ERROR",
- 1375,
- """
- The exchange failed to retrieve commitment data from the
- database.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "REVEAL_CNC_TRANSFER_ARRAY_SIZE_INVALID",
- 1376,
- """
- The size of the cut-and-choose dimension of the
- private transfer keys request does not match #TALER_CNC_KAPPA - 1.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "REVEAL_NEW_DENOMS_ARRAY_SIZE_EXCESSIVE",
- 1377,
- """
- The number of coins to be created in refresh exceeds the limits
- of the exchange.
- private transfer keys request does not match #TALER_CNC_KAPPA - 1.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "REVEAL_NEW_DENOMS_ARRAY_SIZE_MISMATCH",
- 1378,
- """
- The number of envelopes given does not match the number
- of denomination keys given.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "REVEAL_COST_CALCULATION_OVERFLOW",
- 1379,
- """
- The exchange encountered a numeric overflow totaling up
- the cost for the refresh operation. This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "REVEAL_AMOUNT_INSUFFICIENT",
- 1380,
- """
- The exchange's cost calculation shows that the melt amount
- is below the costs of the transaction. This response is provided
- with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "REVEAL_FRESH_DENOMINATION_KEY_NOT_FOUND",
- 1381,
- """
- The exchange is unaware of the denomination key that was
- requested for one of the fresh coins. This response is provided
- with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-
-ec._add_ec(
- "REVEAL_LINK_SIGNATURE_INVALID",
- 1382,
- """
- The signature made with the coin over the link data is invalid.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "REVEAL_KEYS_MISSING",
- 1383,
- """
- The exchange failed to generate the signature as
- it could not find the signing key for the denomination.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "REVEAL_INVALID_RCH",
- 1384,
- """
- The refresh session hash given to a /refreshes/ handler was malformed.
- """,
-)
-
-ec._add_ec(
- "REVEAL_REPLY_MALFORMED",
- 1385,
- """
- The exchange responded with a reply that did not satsify the protocol.
- This error is not used in the protocol but created client-side.
- """,
-)
-
-
-ec._add_ec(
- "LINK_COIN_UNKNOWN",
- 1400,
- """
- The coin specified in the link request is unknown to the exchange.
- This response is provided with HTTP status code
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "LINK_REPLY_MALFORMED",
- 1401,
- """
- The exchange responded with a reply that did not satsify the protocol.
- This error is not used in the protocol but created client-side.
- """,
-)
-
-ec._add_ec(
- "REFUND_COIN_NOT_FOUND",
- 1500,
- """
- The exchange knows literally nothing about the coin we were asked
- to refund. But without a transaction history, we cannot issue a
- refund. This is kind-of OK, the owner should just refresh it
- directly without executing the refund. This response is provided
- with HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "REFUND_CONFLICT",
- 1501,
- """
- We could not process the refund request as the coin's transaction
- history does not permit the requested refund at this time. The
- "history" in the response proves this. This response is provided
- with HTTP status code #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "REFUND_DEPOSIT_NOT_FOUND",
- 1503,
- """
- The exchange knows about the coin we were asked to refund, but
- not about the specific /deposit operation. Hence, we cannot
- issue a refund (as we do not know if this merchant public key is
- authorized to do a refund). This response is provided with HTTP
- status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "REFUND_CURRENCY_MISMATCH",
- 1504,
- """
- The currency specified for the refund is different from
- the currency of the coin. This response is provided with HTTP
- status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "REFUND_DB_INCONSISTENT",
- 1505,
- """
- When we tried to check if we already paid out the coin, the
- exchange's database suddenly disagreed with data it previously
- provided (internal inconsistency).
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "REFUND_MERCHANT_ALREADY_PAID",
- 1506,
- """
- The exchange can no longer refund the customer/coin as the
- money was already transferred (paid out) to the merchant.
- (It should be past the refund deadline.)
- This response is provided with HTTP status code
- #MHD_HTTP_GONE.
- """,
-)
-
-ec._add_ec(
- "REFUND_INSUFFICIENT_FUNDS",
- 1507,
- """
- The amount the exchange was asked to refund exceeds
- (with fees) the total amount of the deposit (including fees).
- This response is provided with HTTP status code
- #MHD_HTTP_PRECONDITION_FAILED.
- """,
-)
-
-ec._add_ec(
- "REFUND_DENOMINATION_KEY_NOT_FOUND",
- 1508,
- """
- The exchange failed to recover information about the
- denomination key of the refunded coin (even though it
- recognizes the key). Hence it could not check the fee
- strucutre.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "REFUND_FEE_TOO_LOW",
- 1509,
- """
- The refund fee specified for the request is lower than
- the refund fee charged by the exchange for the given
- denomination key of the refunded coin.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "REFUND_STORE_DB_ERROR",
- 1510,
- """
- The exchange failed to store the refund information to
- its database.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "REFUND_FEE_CURRENCY_MISMATCH",
- 1511,
- """
- The refund fee is specified in a different currency
- than the refund amount.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "REFUND_FEE_ABOVE_AMOUNT",
- 1512,
- """
- The refunded amount is smaller than the refund fee,
- which would result in a negative refund.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "REFUND_MERCHANT_SIGNATURE_INVALID",
- 1513,
- """
- The signature of the merchant is invalid.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "REFUND_MERCHANT_SIGNING_FAILED",
- 1514,
- """
- Merchant backend failed to create the refund confirmation signature.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "REFUND_INVALID_SIGNATURE_BY_EXCHANGE",
- 1515,
- """
- The signature returned by the exchange in a refund request was malformed. Error created client-side.
- """,
-)
-
-
-ec._add_ec(
- "ADMIN_ADD_INCOMING_WIREFORMAT_UNSUPPORTED",
- 1600,
- """
- The wire format specified in the "sender_account_details"
- is not understood or not supported by this exchange.
- Returned with an HTTP status code of #MHD_HTTP_NOT_FOUND.
- (As we did not find an interpretation of the wire format.)
- """,
-)
-
-ec._add_ec(
- "ADMIN_ADD_INCOMING_CURRENCY_UNSUPPORTED",
- 1601,
- """
- The currency specified in the "amount" parameter is not
- supported by this exhange. Returned with an HTTP status
- code of #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "ADMIN_ADD_INCOMING_DB_STORE",
- 1602,
- """
- The exchange failed to store information about the incoming
- transfer in its database. This response is provided with HTTP
- status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TRANSFERS_GET_DB_FETCH_FAILED",
- 1700,
- """
- The exchange encountered an error (that is not about not finding
- the wire transfer) trying to lookup a wire transfer identifier
- in the database. This response is provided with HTTP
- status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TRANSFERS_GET_DB_INCONSISTENT",
- 1701,
- """
- The exchange found internally inconsistent data when resolving a
- wire transfer identifier in the database. This response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TRANSFERS_GET_WTID_NOT_FOUND",
- 1702,
- """
- The exchange did not find information about the specified
- wire transfer identifier in the database. This response is
- provided with HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "TRANSFERS_GET_WIRE_FEE_NOT_FOUND",
- 1703,
- """
- The exchange did not find information about the wire transfer
- fees it charged. This response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TRANSFERS_GET_WIRE_FEE_INCONSISTENT",
- 1704,
- """
- The exchange found a wire fee that was above the total transfer
- value (and thus could not have been charged). This response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TRANSFERS_GET_REPLY_MALFORMED",
- 1705,
- """
- The exchange responded with a reply that did not satsify the protocol.
- This error is not used in the protocol but created client-side.
- """,
-)
-
-ec._add_ec(
- "DEPOSITS_GET_DB_FEE_INCONSISTENT",
- 1800,
- """
- The exchange found internally inconsistent fee data when
- resolving a transaction in the database. This
- response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "DEPOSITS_GET_DB_FETCH_FAILED",
- 1801,
- """
- The exchange encountered an error (that is not about not finding
- the transaction) trying to lookup a transaction
- in the database. This response is provided with HTTP
- status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "DEPOSITS_GET_NOT_FOUND",
- 1802,
- """
- The exchange did not find information about the specified
- transaction in the database. This response is
- provided with HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "DEPOSITS_GET_WTID_RESOLUTION_ERROR",
- 1803,
- """
- The exchange failed to identify the wire transfer of the
- transaction (or information about the plan that it was supposed
- to still happen in the future). This response is provided with
- HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "DEPOSITS_GET_MERCHANT_SIGNATURE_INVALID",
- 1804,
- """
- The signature of the merchant is invalid.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "RECOUP_DENOMINATION_KEY_UNKNOWN",
- 1850,
- """
- The given denomination key is not in the "recoup" set of the
- exchange right now. This response is provided with an
- HTTP status code of #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "RECOUP_SIGNATURE_INVALID",
- 1851,
- """
- The given coin signature is invalid for the request.
- This response is provided with an
- HTTP status code of #MHD_HTTP_FORBIDDEN.
- """,
-)
-
-ec._add_ec(
- "RECOUP_DENOMINATION_SIGNATURE_INVALID",
- 1852,
- """
- The signature of the denomination key over the coin is not valid.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "RECOUP_DB_FETCH_FAILED",
- 1853,
- """
- The exchange failed to access its own database about reserves.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "RECOUP_WITHDRAW_NOT_FOUND",
- 1854,
- """
- The exchange could not find the corresponding withdraw operation.
- The request is denied. This response is provided with an HTTP
- status code of #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "RECOUP_HISTORY_DB_ERROR",
- 1855,
- """
- The exchange obtained an internally inconsistent transaction
- history for the given coin. This response is provided with HTTP
- status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "RECOUP_DB_PUT_FAILED",
- 1856,
- """
- The exchange failed to store information about the recoup to be
- performed in the database. This response is provided with HTTP
- status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "RECOUP_COIN_BALANCE_ZERO",
- 1857,
- """
- The coin's remaining balance is zero. The request is denied.
- This response is provided with an HTTP status code of
- #MHD_HTTP_FORBIDDEN.
- """,
-)
-
-ec._add_ec(
- "RECOUP_BLINDING_FAILED",
- 1858,
- """
- The exchange failed to reproduce the coin's blinding.
- This response is provided with an HTTP status code of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "RECOUP_COIN_BALANCE_NEGATIVE",
- 1859,
- """
- The coin's remaining balance is zero. The request is denied.
- This response is provided with an HTTP status code of
- #MHD_HTTP_INTERNAL_SERVER_ERROR
- """,
-)
-
-ec._add_ec(
- "RECOUP_DENOMINATION_VALIDITY_IN_FUTURE",
- 1860,
- """
- Validity period of the denomination key
- is in the future. Returned with an HTTP
- status of #MHD_HTTP_PRECONDITION_FAILED.
- """,
-)
-
-ec._add_ec(
- "RECOUP_REPLY_MALFORMED",
- 1861,
- """
- The exchange responded with a reply that did not satsify the protocol.
- This error is not used in the protocol but created client-side.
- """,
-)
-
-ec._add_ec(
- "KEYS_HAVE_NOT_NUMERIC",
- 1900,
- """
- The "have" parameter was not a natural number.
- This response is provied with an HTTP status code of
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "KEYS_MISSING",
- 1901,
- """
- We currently cannot find any keys.
- This response is provied with an HTTP status code of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "KEYS_TIMETRAVEL_FORBIDDEN",
- 1902,
- """
- This exchange does not allow clients to request /keys for
- times other than the current (exchange) time.
- This response is provied with an HTTP status code of
- #MHD_HTTP_FORBIDDEN.
- """,
-)
-
-ec._add_ec(
- "KEYS_INVALID",
- 1903,
- """
- The keys response was malformed. This error is generated
- client-side.
- """,
-)
-
-
-
-ec._add_ec(
- "INSTANCE_UNKNOWN",
- 2000,
- """
- The backend could not find the merchant instance specified
- in the request. This response is
- provided with HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "PROPOSAL_INSTANCE_CONFIGURATION_LACKS_WIRE",
- 2002,
- """
- The backend lacks a wire transfer method configuration option
- for the given instance.
- """,
-)
-
-
-ec._add_ec(
- "PAY_MERCHANT_INVALID_RESPONSE",
- 2100,
- """
- The merchant failed to provide a meaningful response
- to a /pay request. This error is created client-side.
- """,
-)
-
-ec._add_ec(
- "PAY_EXCHANGE_FAILED",
- 2101,
- """
- The exchange failed to provide a meaningful response
- to a /deposit request. This response is provided
- with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY, or
- #MHD_HTTP_CONFLICT in case the exchange reports
- #TALER_EC_DEPOSIT_INSUFFICIENT_FUNDS (aka double spending).
- """,
-)
-
-ec._add_ec(
- "PAY_DB_STORE_PAY_ERROR",
- 2102,
- """
- The merchant failed to commit the exchanges' response to
- a /deposit request to its database. This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PAY_EXCHANGE_REJECTED",
- 2103,
- """
- The specified exchange is not supported/trusted by
- this merchant. This response is provided
- with HTTP status code #MHD_HTTP_PRECONDITION_FAILED.
- """,
-)
-
-ec._add_ec(
- "PAY_DENOMINATION_KEY_NOT_FOUND",
- 2104,
- """
- The denomination key used for payment is not listed among the
- denomination keys of the exchange. This response is provided
- with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "PAY_DENOMINATION_KEY_AUDITOR_FAILURE",
- 2105,
- """
- The denomination key used for payment is not audited by an
- auditor approved by the merchant. This response is provided
- with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "PAY_AMOUNT_OVERFLOW",
- 2106,
- """
- There was an integer overflow totaling up the amounts or
- deposit fees in the payment. This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PAY_FEES_EXCEED_PAYMENT",
- 2107,
- """
- The deposit fees exceed the total value of the payment.
- This response is provided
- with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "PAY_PAYMENT_INSUFFICIENT_DUE_TO_FEES",
- 2108,
- """
- After considering deposit and wire fees, the payment is insufficient
- to satisfy the required amount for the contract. The client should
- revisit the logic used to calculate fees it must cover.
- This response is provided
- with HTTP status code #MHD_HTTP_ACCEPTED.
- """,
-)
-
-ec._add_ec(
- "PAY_PAYMENT_INSUFFICIENT",
- 2109,
- """
- Even if we do not consider deposit and wire fees,
- the payment is insufficient to satisfy the required amount for
- the contract. This response is provided with HTTP status code
- #MHD_HTTP_ACCEPTED.
- """,
-)
-
-ec._add_ec(
- "PAY_COIN_SIGNATURE_INVALID",
- 2110,
- """
- The signature over the contract of one of the coins
- was invalid. This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "PAY_EXCHANGE_TIMEOUT",
- 2111,
- """
- We failed to contact the exchange for the /pay request.
- This response is provided
- with HTTP status code #MHD_HTTP_REQUEST_TIMEOUT.
- """,
-)
-
-ec._add_ec(
- "PAY_EXCHANGE_LOOKUP_FAILED",
- 2112,
- """
- When we tried to find information about the exchange
- to issue the deposit, we failed. This usually only
- happens if the merchant backend is somehow unable to
- get its own HTTP client logic to work.
- This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PAY_REFUND_DEADLINE_PAST_WIRE_TRANSFER_DEADLINE",
- 2114,
- """
- The refund deadline in the contract is after the
- transfer deadline.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR as this should have
- been caught when the offer was first setup.
- """,
-)
-
-ec._add_ec(
- "PAY_COINS_ARRAY_EMPTY",
- 2115,
- """
- The request fails to provide coins for the payment.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "PAY_DB_FETCH_PAY_ERROR",
- 2116,
- """
- The merchant failed to fetch the contract terms from the
- merchant's database. This response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PAY_DB_FETCH_TRANSACTION_ERROR",
- 2117,
- """
- The merchant failed to fetch the merchant's previous state with
- respect to transactions from its database. This response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-
-ec._add_ec(
- "PAY_DB_STORE_TRANSACTION_ERROR",
- 2119,
- """
- The merchant failed to store the merchant's state with
- respect to the transaction in its database. This response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PAY_EXCHANGE_KEYS_FAILURE",
- 2120,
- """
- The exchange failed to provide a valid response to
- the merchant's /keys request.
- This response is provided
- with HTTP status code #MHD_HTTP_FAILED_DEPENDENDCY.
- """,
-)
-
-ec._add_ec(
- "PAY_OFFER_EXPIRED",
- 2121,
- """
- The payment is too late, the offer has expired.
- This response is
- provided with HTTP status code #MHD_HTTP_GONE.
- """,
-)
-
-ec._add_ec(
- "PAY_MERCHANT_FIELD_MISSING",
- 2122,
- """
- The "merchant" field is missing in the proposal data.
- This response is
- provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "PAY_FAILED_COMPUTE_PROPOSAL_HASH",
- 2123,
- """
- Failed computing a hash code (likely server out-of-memory).
- This response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PAY_WIRE_HASH_UNKNOWN",
- 2124,
- """
- Failed to locate merchant's account information matching the
- wire hash given in the proposal.
- This response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PAY_WIRE_FEE_CURRENCY_MISMATCH",
- 2125,
- """
- We got different currencies for the wire fee and the maximum wire
- fee. This response is provided with HTTP status code of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PAY_WRONG_INSTANCE",
- 2127,
- """
- A unknown merchant public key was included in the payment. That
- happens typically when the wallet sends the payment to the wrong
- merchant instance.
- This response is provided with an HTTP status code of
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "PAY_EXCHANGE_HAS_NO_KEYS",
- 2128,
- """
- The exchange failed to give us a response when we asked for /keys.
- This response is provided
- with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "PAY_DENOMINATION_DEPOSIT_EXPIRED",
- 2129,
- """
- The deposit time for the denomination has expired.
- This response is provided
- with HTTP status code #MHD_HTTP_GONE.
- """,
-)
-
-ec._add_ec(
- "PAY_PROPOSAL_NOT_FOUND",
- 2130,
- """
- The proposal is not known to the backend.
- This response is provided with an HTTP status code of
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "PAY_EXCHANGE_WIRE_FEE_ADDITION_FAILED",
- 2131,
- """
- The exchange of the deposited coin charges a wire fee that
- could not be added to the total (total amount
- too high). This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PAY_REFUNDED",
- 2132,
- """
- The contract was not fully paid because of refunds.
- Note that clients MAY treat this as paid if, for example,
- contracts must be executed despite of refunds.
- This response is provided
- with HTTP status code #MHD_HTTP_PAYMENT_REQUIRED.
- """,
-)
-
-ec._add_ec(
- "PAY_REFUNDS_EXCEED_PAYMENTS",
- 2133,
- """
- According to our database, we have refunded more than we
- were paid (which should not be possible).
- This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PAY_ABORT_REFUND_REFUSED_PAYMENT_COMPLETE",
- 2134,
- """
- Legacy stuff. Remove me with protocol v1.
- This response is provided
- with HTTP status code #MHD_HTTP_PREREQUISTE.
- """,
-)
-
-ec._add_ec(
- "ABORT_EXCHANGE_KEYS_FAILURE",
- 2150,
- """
- The merchant failed to contact the exchange.
- This response is provided with HTTP status code of
- #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "ABORT_EXCHANGE_REFUND_FAILED",
- 2151,
- """
- The merchant failed to send the exchange the refund request.
- This response is provided with HTTP status code of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "ABORT_EXCHANGE_LOOKUP_FAILED",
- 2152,
- """
- The merchant failed to find the exchange to process the lookup.
- This response is provided with HTTP status code of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "ABORT_DB_STORE_ABORT_ERROR",
- 2153,
- """
- The merchant failed to store the abort request in its database.
- This response is provided with HTTP status code of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "ABORT_DB_STORE_TRANSACTION_ERROR",
- 2154,
- """
- The merchant failed to repeatedly serialize the transaction.
- This response is provided with HTTP status code of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "ABORT_DB_FETCH_TRANSACTION_ERROR",
- 2155,
- """
- The merchant failed in the lookup part of the transaction.
- This response is provided with HTTP status code of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "ABORT_CONTRACT_NOT_FOUND",
- 2156,
- """
- The merchant could not find the contract.
- This response is provided with HTTP status code of
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "ABORT_REFUND_REFUSED_PAYMENT_COMPLETE",
- 2157,
- """
- The payment was already completed and thus cannot be
- aborted anymore.
- This response is provided with HTTP status code of
- #MHD_HTTP_PRECONDITION_FAILED.
- """,
-)
-
-ec._add_ec(
- "ABORT_CONTRACT_HASH_MISSMATCH",
- 2158,
- """
- The hash provided by the wallet does not match the order.
- This response is provided with HTTP status code of
- #MHD_HTTP_FORBIDDEN.
- """,
-)
-
-ec._add_ec(
- "ABORT_COINS_ARRAY_EMPTY",
- 2159,
- """
- The array of coins cannot be empty.
- This response is provided with HTTP status code of
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "ABORT_EXCHANGE_TIMEOUT",
- 2160,
- """
- The merchant experienced a timeout processing the request.
- This response is provided with HTTP status code of
- #MHD_HTTP_REQUEST_TIMEOUT.
- """,
-)
-
-ec._add_ec(
- "HISTORY_TIMESTAMP_OVERFLOW",
- 2200,
- """
- Integer overflow with specified timestamp argument detected.
- This response is provided
- with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "HISTORY_DB_FETCH_ERROR",
- 2201,
- """
- Failed to retrieve history from merchant database.
- This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "POLL_PAYMENT_CONTRACT_NOT_FOUND",
- 2250,
- """
- The backend could not find the contract specified
- in the request. This response is
- provided with HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "POLL_PAYMENT_REPLY_MALFORMED",
- 2251,
- """
- The response provided by the merchant backend was malformed.
- This error is created client-side.
- """,
-)
-
-
-ec._add_ec(
- "TRACK_TRANSACTION_EXCHANGE_TIMEOUT",
- 2300,
- """
- We failed to contact the exchange for the /track/transaction
- request. This response is provided with HTTP status code
- #MHD_HTTP_SERVICE_UNAVAILABLE.
- """,
-)
-
-ec._add_ec(
- "TRACK_TRANSACTION_EXCHANGE_KEYS_FAILURE",
- 2301,
- """
- We failed to get a valid /keys response from the exchange for the /track/transaction
- request. This response is provided with HTTP status code
- #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TRACK_TRANSACTION_TRANSACTION_UNKNOWN",
- 2302,
- """
- The backend could not find the transaction specified
- in the request. This response is
- provided with HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "TRACK_TRANSACTION_DB_FETCH_TRANSACTION_ERROR",
- 2303,
- """
- The backend had a database access error trying to
- retrieve transaction data from its database.
- The response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TRACK_TRANSACTION_DB_FETCH_PAYMENT_ERROR",
- 2304,
- """
- The backend had a database access error trying to
- retrieve payment data from its database.
- The response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TRACK_TRANSACTION_DB_NO_DEPOSITS_ERROR",
- 2305,
- """
- The backend found no applicable deposits in the database.
- This is odd, as we know about the transaction, but not
- about deposits we made for the transaction. The response is
- provided with HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "TRACK_TRANSACTION_COIN_TRACE_ERROR",
- 2306,
- """
- We failed to obtain a wire transfer identifier for one
- of the coins in the transaction. The response is
- provided with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY if
- the exchange had a hard error, or #MHD_HTTP_ACCEPTED if the
- exchange signaled that the transfer was in progress.
- """,
-)
-
-ec._add_ec(
- "TRACK_TRANSACTION_WIRE_TRANSFER_TRACE_ERROR",
- 2307,
- """
- We failed to obtain the full wire transfer identifier for the
- transfer one of the coins was aggregated into.
- The response is
- provided with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TRACK_TRANSACTION_CONFLICTING_REPORTS",
- 2308,
- """
- We got conflicting reports from the exhange with
- respect to which transfers are included in which
- aggregate.
- The response is
- provided with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-
-ec._add_ec(
- "GET_TRANSFERS_DB_FETCH_ERROR",
- 2350,
- """
- We did failed to retrieve information from our database. The response
- is provided with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_EXCHANGE_TIMEOUT",
- 2400,
- """
- We failed to contact the exchange for the /track/transfer
- request. This response is provided with HTTP status code
- #MHD_HTTP_SERVICE_UNAVAILABLE.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_EXCHANGE_KEYS_FAILURE",
- 2401,
- """
- We failed to obtain an acceptable /keys response from the exchange
- for the /track/transfer request. This response is provided with HTTP status code
- #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_DB_STORE_COIN_ERROR",
- 2402,
- """
- We failed to persist coin wire transfer information in
- our merchant database.
- The response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_REQUEST_ERROR",
- 2403,
- """
- We internally failed to execute the /track/transfer request.
- The response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_DB_STORE_TRANSFER_ERROR",
- 2404,
- """
- We failed to persist wire transfer information in
- our merchant database.
- The response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_EXCHANGE_ERROR",
- 2405,
- """
- The exchange returned an error from /track/transfer.
- The response is
- provided with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_DB_FETCH_DEPOSIT_ERROR",
- 2406,
- """
- We failed to fetch deposit information from
- our merchant database.
- The response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_DB_INTERNAL_LOGIC_ERROR",
- 2407,
- """
- We encountered an internal logic error.
- The response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_CONFLICTING_REPORTS",
- 2408,
- """
- The exchange gave conflicting information about a coin which has
- been wire transferred.
- The response is provided with HTTP status code
- #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_JSON_RESPONSE_ERROR",
- 2409,
- """
- The merchant backend had problems in creating the JSON response.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_JSON_BAD_WIRE_FEE",
- 2410,
- """
- The exchange charged a different wire fee than what it
- originally advertised, and it is higher. The response
- is provided with an HTTP status of
- #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-
-ec._add_ec(
- "POST_TRANSFERS_ACCOUNT_NOT_FOUND",
- 2411,
- """
- We did not find the account that the transfer was made to. The response
- is provided with an HTTP status of
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_DB_STORE_ERROR",
- 2412,
- """
- We did failed to store information in our database. The response
- is provided with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "POST_TRANSFERS_DB_LOOKUP_ERROR",
- 2413,
- """
- We did failed to retrieve information from our database. The response
- is provided with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-
-ec._add_ec(
- "POST_INSTANCES_ALREADY_EXISTS",
- 2450,
- """
- The merchant backend cannot create an instance under the
- given identifier as one already exists. Use PATCH to
- modify the existing entry. The response
- is provied with an HTTP status of
- #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "POST_INSTANCES_BAD_PAYTO_URIS",
- 2451,
- """
- The merchant backend cannot create an instance because
- the specified bank accounts are somehow invalid.
- The response is provied with an HTTP status of
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "POST_INSTANCES_DB_START_ERROR",
- 2452,
- """
- The merchant backend cannot create an instance because
- it failed to start the database transaction.
- The response is provied with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "POST_INSTANCES_DB_COMMIT_ERROR",
- 2453,
- """
- The merchant backend cannot create an instance because
- it failed to commit the database transaction.
- The response is provied with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "DELETE_INSTANCES_ID_DB_HARD_FAILURE",
- 2454,
- """
- The merchant backend cannot delete an instance because
- it failed to commit the database transaction.
- The response is provied with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "DELETE_INSTANCES_ID_NO_SUCH_INSTANCE",
- 2455,
- """
- The merchant backend cannot delete the data because
- it already does not exist.
- The response is provied with an HTTP status of
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "PATCH_INSTANCES_BAD_PAYTO_URIS",
- 2456,
- """
- The merchant backend cannot update an instance because
- the specified bank accounts are somehow invalid.
- The response is provied with an HTTP status of
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "PATCH_INSTANCES_DB_START_ERROR",
- 2457,
- """
- The merchant backend cannot patch an instance because
- it failed to start the database transaction.
- The response is provied with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PATCH_INSTANCES_DB_COMMIT_ERROR",
- 2458,
- """
- The merchant backend cannot patch an instance because
- it failed to commit the database transaction.
- The response is provied with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-
-ec._add_ec(
- "MAP_IN_UNMATCHED_HASH",
- 2500,
- """
- The hash provided in the request of /map/in does not match
- the contract sent alongside in the same request.
- """,
-)
-
-ec._add_ec(
- "PROPOSAL_STORE_DB_ERROR",
- 2501,
- """
- The backend encountered an error while trying to store the
- h_contract_terms into the database.
- The response is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PROPOSAL_LOOKUP_DB_ERROR",
- 2502,
- """
- The backend encountered an error while trying to retrieve the
- proposal data from database. Likely to be an internal error.
- The response is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PROPOSAL_LOOKUP_NOT_FOUND",
- 2503,
- """
- The proposal being looked up is not found on this merchant.
- Returned with an HTTP status code of #MHD_HTTP_NOT_FOUND
- """,
-)
-
-ec._add_ec(
- "PROPOSAL_NO_LOCALTIME",
- 2504,
- """
- The proposal had no timestamp and the backend failed to obtain the local time.
- Likely to be an internal error.
- The response is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PROPOSAL_ORDER_PARSE_ERROR",
- 2505,
- """
- The order provided to the backend could not be parsed, some
- required fields were missing or ill-formed.
- Returned with an HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "PROPOSAL_STORE_DB_ERROR_HARD",
- 2506,
- """
- The backend encountered an error while trying to find the
- existing proposal in the database.
- The response is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PROPOSAL_STORE_DB_ERROR_SOFT",
- 2507,
- """
- The backend encountered an error while trying to find the
- existing proposal in the database.
- The response is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PROPOSAL_STORE_DB_ERROR_ALREADY_EXISTS",
- 2508,
- """
- The backend encountered an error: the proposal already
- exists.
- The response is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PROPOSAL_ORDER_BAD_CURRENCY",
- 2509,
- """
- The order provided to the backend uses an amount
- in a currency that does not match the backend's
- configuration.
- Returned with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "PROPOSAL_REPLY_MALFORMED",
- 2510,
- """
- The response provided by the merchant backend was malformed.
- This error is created client-side.
- """,
-)
-
-ec._add_ec(
- "ORDERS_DELETE_NO_SUCH_ORDER",
- 2511,
- """
- The order provided to the backend could not be deleted, it is not known.
- Returned with an HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "ORDERS_DELETE_AWAITING_PAYMENT",
- 2512,
- """
- The order provided to the backend could not be deleted, our offer is still
- valid and awaiting payment.
- Returned with an HTTP status code #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "ORDERS_DELETE_DB_HARD_FAILURE",
- 2513,
- """
- The order provided to the backend could not be deleted, due to a database error.
- Returned with an HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "ORDERS_LOOKUP_PRODUCT_DB_HARD_FAILURE",
- 2514,
- """
- The order provided to the backend could not be completed, due to a database error
- trying to fetch product inventory data.
- Returned with an HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "ORDERS_LOOKUP_PRODUCT_DB_SOFT_FAILURE",
- 2515,
- """
- The order provided to the backend could not be completed, due to a database
- serialization error (which should be impossible) trying to fetch product inventory data.
- Returned with an HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "ORDERS_LOOKUP_PRODUCT_NOT_FOUND",
- 2516,
- """
- The order provided to the backend could not be completed, because a product
- to be completed via inventory data is not actually in our inventory.
- Returned with an HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "ORDERS_GET_DB_LOOKUP_ERROR",
- 2517,
- """
- We could not obtain a list of all orders because of a database failure.
- Returned with an HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "ORDERS_CLAIM_HARD_DB_ERROR",
- 2518,
- """
- We could not claim the order because of a database failure.
- Returned with an HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "ORDERS_CLAIM_SOFT_DB_ERROR",
- 2519,
- """
- We could not claim the order because of a database serialization failure.
- Returned with an HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "ORDERS_CLAIM_NOT_FOUND",
- 2520,
- """
- We could not claim the order because the backend is unaware of it.
- Returned with an HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "ORDERS_ALREADY_CLAIMED",
- 2521,
- """
- We could not claim the order because someone else claimed it first.
- Returned with an HTTP status code #MHD_HTTP_CONFLICT.
- """,
-)
-
-
-
-
-ec._add_ec(
- "GET_PRODUCTS_DB_LOOKUP_ERROR",
- 2550,
- """
- The merchant backend failed to lookup the products.
- The response is provied with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_POST_DB_START_ERROR",
- 2551,
- """
- The merchant backend failed to start the transaction.
- The response is provied with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_POST_CONFLICT_PRODUCT_EXISTS",
- 2552,
- """
- The product ID exists.
- The response is provied with an HTTP status of
- #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_POST_DB_COMMIT_SOFT_ERROR",
- 2553,
- """
- The merchant backend failed to serialize the transaction.
- The response is provied with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_POST_DB_COMMIT_HARD_ERROR",
- 2554,
- """
- The merchant backend failed to commit the transaction.
- The response is provied with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_PATCH_DB_COMMIT_HARD_ERROR",
- 2555,
- """
- The merchant backend failed to commit the transaction.
- The response is provied with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_PATCH_UNKNOWN_PRODUCT",
- 2556,
- """
- The merchant backend did not find the product to be updated.
- The response is provied with an HTTP status of
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_PATCH_TOTAL_LOST_REDUCED",
- 2557,
- """
- The update would have reduced the total amount of product
- lost, which is not allowed.
- The response is provied with an HTTP status of
- #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_PATCH_TOTAL_LOST_EXCEEDS_STOCKS",
- 2558,
- """
- The update would have mean that more stocks were
- lost than what remains from total inventory after sales, which is not allowed.
- The response is provied with an HTTP status of
- #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_PATCH_TOTAL_STOCKED_REDUCED",
- 2559,
- """
- The update would have reduced the total amount of product
- in stock, which is not allowed.
- The response is provied with an HTTP status of
- #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_LOCK_INSUFFICIENT_STOCKS",
- 2560,
- """
- The lock request is for more products than we have left (unlocked) in stock.
- The response is provied with an HTTP status of
- #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_LOCK_UNKNOWN_PRODUCT",
- 2561,
- """
- The lock request is for an unknown product.
- The response is provied with an HTTP status of
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_DELETE_DB_HARD_FAILURE",
- 2562,
- """
- The deletion request resulted in a hard database error.
- The response is provied with an HTTP status of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_DELETE_NO_SUCH_PRODUCT",
- 2563,
- """
- The deletion request was for a product unknown to the backend.
- The response is provied with an HTTP status of
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "PRODUCTS_DELETE_CONFLICTING_LOCK",
- 2564,
- """
- The deletion request is for a product that is locked.
- The response is provied with an HTTP status of
- #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "REFUND_LOOKUP_INVALID_RESPONSE",
- 2600,
- """
- The merchant returned a malformed response. Error created
- client-side.
- """,
-)
-
-ec._add_ec(
- "REFUND_ORDER_ID_UNKNOWN",
- 2601,
- """
- The frontend gave an unknown order id to issue the refund to.
- """,
-)
-
-ec._add_ec(
- "REFUND_INCONSISTENT_AMOUNT",
- 2602,
- """
- The amount to be refunded is inconsistent: either is lower than
- the previous amount being awarded, or it is too big to be paid back.
- In this second case, the fault stays on the business dept. side.
- Returned with an HTTP status of #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "REFUND_LOOKUP_DB_ERROR",
- 2603,
- """
- The backend encountered an error while trying to retrieve the
- payment data from database. Likely to be an internal error.
- """,
-)
-
-ec._add_ec(
- "REFUND_MERCHANT_DB_COMMIT_ERROR",
- 2604,
- """
- The backend encountered an error while trying to retrieve the
- payment data from database. Likely to be an internal error.
- """,
-)
-
-ec._add_ec(
- "PAY_DB_STORE_PAYMENTS_ERROR",
- 2605,
- """
- Payments are stored in a single db transaction; this error indicates
- that one db operation within that transaction failed. This might involve
- storing of coins or other related db operations, like starting/committing
- the db transaction or marking a contract as paid.
- """,
-)
-
-ec._add_ec(
- "PAY_REFUND_SIGNATURE_FAILED",
- 2606,
- """
- The backend failed to sign the refund request.
- """,
-)
-
-ec._add_ec(
- "REFUND_LOOKUP_NO_REFUND",
- 2607,
- """
- The merchant backend is not available of any applicable refund(s) for this order.
- Returned with an HTTP status of #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-
-ec._add_ec(
- "RESERVES_POST_UNSUPPORTED_WIRE_METHOD",
- 2650,
- """
- The requested wire method is not supported by the exchange.
- Returned with an HTTP status of #MHD_HTTP_CONFLICT.
- """,
-)
-
-ec._add_ec(
- "RESERVES_POST_DB_COMMIT_HARD_ERROR",
- 2651,
- """
- The backend failed to commit the result to the database.
- Returned with an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "GET_RESERVES_DB_LOOKUP_ERROR",
- 2652,
- """
- The backend failed to fetch the requested information from the database.
- Returned with an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TIP_AUTHORIZE_INSTANCE_DOES_NOT_TIP",
- 2701,
- """
- The backend knows the instance that was supposed to support the
- tip, but it was not configured for tipping (i.e. has no exchange
- associated with it). Likely to be a configuration
- error. Returned with an HTTP status code of #MHD_HTTP_PRECONDITION_FAILED.
- """,
-)
-
-ec._add_ec(
- "TIP_AUTHORIZE_RESERVE_EXPIRED",
- 2702,
- """
- The reserve that was used to fund the tips has expired.
- Returned with an HTTP status code of
- #MHD_HTTP_GONE.
- """,
-)
-
-ec._add_ec(
- "TIP_AUTHORIZE_RESERVE_UNKNOWN",
- 2703,
- """
- The reserve that was used to fund the tips was not found in the DB.
- Returned with an HTTP status code of
- #MHD_HTTP_SERVICE_UNAVAILABLE.
- """,
-)
-
-ec._add_ec(
- "TIP_AUTHORIZE_INSUFFICIENT_FUNDS",
- 2704,
- """
- The backend knows the instance that was supposed to support the
- tip, and it was configured for tipping. However, the funds
- remaining are insufficient to cover the tip, and the merchant
- should top up the reserve.
- Returned with an HTTP status code of
- #MHD_HTTP_PRECONDITION FAILED.
- """,
-)
-
-ec._add_ec(
- "TIP_AUTHORIZE_DB_HARD_ERROR",
- 2705,
- """
- The backend had trouble accessing the database to persist
- information about the tip authorization.
- Returned with an HTTP status code of internal error.
- """,
-)
-
-ec._add_ec(
- "TIP_AUTHORIZE_DB_SOFT_ERROR",
- 2706,
- """
- The backend had trouble accessing the database to persist
- information about the tip authorization.
- The problem might be fixable by repeating the transaction.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_RESERVE_STATUS_FAILED_EXCHANGE_DOWN",
- 2707,
- """
- The backend failed to obtain a reserve status from the exchange.
- This response is provided
- with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_RESERVE_HISTORY_FAILED_EMPTY",
- 2708,
- """
- The backend got an empty (!) reserve history from the exchange.
- This response is provided
- with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_RESERVE_HISTORY_INVALID_NO_DEPOSIT",
- 2709,
- """
- The backend got an invalid reserve history
- (fails to start with a deposit) from the exchange.
- This response is provided
- with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_RESERVE_UNKNOWN_TO_EXCHANGE",
- 2710,
- """
- The backend got an 404 response from the exchange
- when it inquired about the reserve history.
- The response is provided
- with HTTP status code #MHD_HTTP_SERVICE_UNAVAILABLE.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_RESERVE_CURRENCY_MISMATCH",
- 2711,
- """
- The backend got a reserve with a currency that does not match
- the backend's currency.
- The response is provided
- with HTTP status code #MHD_HTTP_SERVICE_UNAVAILABLE.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_RESERVE_HISTORY_ARITHMETIC_ISSUE_DEPOSIT",
- 2712,
- """
- The backend got a reserve history with amounts it cannot
- process (addition failure in deposits).
- The response is provided
- with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_RESERVE_HISTORY_ARITHMETIC_ISSUE_WITHDRAW",
- 2713,
- """
- The backend got a reserve history with amounts it cannot
- process (addition failure in withdraw amounts).
- The response is provided
- with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_RESERVE_HISTORY_ARITHMETIC_ISSUE_CLOSED",
- 2714,
- """
- The backend got a reserve history with amounts it cannot
- process (addition failure in closing amounts).
- The response is provided
- with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_RESERVE_HISTORY_ARITHMETIC_ISSUE_INCONSISTENT",
- 2715,
- """
- The backend got a reserve history with inconsistent amounts.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_DB_ERROR",
- 2716,
- """
- The backend encountered a database error querying tipping reserves.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_RESERVE_HISTORY_FAILED",
- 2717,
- """
- The backend got an unexpected resever history reply from the exchange.
- This response is provided
- with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_RESERVE_HISTORY_ARITHMETIC_ISSUE_RECOUP",
- 2718,
- """
- The backend got a reserve history with amounts it cannot
- process (addition failure in withdraw amounts).
- The response is provided
- with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_INSTANCE_DOES_NOT_TIP",
- 2719,
- """
- The backend knows the instance that was supposed to support the
- tip, but it was not configured for tipping (i.e. has no exchange
- associated with it). Likely to be a configuration
- error. Returned with an HTTP status code of #MHD_HTTP_PRECONDITION_FAILED.
- """,
-)
-
-ec._add_ec(
- "TIP_QUERY_TIP_ID_UNKNOWN",
- 2720,
- """
- The tip id is unknown. This could happen if the
- tip id is wrong or the tip authorization expired.
- """,
-)
-
-ec._add_ec(
- "RESERVES_DELETE_DB_HARD_FAILURE",
- 2721,
- """
- The reserve could not be deleted due to a database failure.
- Returned with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "RESERVES_DELETE_NO_SUCH_RESERVE",
- 2722,
- """
- The reserve could not be deleted because it is unknown.
- Returned with HTTP status code #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "TIP_LOOKUP_RESERVE_DB_FAILURE",
- 2723,
- """
- The backend got an unexpected error trying to lookup reserve
- details from the backend.
- This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TIP_AUTHORIZE_DB_SERIALIZATION_FAILURE",
- 2724,
- """
- The backend repeatedly failed to serialize the transaction to authorize the tip.
- This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TIP_AUTHORIZE_DB_START_FAILURE",
- 2725,
- """
- The backend failed to start the transaction to authorize the tip.
- This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-
-ec._add_ec(
- "TIP_AUTHORIZE_DB_LOOKUP_RESERVE_FAILURE",
- 2726,
- """
- The backend failed looking up the reserve needed to authorize the tip.
- This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TIP_AUTHORIZE_DB_RESERVE_NOT_FOUND",
- 2727,
- """
- The backend failed to find a reserve needed to authorize the tip.
- This response is provided
- with HTTP status code #MHD_HTTP_SERVICE_UNAVAILABLE.
- """,
-)
-
-ec._add_ec(
- "TIP_AUTHORIZE_DB_RESERVE_INVARIANT_FAILURE",
- 2728,
- """
- The backend encountered an internal invariant violation.
- This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TIP_AUTHORIZE_DB_RESERVE_EXPIRED",
- 2729,
- """
- The selected exchange expired.
- This response is provided
- with HTTP status code #MHD_HTTP_GONE.
- """,
-)
-
-ec._add_ec(
- "TIP_AUTHORIZE_DB_UPDATE_RESERVE_FAILURE",
- 2730,
- """
- The backend failed updating the reserve needed to authorize the tip.
- This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TIP_ENABLE_DB_TRANSACTION_ERROR",
- 2750,
- """
- The backend had trouble accessing the database to persist
- information about enabling tips.
- Returned with an HTTP status code of internal error.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_TIP_ID_UNKNOWN",
- 2800,
- """
- The tip ID is unknown. This could happen if the tip has
- expired. Returned with an HTTP status code of
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_NO_FUNDS",
- 2801,
- """
- The amount requested exceeds the remaining tipping balance for this tip ID.
- Returned with an HTTP status code of "Conflict" (as it conflicts with
- a previous pickup operation).
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_DB_ERROR_SOFT",
- 2802,
- """
- We encountered a DB error, repeating the request may work.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_DB_ERROR_HARD",
- 2803,
- """
- We encountered a DB error, repeating the request will not help.
- This is an internal server error.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_AMOUNT_CHANGED",
- 2804,
- """
- The same pickup ID was already used for picking up a different
- amount. This points to a very strange internal error as the
- pickup ID is derived from the denomination key which is tied
- to a particular amount. Hence this should also be an internal
- server error.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_EXCHANGE_DOWN",
- 2805,
- """
- We failed to contact the exchange to obtain the denomination
- keys. Returned with a response code
- #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_EXCHANGE_LACKED_KEYS",
- 2806,
- """
- We contacted the exchange to obtain any denomination
- keys, but got no valid keys.
- Returned with a response code
- #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_EXCHANGE_LACKED_KEY",
- 2807,
- """
- We contacted the exchange to obtain at least one of
- the denomination keys specified in the request.
- Returned with a response code "not found" (404).
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_EXCHANGE_AMOUNT_OVERFLOW",
- 2808,
- """
- We encountered an arithmetic issue totaling up the
- amount to withdraw. Returned with a response code
- of #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_EXCHANGE_TOO_MANY_PLANCHETS",
- 2809,
- """
- The number of planchets specified exceeded the
- limit. Returned with a response code
- of #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_WITHDRAW_FAILED",
- 2810,
- """
- The merchant failed to initialize the withdraw operaiton.
- Returned with a response code of #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_WITHDRAW_FAILED_AT_EXCHANGE",
- 2811,
- """
- The merchant failed to initialize the withdraw operaiton.
- Returned with a response code of #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_UNBLIND_FAILURE",
- 2812,
- """
- The client failed to unblind the signature returned by the merchant.
- Generated client-side.
- """,
-)
-
-ec._add_ec(
- "GET_TIPS_DB_LOOKUP_ERROR",
- 2813,
- """
- Merchant failed to access its database to lookup the tip.
- Returned with a response code of #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "GET_TIPS_ID_UNKNOWN",
- 2814,
- """
- Merchant failed find the tip in its database.
- Returned with a response code of #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_CONTACT_EXCHANGE_ERROR",
- 2815,
- """
- The merchant failed to contact the exchange.
- Returned with a response code of #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_EXCHANGE_KEYS_ERROR",
- 2816,
- """
- The merchant failed to obtain keys from the exchange.
- Returned with a response code of #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_DB_STORE_HARD_ERROR",
- 2817,
- """
- The merchant failed to store data in its own database.
- Returned with a response code of #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_EXCHANGE_TIMEOUT",
- 2818,
- """
- The merchant failed to get a timely response from the exchange.
- Returned with a response code of #MHD_HTTP_REQUEST_TIMEOUT.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_EXCHANGE_ERROR",
- 2819,
- """
- The exchange returned a failure code for the withdraw operation.
- Returned with a response code of #MHD_HTTP_FAILED_DEPENDENCY.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_SUMMATION_FAILED",
- 2820,
- """
- The merchant failed to add up the amounts to compute the pick up value.
- Returned with a response code of #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_HAS_EXPIRED",
- 2821,
- """
- The tip expired.
- Returned with a response code of #MHD_HTTP_GONE.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_AMOUNT_EXCEEDS_TIP_REMAINING",
- 2822,
- """
- The requested withdraw amount exceeds the amount remaining to be picked up.
- Returned with a response code of #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_DB_STORE_SOFT_ERROR",
- 2823,
- """
- The merchant failed to store data in its own database.
- Returned with a response code of #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TIP_PICKUP_DENOMINATION_UNKNOWN",
- 2824,
- """
- The merchant did not find the specified denomination key in the exchange's key set.
- Returned with a response code of #MHD_HTTP_CONFLICT.
- """,
-)
-
-
-ec._add_ec(
- "GET_ORDERS_DB_LOOKUP_ERROR",
- 2900,
- """
- We failed to fetch contract terms from our merchant database.
- The response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "GET_ORDERS_ID_UNKNOWN",
- 2901,
- """
- We failed to find the contract terms from our merchant database.
- The response is provided with HTTP status code
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "GET_ORDERS_WRONG_CONTRACT",
- 2902,
- """
- The contract hash provided by the wallet does not match the order.
- The response is provided with HTTP status code
- #MHD_HTTP_FORBIDDEN.
- """,
-)
-
-ec._add_ec(
- "CHECK_PAYMENT_DB_FETCH_CONTRACT_TERMS_ERROR",
- 2911,
- """
- We failed to contract terms from our merchant database.
- The response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "CHECK_PAYMENT_DB_FETCH_ORDER_ERROR",
- 2912,
- """
- We failed to contract terms from our merchant database.
- The response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "CHECK_PAYMENT_ORDER_ID_UNKNOWN",
- 2913,
- """
- The order id we're checking is unknown, likely
- the frontend did not create the order first.
- """,
-)
-
-ec._add_ec(
- "CHECK_PAYMENT_FAILED_COMPUTE_PROPOSAL_HASH",
- 2914,
- """
- Failed computing a hash code (likely server out-of-memory).
- This response is
- provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "CHECK_PAYMENT_SESSION_SIGNATURE_INVALID",
- 2915,
- """
- Signature "session_sig" failed to verify. This response is
- provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "CHECK_PAYMENT_RESPONSE_MALFORMED",
- 2916,
- """
- The response we received from the merchant is malformed.
- This error is generated client-side.
- """,
-)
-
-
-ec._add_ec(
- "DEPOSIT_CONFIRMATION_SIGNATURE_INVALID",
- 3000,
- """
- The signature from the exchange on the deposit confirmation
- is invalid. Returned with a "400 Bad Request" status code.
- """,
-)
-
-ec._add_ec(
- "DEPOSIT_CONFIRMATION_STORE_DB_ERROR",
- 3001,
- """
- The auditor had trouble storing the deposit confirmation
- in its database. Returned with an HTTP status code of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "LIST_EXCHANGES_DB_ERROR",
- 3002,
- """
- The auditor had trouble retrieving the exchange list
- from its database. Returned with an HTTP status code of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "AUDITOR_EXCHANGE_STORE_DB_ERROR",
- 3003,
- """
- The auditor had trouble storing an exchange in its
- database. Returned with an HTTP status code of
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "AUDITOR_EXCHANGES_REPLY_MALFORMED",
- 3004,
- """
- The auditor (!) responded with a reply that did not satsify the protocol.
- This error is not used in the protocol but created client-side.
- """,
-)
-
-ec._add_ec(
- "TEST_ECDH_ERROR",
- 4000,
- """
- The exchange failed to compute ECDH. This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TEST_EDDSA_INVALID",
- 4001,
- """
- The EdDSA test signature is invalid. This response is provided
- with HTTP status code #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "TEST_EDDSA_ERROR",
- 4002,
- """
- The exchange failed to compute the EdDSA test signature. This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TEST_RSA_GEN_ERROR",
- 4003,
- """
- The exchange failed to generate an RSA key. This response is provided
- with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TEST_RSA_PUB_ERROR",
- 4004,
- """
- The exchange failed to compute the public RSA key. This response
- is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "TEST_RSA_SIGN_ERROR",
- 4005,
- """
- The exchange failed to compute the RSA signature. This response
- is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-
-ec._add_ec(
- "SERVER_JSON_INVALID",
- 5000,
- """
- The JSON in the server's response was malformed. This response
- is provided with HTTP status code of 0.
- """,
-)
-
-ec._add_ec(
- "SERVER_SIGNATURE_INVALID",
- 5001,
- """
- A signature in the server's response was malformed. This response
- is provided with HTTP status code of 0.
- """,
-)
-
-
-ec._add_ec(
- "BANK_SAME_ACCOUNT",
- 5102,
- """
- Wire transfer attempted with credit and debit party being
- the same bank account.
- """,
-)
-
-ec._add_ec(
- "BANK_UNALLOWED_DEBIT",
- 5103,
- """
- Wire transfer impossible, due to financial limitation of
- the party that attempted the payment.
- """,
-)
-
-ec._add_ec(
- "BANK_CURRENCY_MISMATCH",
- 5104,
- """
- Arithmetic operation between two amounts of different
- currency was attempted.
- """,
-)
-
-ec._add_ec(
- "BANK_PARAMETER_MISSING_OR_INVALID",
- 5105,
- """
- At least one GET parameter was either missing or invalid for
- the requested operation.
- """,
-)
-
-ec._add_ec(
- "BANK_JSON_INVALID",
- 5106,
- """
- JSON body sent was invalid for the requested operation.
- """,
-)
-
-ec._add_ec(
- "BANK_NEGATIVE_NUMBER_AMOUNT",
- 5107,
- """
- Negative number was used (as value and/or fraction) to initiate
- a Amount object.
- """,
-)
-
-ec._add_ec(
- "BANK_NUMBER_TOO_BIG",
- 5108,
- """
- A number too big was used (as value and/or fraction) to initiate
- a amount object.
- """,
-)
-
-ec._add_ec(
- "BANK_LOGIN_FAILED",
- 5109,
- """
- Could not login for the requested operation.
- """,
-)
-
-ec._add_ec(
- "BANK_UNKNOWN_ACCOUNT",
- 5110,
- """
- The bank account referenced in the requested operation
- was not found. Returned along "400 Not found".
- """,
-)
-
-ec._add_ec(
- "BANK_TRANSACTION_NOT_FOUND",
- 5111,
- """
- The transaction referenced in the requested operation (typically
- a reject operation), was not found.
- """,
-)
-
-
-ec._add_ec(
- "BANK_BAD_FORMAT_AMOUNT",
- 5112,
- """
- Bank received a malformed amount string.
- """,
-)
-
-ec._add_ec(
- "BANK_REJECT_NO_RIGHTS",
- 5200,
- """
- The client does not own the account credited by the transaction
- which is to be rejected, so it has no rights do reject it. To be
- returned along HTTP 403 Forbidden.
- """,
-)
-
-
-ec._add_ec(
- "BANK_UNMANAGED_EXCEPTION",
- 5300,
- """
- This error code is returned when no known exception types
- captured the exception, and comes along with a 500 Internal
- Server Error.
- """,
-)
-
-
-ec._add_ec(
- "BANK_SOFT_EXCEPTION",
- 5400,
- """
- This error code is used for all those exceptions that
- do not really need a specific error code to return to
- the client, but need to signal the middleware that the
- bank is not responding with 500 Internal Server Error.
-
- Used for example when a client is trying to register
- with a unavailable username.
- """,
-)
-
-ec._add_ec(
- "BANK_TRANSFER_REQUEST_UID_REUSED",
- 5500,
- """
- The request UID for a request to transfer funds has already
- been used, but with different details for the transfer.
- """,
-)
-
-
-ec._add_ec(
- "SYNC_DB_FETCH_ERROR",
- 6000,
- """
- The sync service failed to access its database.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "SYNC_BACKUP_UNKNOWN",
- 6001,
- """
- The sync service failed find the record in its database.
- This response is provided with HTTP status code
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "SYNC_ACCOUNT_UNKNOWN",
- 6002,
- """
- The sync service failed find the account in its database.
- This response is provided with HTTP status code
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "SYNC_BAD_IF_NONE_MATCH",
- 6003,
- """
- The SHA-512 hash provided in the If-None-Match header is
- malformed.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "SYNC_BAD_IF_MATCH",
- 6004,
- """
- The SHA-512 hash provided in the If-Match header is
- malformed or missing.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "SYNC_BAD_SYNC_SIGNATURE",
- 6005,
- """
- The signature provided in the "Sync-Signature" header is
- malformed or missing.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "SYNC_INVALID_SIGNATURE",
- 6007,
- """
- The signature provided in the "Sync-Signature" header
- does not match the account, old or new Etags.
- This response is provided with HTTP status code
- #MHD_HTTP_FORBIDDEN.
- """,
-)
-
-ec._add_ec(
- "SYNC_BAD_CONTENT_LENGTH",
- 6008,
- """
- The "Content-length" field for the upload is either
- not a number, or too big, or missing.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "SYNC_EXCESSIVE_CONTENT_LENGTH",
- 6009,
- """
- The "Content-length" field for the upload is
- too big based on the server's terms of service.
- This response is provided with HTTP status code
- #MHD_HTTP_PAYLOAD_TOO_LARGE.
- """,
-)
-
-ec._add_ec(
- "SYNC_OUT_OF_MEMORY_ON_CONTENT_LENGTH",
- 6010,
- """
- The server is out of memory to handle the upload.
- Trying again later may succeed.
- This response is provided with HTTP status code
- #MHD_HTTP_PAYLOAD_TOO_LARGE.
- """,
-)
-
-ec._add_ec(
- "SYNC_INVALID_UPLOAD",
- 6011,
- """
- The uploaded data does not match the Etag.
- This response is provided with HTTP status code
- #MHD_HTTP_BAD_REQUEST.
- """,
-)
-
-ec._add_ec(
- "SYNC_DATABASE_FETCH_ERROR",
- 6012,
- """
- We failed to check for existing upload data in the database.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "SYNC_SHUTDOWN",
- 6013,
- """
- HTTP server was being shutdown while this operation was
- pending.
- This response is provided with HTTP status code
- #MHD_HTTP_SERVICE_UNAVAILABLE.
- """,
-)
-
-ec._add_ec(
- "SYNC_PAYMENT_TIMEOUT",
- 6014,
- """
- HTTP server experienced a timeout while awaiting
- promised payment.
- This response is provided with HTTP status code
- #MHD_HTTP_REQUEST_TIMEOUT.
- """,
-)
-
-ec._add_ec(
- "SYNC_PAYMENT_CREATE_DB_ERROR",
- 6015,
- """
- Sync could not store order data in its own database.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "SYNC_PAYMENT_CONFIRM_DB_ERROR",
- 6016,
- """
- Sync could not store payment confirmation in its own database.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "SYNC_PAYMENT_CHECK_ORDER_DB_ERROR",
- 6017,
- """
- Sync could not fetch information about possible existing
- orders from its own database.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "SYNC_PAYMENT_CREATE_BACKEND_ERROR",
- 6018,
- """
- Sync could not setup the payment request with its own backend.
- This response is provided with HTTP status code
- #MHD_HTTP_INTERNAL_SERVER_ERROR.
- """,
-)
-
-ec._add_ec(
- "SYNC_PREVIOUS_BACKUP_UNKNOWN",
- 6019,
- """
- The sync service failed find the backup to be updated in its database.
- This response is provided with HTTP status code
- #MHD_HTTP_NOT_FOUND.
- """,
-)
-
-ec._add_ec(
- "END",
- 9999,
- """
-End of error code range.
-""",
-)
diff --git a/taler/util/gen_errcodes_c.py b/taler/util/gen_errcodes_c.py
deleted file mode 100644
index 62bedb2..0000000
--- a/taler/util/gen_errcodes_c.py
+++ /dev/null
@@ -1,92 +0,0 @@
-# This file is part of GNU Taler
-# (C) 2020 Taler Systems SA
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 3 of the License, or (at your option) any later
-# version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free
-# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-# Boston, MA 02110-1301 USA
-#
-# @author Florian Dold
-# @repository https://git.taler.net/taler-util.git/
-
-import textwrap
-from errorcodes import ec
-
-pre = """\
-/*
- This file is part of TALER
- Copyright (C) 2016, 2017, 2019 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
- Foundation; either version 3, or (at your option) any later version.
-
- TALER is distributed in the hope that it will be useful, but WITHOUT ANY
- WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
- A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along with
- TALER; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
-*/
-
-/**
- * @file taler_error_codes.h
- * @brief error codes returned by GNU Taler
- *
- * This file defines constants for error codes returned
- * in Taler APIs. We use codes above 1000 to avoid any
- * confusing with HTTP status codes. All constants have the
- * shared prefix "TALER_EC_" to indicate that they are error
- * codes.
- *
- * THIS FILE IS AUTO-GENERATED, DO NOT MODIFY!
- * If you want to add an error code, please add it in the
- * taler-util.git repository. Instructions
- * for this are in the README in taler-util.git.
- */
-#ifndef TALER_ERROR_CODES_H
-#define TALER_ERROR_CODES_H
-
-/**
- * Enumeration with all possible Taler error codes.
- */
-enum TALER_ErrorCode
-{
-"""
-
-post = """
-};
-
-
-#endif\
-"""
-
-if __name__ == "__main__":
- s = ""
- for err in ec._codes:
- s += "/**\n"
- s += textwrap.fill(
- err.description,
- initial_indent=" * ",
- subsequent_indent=" * ",
- drop_whitespace=True,
- )
- s += "\n"
- s += " */\n"
- s += f"TALER_EC_{err.name} = {err.code},\n\n"
- s = s.strip()
- s = "\n".join([(" " + x).rstrip() for x in s.splitlines()])
- print(pre)
- print(s)
- print(post)
diff --git a/taler/util/talerconfig.py b/taler/util/talerconfig.py
index 8427f33..79b722e 100644
--- a/taler/util/talerconfig.py
+++ b/taler/util/talerconfig.py
@@ -1,4 +1,3 @@
-# This file is part of TALER
# (C) 2016, 2019 Taler Systems SA
#
# This library is free software; you can redistribute it and/or
@@ -111,7 +110,6 @@ def expand(var: str, getter: Callable[[str], str]) -> str:
return result + var[pos:]
-
##
# A configuration entry.
class Entry:
@@ -170,10 +168,10 @@ class Entry:
# @return the value, or the given @a default, if not found.
def value_string(self, default=None, required=False, warn=False) -> str:
if required and self.value is None:
- raise ConfigurationError(
- "Missing required option '%s' in section '%s'"
- % (self.option.upper(), self.section.upper())
- )
+ print("Missing required option '%s' in section '%s'"
+ % (self.option.upper(), self.section.upper()))
+ sys.exit(1)
+
if self.value is None:
if warn:
if default is not None:
@@ -203,16 +201,17 @@ class Entry:
# @param warn currently ignored.
# @return the value, or the given @a default, if not found.
def value_int(self, default=None, required=False, warn=False) -> int:
- value = self.value_string(default, warn, required)
+ value = self.value_string(default, required, warn)
if value is None:
return None
try:
return int(value)
except ValueError:
- raise ConfigurationError(
+ print(
"Expected number for option '%s' in section '%s'"
% (self.option.upper(), self.section.upper())
)
+ sys.exit(1)
##
# Fetch value to substitute to expansion variables.